mirror of
https://github.com/G2-Games/website.git
synced 2025-04-20 02:12:53 -05:00
111 lines
3.2 KiB
JavaScript
111 lines
3.2 KiB
JavaScript
function fullscreen(current) {
|
|
let mainWindow = current.closest('.window');
|
|
|
|
if (mainWindow == null) {
|
|
return;
|
|
}
|
|
|
|
if (mainWindow.classList.contains("maximized")) {
|
|
mainWindow.classList.remove("maximized");
|
|
} else {
|
|
mainWindow.classList.add("maximized");
|
|
}
|
|
}
|
|
|
|
function moveToFront(target) {
|
|
target.style.zIndex = zIndex + 1;
|
|
zIndex++;
|
|
let activeWindow = setActive();
|
|
return activeWindow;
|
|
}
|
|
|
|
function setActive() {
|
|
let active = 0;
|
|
let max_index = 0;
|
|
|
|
for (let i = 0; i < d.length; i++) {
|
|
let current_index = parseInt(d[i].parentElement.style.zIndex);
|
|
d[i].parentElement.classList.remove("active-window");
|
|
toggleButtons(i, false);
|
|
|
|
if (current_index > max_index) {
|
|
max_index = current_index;
|
|
active = i;
|
|
}
|
|
}
|
|
|
|
toggleButtons(active, true);
|
|
d[active].parentElement.classList.add("active-window");
|
|
|
|
return active;
|
|
}
|
|
|
|
function toggleButtons(element, state) {
|
|
let mainWindow = d[element].parentElement;
|
|
let titleBar = d[element];
|
|
let controls = $(d[element]).find('.window-controls')[0];
|
|
let close = $(d[element]).find('.close')[0];
|
|
let fullscreen = $(d[element]).find('.fullscreen')[0];
|
|
let minimize = $(d[element]).find('.minimize')[0];
|
|
|
|
if (state) {
|
|
mainWindow.style.backgroundColor = "";
|
|
controls.style.cssText = "";
|
|
titleBar.style.cssText = "";
|
|
|
|
if (close) {
|
|
close.style.cssText = `
|
|
background-image: url('assets/images/window-styles/close-button.png');
|
|
box-shadow: unset;
|
|
`;
|
|
}
|
|
if (fullscreen) {
|
|
fullscreen.style.cssText = `
|
|
background-image: url('assets/images/window-styles/fullscreen-button.png');
|
|
box-shadow: unset;
|
|
`;
|
|
}
|
|
if (minimize) {
|
|
minimize.style.cssText = `
|
|
background-image: url('assets/images/window-styles/minimize-button.png');
|
|
box-shadow: unset;
|
|
`;
|
|
}
|
|
} else {
|
|
mainWindow.style.backgroundColor = "#fffa";
|
|
controls.style.cssText = `
|
|
background-color: #ccf8;
|
|
box-shadow: 0 0.2px 0px black, 0.2px 0 0px black, -0.2px 0 0px black;
|
|
border: 0.1px solid white;
|
|
border-width: 1px;
|
|
border-top: none;
|
|
`;
|
|
titleBar.style.cssText = `
|
|
color: #313131;
|
|
filter: saturate(75%);
|
|
`;
|
|
|
|
if (close) {
|
|
close.style.cssText = `
|
|
background-image: url('assets/images/window-styles/close-button-inactive.png');
|
|
box-shadow: unset;
|
|
`;
|
|
}
|
|
if (fullscreen) {
|
|
fullscreen.style.cssText = `
|
|
background-image: url('assets/images/window-styles/fullscreen-button-inactive.png');
|
|
box-shadow: unset;
|
|
`;
|
|
}
|
|
if (minimize) {
|
|
minimize.style.cssText = `
|
|
background-image: url('assets/images/window-styles/minimize-button-inactive.png');
|
|
box-shadow: unset;
|
|
`;
|
|
}
|
|
}
|
|
}
|
|
|
|
function minimizeWindow(target) {
|
|
target.closest('.window').classList.add("minimized");
|
|
}
|