From abc4690949e8ea74733ff29adf0150943bb50d13 Mon Sep 17 00:00:00 2001 From: Kalitsune Date: Sun, 12 May 2024 15:10:48 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=A7=AD=20Fluid=20server=20selection?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Removed the select and cancel buttons and made the buttons directly select the server --- app/assets/css/launcher.css | 4 --- app/assets/js/scripts/overlay.js | 58 +++++++++++--------------------- app/assets/lang/en_US.toml | 2 -- app/overlay.ejs | 6 ---- 4 files changed, 19 insertions(+), 51 deletions(-) diff --git a/app/assets/css/launcher.css b/app/assets/css/launcher.css index 8b239311..cd304db6 100644 --- a/app/assets/css/launcher.css +++ b/app/assets/css/launcher.css @@ -3688,10 +3688,6 @@ input:checked + .toggleSwitchSlider:before { position: relative; background: rgba(131, 131, 131, 0.25); } -.serverListing[selected] { - cursor: default; - opacity: 1.0; -} .serverListing:hover, .serverListing:focus { outline: none; diff --git a/app/assets/js/scripts/overlay.js b/app/assets/js/scripts/overlay.js index 0d6ab2ae..7d420981 100644 --- a/app/assets/js/scripts/overlay.js +++ b/app/assets/js/scripts/overlay.js @@ -169,26 +169,7 @@ function setDismissHandler(handler){ } } -/* Server Select View */ - -document.getElementById('serverSelectConfirm').addEventListener('click', async () => { - const listings = document.getElementsByClassName('serverListing') - for(let i=0; i 0){ - const serv = (await DistroAPI.getDistribution()).getServerById(listings[i].getAttribute('servid')) - updateSelectedServer(serv) - toggleOverlay(false) - } -}) +/* Account Select View */ document.getElementById('accountSelectConfirm').addEventListener('click', async () => { const listings = document.getElementsByClassName('accountListing') @@ -218,10 +199,7 @@ document.getElementById('accountSelectConfirm').addEventListener('click', async } }) -// Bind server select cancel button. -document.getElementById('serverSelectCancel').addEventListener('click', () => { - toggleOverlay(false) -}) +// Bind account select cancel button. document.getElementById('accountSelectCancel').addEventListener('click', () => { $('#accountSelectContent').fadeOut(250, () => { @@ -229,21 +207,23 @@ document.getElementById('accountSelectCancel').addEventListener('click', () => { }) }) -function setServerListingHandlers(){ +// Make the Server Selection background clickable to close the overlay. +let overlayContainer = document.getElementById('overlayContainer') +overlayContainer.addEventListener('click', e => { + if(e.target === overlayContainer){ + toggleOverlay(false) + } +}) + +async function setServerListingHandlers(){ const listings = Array.from(document.getElementsByClassName('serverListing')) - listings.map((val) => { - val.onclick = e => { - if(val.hasAttribute('selected')){ - return - } - const cListings = document.getElementsByClassName('serverListing') - for(let i=0; i { + val.onclick = async e => { + console.log(e) + const serv = (await DistroAPI.getDistribution()).getServerById(val.getAttribute('servid')) + updateSelectedServer(serv) + refreshServerStatus(true) + toggleOverlay(false) } }) } @@ -315,7 +295,7 @@ function populateAccountListings(){ async function prepareServerSelectionList(){ await populateServerListings() - setServerListingHandlers() + await setServerListingHandlers() } function prepareAccountSelectionList(){ diff --git a/app/assets/lang/en_US.toml b/app/assets/lang/en_US.toml index b9f64cfb..57f4bc85 100644 --- a/app/assets/lang/en_US.toml +++ b/app/assets/lang/en_US.toml @@ -42,8 +42,6 @@ cancelButton = "Cancel" [ejs.overlay] serverSelectHeader = "Available Servers" -serverSelectConfirm = "Select" -serverSelectCancel = "Cancel" accountSelectHeader = "Select an Account" accountSelectConfirm = "Select" accountSelectCancel = "Cancel" diff --git a/app/overlay.ejs b/app/overlay.ejs index 7faab15b..e262ed62 100644 --- a/app/overlay.ejs +++ b/app/overlay.ejs @@ -6,12 +6,6 @@ -
- -
- -
-