Upload via GUI (42 Dateien)
This commit is contained in:
+42
-4
@@ -2155,6 +2155,27 @@ async function renderServers() {
|
||||
});
|
||||
aktionen.appendChild(starten);
|
||||
|
||||
const favorit = document.createElement('button');
|
||||
favorit.className = 'btn btn-mini';
|
||||
favorit.textContent = '★ Verknüpfung';
|
||||
favorit.title = 'Desktop-Verknüpfung erstellen, die Minecraft startet und direkt mit diesem Server verbindet (Quick Play, ab MC 1.20)';
|
||||
favorit.addEventListener('click', async () => {
|
||||
const inst = await window.api.getInstance(currentDetailId);
|
||||
const vorschlag = `${inst ? inst.name : 'Instanz'} - ${s.name || s.ip}`;
|
||||
const eingabe = await askPrompt({
|
||||
title: 'Server-Verknüpfung erstellen',
|
||||
text: 'Name der Desktop-Verknüpfung (ohne .lnk):',
|
||||
label: 'Name',
|
||||
value: vorschlag,
|
||||
okLabel: 'Erstellen',
|
||||
});
|
||||
if (eingabe == null) return; // abgebrochen
|
||||
const res = await window.api.serversShortcut(currentDetailId, s.ip, s.name, eingabe.trim());
|
||||
if (res.ok) toast('Verknüpfung auf dem Desktop erstellt: ' + (s.name || s.ip));
|
||||
else toast(res.message || 'Verknüpfung fehlgeschlagen.', true);
|
||||
});
|
||||
aktionen.appendChild(favorit);
|
||||
|
||||
const umbenennen = document.createElement('button');
|
||||
umbenennen.className = 'btn btn-mini';
|
||||
umbenennen.textContent = 'Umbenennen';
|
||||
@@ -3054,6 +3075,7 @@ async function openSettings(pane) {
|
||||
el('s-iso3d').checked = s.iso3dIcons !== false;
|
||||
el('s-bedrock').checked = s.bedrockEnabled !== false;
|
||||
el('s-notify').checked = s.desktopNotifications !== false;
|
||||
el('s-autostart').checked = !!s.autostart;
|
||||
el('s-auto-java').checked = s.autoJava !== false;
|
||||
el('s-autobackup').checked = !!s.autoBackupEnabled;
|
||||
el('s-autobackup-every').value = s.autoBackupEvery || 'daily';
|
||||
@@ -3100,7 +3122,7 @@ async function openSettings(pane) {
|
||||
['Version', formatVersionLabel(info.version)],
|
||||
['Autor', info.author || 'Nicht hinterlegt'],
|
||||
['Webseite', info.homepage || 'Nicht hinterlegt', info.homepage || ''],
|
||||
['Gitseite', info.gitpage || 'Nicht hinterlegt', info.gitpage || ''],
|
||||
['Launcher-Webseite', info.launcherWebsite || 'Nicht hinterlegt', info.launcherWebsite || ''],
|
||||
].map(([label, value, url]) => {
|
||||
const renderedValue = url
|
||||
? `<a href="#" class="info-meta-link" data-url="${escapeHtml(url)}">${escapeHtml(value)}</a>`
|
||||
@@ -3174,6 +3196,7 @@ async function saveSettings() {
|
||||
iso3dIcons: el('s-iso3d').checked,
|
||||
bedrockEnabled: el('s-bedrock').checked,
|
||||
desktopNotifications: el('s-notify').checked,
|
||||
autostart: el('s-autostart').checked,
|
||||
autoJava: el('s-auto-java').checked,
|
||||
autoBackupEnabled: el('s-autobackup').checked,
|
||||
autoBackupEvery: el('s-autobackup-every').value,
|
||||
@@ -3855,7 +3878,16 @@ function wire() {
|
||||
el('p-offline').addEventListener('click', () => currentDetailId && launch(currentDetailId));
|
||||
el('p-shortcut').addEventListener('click', async () => {
|
||||
if (!currentDetailId) return;
|
||||
const res = await window.api.createShortcut(currentDetailId);
|
||||
const inst = await window.api.getInstance(currentDetailId);
|
||||
const eingabe = await askPrompt({
|
||||
title: 'Verknüpfung erstellen',
|
||||
text: 'Name der Desktop-Verknüpfung (ohne .lnk):',
|
||||
label: 'Name',
|
||||
value: inst ? inst.name : '',
|
||||
okLabel: 'Erstellen',
|
||||
});
|
||||
if (eingabe == null) return; // abgebrochen
|
||||
const res = await window.api.createShortcut(currentDetailId, eingabe.trim());
|
||||
if (res.ok) toast('Verknüpfung auf dem Desktop erstellt.');
|
||||
else toast(res.message || 'Verknüpfung fehlgeschlagen.', true);
|
||||
});
|
||||
@@ -4252,10 +4284,16 @@ window.addEventListener('DOMContentLoaded', async () => {
|
||||
// Spiel gestartet oder beendet -> "spielt gerade" in den Kontenlisten nachziehen
|
||||
window.api.onAccountsChanged(() => { refreshAllAccountLists(); });
|
||||
// über eine Desktop-Verknüpfung gestartet -> Instanz auswählen und anwerfen
|
||||
window.api.onLaunchRequest(async (id) => {
|
||||
// (bei einer Server-Verknüpfung zusätzlich direkt mit dem Server verbinden)
|
||||
window.api.onLaunchRequest(async (payload) => {
|
||||
const id = payload && typeof payload === 'object' ? payload.id : payload;
|
||||
const serverIp = payload && typeof payload === 'object' ? payload.serverIp : null;
|
||||
await selectInstance(id);
|
||||
launch(id);
|
||||
launch(id, null, serverIp ? { quickPlayServer: serverIp } : null);
|
||||
});
|
||||
// Empfänger steht jetzt – dem Hauptprozess Bescheid geben, damit ein über
|
||||
// eine Verknüpfung mitgegebener Startwunsch sicher zugestellt werden kann
|
||||
window.api.notifyReady();
|
||||
window.api.onUpdateAvailable(showUpdateDialog);
|
||||
window.api.onUpdateProgress(onUpdateProgress);
|
||||
window.api.onUpdateChecked(renderUpdateStatus);
|
||||
|
||||
Reference in New Issue
Block a user