Added snapping size-limits to channel click draggers

This commit is contained in:
rainbow napkin 2026-10-07 05:47:32 -04:00
parent f5951e068c
commit ccc26e1ae2
3 changed files with 34 additions and 7 deletions

View file

@ -46,7 +46,7 @@ class cPanel{
/**
* Click-Dragger object for re-sizable active panel
*/
this.activePanelDragger = new canopyUXUtils.clickDragger("#cpanel-active-drag-handle", "#cpanel-active-div", false, null, false);
this.activePanelDragger = new canopyUXUtils.clickDragger("#cpanel-active-drag-handle", "#cpanel-active-div", false, null, false, 75, 1);
/**
* Click-Dragger object for re-sizable pinned panel
@ -126,6 +126,7 @@ class cPanel{
this.activePanelCloseIcon.addEventListener("click", this.hideActivePanel.bind(this));
this.activePanelPinIcon.addEventListener("click", this.pinPanel.bind(this));
this.activePanelPopoutIcon.addEventListener("click", this.popActivePanel.bind(this));
this.client.chatBox.clickDragger.handle.addEventListener("clickdragend", this.handleActivePanelParentWidthChange.bind(this));
this.pinnedPanelCloseIcon.addEventListener("click", this.hidePinnedPanel.bind(this));
this.pinnedPanelUnpinIcon.addEventListener("click", this.unpinPanel.bind(this));
this.pinnedPanelPopoutIcon.addEventListener("click", this.popPinnedPanel.bind(this));
@ -153,6 +154,14 @@ class cPanel{
this.activePanel.docSwitch();
}
handleActivePanelParentWidthChange(event){
//Get parent width from parent click dragger
let parentWidth = event.element.style.width.slice(0,-2);
//Set activePanelDragger size limit to parent width
this.activePanelDragger.sizeLimit = parentWidth;
}
/**
* Hides active panel
* @param {Event} event - Event passed down from Input Handler