Shaderpack settings nearly finalized.
Added saving function, add pack button, drag and drop functionality to the button, ability to refresh the list of packs. Added height limit to the dropdown with scrolling. Cleaned up some styles.
This commit is contained in:
@@ -267,6 +267,7 @@ settingsNavDone.onclick = () => {
|
||||
saveModConfiguration()
|
||||
ConfigManager.save()
|
||||
saveDropinModConfiguration()
|
||||
saveShaderpackSettings()
|
||||
switchView(getCurrentView(), VIEWS.landing)
|
||||
}
|
||||
|
||||
@@ -728,6 +729,8 @@ document.addEventListener('keydown', (e) => {
|
||||
if(getCurrentView() === VIEWS.settings && selectedSettingsTab === 'settingsTabMods'){
|
||||
if(e.key === 'F5'){
|
||||
reloadDropinMods()
|
||||
saveShaderpackSettings()
|
||||
resolveShaderpacksForUI()
|
||||
}
|
||||
}
|
||||
})
|
||||
@@ -780,6 +783,44 @@ function setShadersOptions(arr, selected){
|
||||
}
|
||||
}
|
||||
|
||||
function saveShaderpackSettings(){
|
||||
let sel = 'OFF'
|
||||
for(let opt of document.getElementById('settingsShadersOptions').childNodes){
|
||||
if(opt.hasAttribute('selected')){
|
||||
sel = opt.getAttribute('value')
|
||||
}
|
||||
}
|
||||
DropinModUtil.setEnabledShaderpack(CACHE_SETTINGS_INSTANCE_DIR, sel)
|
||||
}
|
||||
|
||||
function bindShaderpackButton() {
|
||||
const spBtn = document.getElementById('settingsShaderpackButton')
|
||||
spBtn.onclick = () => {
|
||||
const p = path.join(CACHE_SETTINGS_INSTANCE_DIR, 'shaderpacks')
|
||||
DropinModUtil.validateDir(p)
|
||||
shell.openItem(p)
|
||||
}
|
||||
spBtn.ondragenter = e => {
|
||||
e.dataTransfer.dropEffect = 'move'
|
||||
spBtn.setAttribute('drag', '')
|
||||
e.preventDefault()
|
||||
}
|
||||
spBtn.ondragover = e => {
|
||||
e.preventDefault()
|
||||
}
|
||||
spBtn.ondragleave = e => {
|
||||
spBtn.removeAttribute('drag')
|
||||
}
|
||||
|
||||
spBtn.ondrop = e => {
|
||||
spBtn.removeAttribute('drag')
|
||||
e.preventDefault()
|
||||
|
||||
DropinModUtil.addShaderpacks(e.dataTransfer.files, CACHE_SETTINGS_INSTANCE_DIR)
|
||||
resolveShaderpacksForUI()
|
||||
}
|
||||
}
|
||||
|
||||
// Server status bar functions.
|
||||
|
||||
/**
|
||||
@@ -846,6 +887,7 @@ function prepareModsTab(first){
|
||||
resolveShaderpacksForUI()
|
||||
bindDropinModsRemoveButton()
|
||||
bindDropinModFileSystemButton()
|
||||
bindShaderpackButton()
|
||||
bindModsToggleSwitch()
|
||||
loadSelectedServerOnModsTab()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user