diff --git a/desktop.js b/desktop.js index 86b5b229..f764b51b 100755 --- a/desktop.js +++ b/desktop.js @@ -1887,6 +1887,12 @@ function geticon(name) { else return name + '.svg'; } +function syncTaskbarLayout() { + const count = $('#taskbar>a').length; + $('#taskbar').attr('count', count); + $('#taskbar').css('display', count == 0 ? 'none' : 'flex'); + $('#taskbar').css('width', 4 + count * (34 + 4)); +} function openapp(name) { if (taskmgrTasks.findIndex(elt => elt.link == name) > -1 && apps.taskmgr.tasks.findIndex(elt => elt.link == name) == -1) { @@ -1901,14 +1907,11 @@ function openapp(name) { } $('.window.' + name).addClass('load'); showwin(name); - $('#taskbar').attr('count', Number($('#taskbar').attr('count')) + 1); $('#taskbar').append(``); - if ($('#taskbar').attr('count') == '1') { - $('#taskbar').css('display', 'flex'); - } + syncTaskbarLayout(); $('#taskbar>.' + name).addClass('foc'); setTimeout(() => { - $('#taskbar').css('width', 4 + $('#taskbar').attr('count') * (34 + 4)); + syncTaskbarLayout(); }, 0); let tmp = name.replace(/\-(\w)/g, function (all, letter) { return letter.toUpperCase(); diff --git a/module/window.js b/module/window.js index 6827db9d..8bcf353f 100644 --- a/module/window.js +++ b/module/window.js @@ -36,13 +36,10 @@ function hidewin(name, arg = 'window') { closeVideo() } if (arg == 'window') { - $('#taskbar').attr('count', Number($('#taskbar').attr('count')) - 1); $('#taskbar>.' + name).remove(); - $('#taskbar').css('width', 4 + $('#taskbar').attr('count') * (34 + 4)); + syncTaskbarLayout(); setTimeout(() => { - if ($('#taskbar').attr('count') == '0') { - $('#taskbar').css('display', 'none'); - } + syncTaskbarLayout(); }, 80); } setTimeout(() => { @@ -496,4 +493,4 @@ function taskbarclick(name) { minwin(name); } focwin(name); -} \ No newline at end of file +}