Settings title bar.

This commit is contained in:
punkfairie 2023-05-13 13:19:59 -07:00
parent 881df3bca3
commit 28e9c1edac
8 changed files with 54 additions and 1 deletions

View file

@ -5,6 +5,17 @@
<title>Settings</title> <title>Settings</title>
</head> </head>
<body> <body>
<div id="titlebar" class="draggable container-fluid mt-2">
<div class="row justify-content-between">
<div class="col-auto title">ED Safari v0.1.0</div>
<div class="col-auto">
<button type="button" class="btn-close btn-back" id="backBtn"></button>
<button type="button" class="btn-close" id="closeBtn"></button>
</div>
</div>
</div>
<div class="container-fluid"> <div class="container-fluid">
<div class="row separator align-items-center"> <div class="row separator align-items-center">
<div class="col"><hr class="separator"></div> <div class="col"><hr class="separator"></div>

View file

@ -200,4 +200,8 @@ div b.active.landable {
#titlebar .btn-settings { #titlebar .btn-settings {
background: transparent url('./../icons/gear.svg') center/1em auto no-repeat; background: transparent url('./../icons/gear.svg') center/1em auto no-repeat;
}
#titlebar .btn-back {
background: transparent url('./../icons/arrow-left.svg') center/1em auto no-repeat;
} }

View file

@ -0,0 +1,4 @@
[ZoneTransfer]
ZoneId=3
ReferrerUrl=https://icons.getbootstrap.com/icons/arrow-left-square/
HostUrl=https://icons.getbootstrap.com/assets/icons/arrow-left-square.svg

3
src/icons/arrow-left.svg Normal file
View file

@ -0,0 +1,3 @@
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-arrow-left" viewBox="0 0 16 16">
<path fill-rule="evenodd" d="M15 8a.5.5 0 0 0-.5-.5H2.707l3.147-3.146a.5.5 0 1 0-.708-.708l-4 4a.5.5 0 0 0 0 .708l4 4a.5.5 0 0 0 .708-.708L2.707 8.5H14.5A.5.5 0 0 0 15 8z"/>
</svg>

After

Width:  |  Height:  |  Size: 311 B

View file

@ -0,0 +1,4 @@
[ZoneTransfer]
ZoneId=3
ReferrerUrl=https://icons.getbootstrap.com/icons/arrow-left/
HostUrl=https://icons.getbootstrap.com/assets/icons/arrow-left.svg

View file

@ -56,12 +56,25 @@ const loadSettings = (event) => {
} }
} }
// Set up main page handler.
const loadMain = (event) => {
const webContents = event.sender;
const window = BrowserWindow.fromWebContents(webContents);
if (MAIN_WINDOW_VITE_DEV_SERVER_URL) {
mainWindow.loadURL(MAIN_WINDOW_VITE_DEV_SERVER_URL);
} else {
mainWindow.loadFile(path.join(__dirname, `../renderer/${MAIN_WINDOW_VITE_NAME}/index.html`));
}
}
// This method will be called when Electron has finished // This method will be called when Electron has finished
// initialization and is ready to create browser windows. // initialization and is ready to create browser windows.
// Some APIs can only be used after this event occurs. // Some APIs can only be used after this event occurs.
app.on('ready', () => { app.on('ready', () => {
ipcMain.on('CLOSE_WINDOW', closeWindow); ipcMain.on('CLOSE_WINDOW', closeWindow);
ipcMain.on('LOAD_SETTINGS', loadSettings); ipcMain.on('LOAD_SETTINGS', loadSettings);
ipcMain.on('LOAD_MAIN', loadMain);
createWindow(); createWindow();
}); });

View file

@ -33,10 +33,10 @@ import './icons/flaticon.css'
import './assets/ldom.min' import './assets/ldom.min'
const { app, ipcRenderer } = require('electron') const { app, ipcRenderer } = require('electron')
import { Safari } from './models/Safari' import { Safari } from './models/Safari'
import { UI } from './models/UI' import { UI } from './models/UI'
import { Body } from './models/Body' import { Body } from './models/Body'
import { sep } from 'path'
import { EDSM } from './models/EDSM' import { EDSM } from './models/EDSM'
// Grab app.isPackaged from main process // Grab app.isPackaged from main process

View file

@ -1,4 +1,18 @@
import 'bootstrap/dist/css/bootstrap.css' import 'bootstrap/dist/css/bootstrap.css'
import './assets/index.css' import './assets/index.css'
import './assets/ldom.min' import './assets/ldom.min'
const { ipcRenderer } = require('electron')
/* -------------------------------------------------------------------- close window handler ---- */
$('#closeBtn').on('click', () => {
ipcRenderer.send('CLOSE_WINDOW')
})
/* ---------------------------------------------------------------- load main window handler ---- */
$('#backBtn').on('click', () => {
ipcRenderer.send('LOAD_MAIN')
})