class DesktopHeader extends HTMLElement {
connectedCallback() {
this.attachShadow({ mode: 'open' });
this.shadowRoot.innerHTML = `
`;
// Add event listeners
this.shadowRoot.getElementById('minimize-btn').addEventListener('click', () => {
if (typeof require !== 'undefined') {
const { ipcRenderer } = require('electron');
ipcRenderer.send('window-minimize');
}
});
this.shadowRoot.getElementById('maximize-btn').addEventListener('click', () => {
if (typeof require !== 'undefined') {
const { ipcRenderer } = require('electron');
ipcRenderer.send('window-maximize');
}
});
this.shadowRoot.getElementById('close-btn').addEventListener('click', () => {
if (typeof require !== 'undefined') {
const { ipcRenderer } = require('electron');
ipcRenderer.send('window-close');
}
});
}
}
customElements.define('desktop-header', DesktopHeader);