feat: Add live preview for controls position and update several default magnify glass and info panel settings.
This commit is contained in:
@@ -53,7 +53,7 @@ export const DEFAULT_PANEL_SETTINGS: PanelSettings = {
|
||||
"🔍MagnifyGlass.GlassPreviewToggleHotkey": "g",
|
||||
"🔍MagnifyGlass.PinPanelHotkey": "u",
|
||||
"🔍MagnifyGlass.ShowHoveringControls": true,
|
||||
"🔍MagnifyGlass.ControlsPosition": "bottom",
|
||||
"🔍MagnifyGlass.ControlsPosition": "left",
|
||||
"🔍MagnifyGlass.InfoPanelTextColor": "#6b7280",
|
||||
"🔍MagnifyGlass.InfoPanelAccentColor": "#3b82f6",
|
||||
};
|
||||
|
||||
@@ -316,12 +316,12 @@ export function registerGlassSettings(magnifyGlass: any): void {
|
||||
if (confirm("Reset ALL Magnify Glass settings?")) {
|
||||
// Glass Defaults
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.ZoomFactor', 300);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.GlassSize', 250);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.GlassSize', 300);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.GlassShape', 'Rounded Square');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.GlassPosition', 'Top-Right');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.TextureFiltering', 'Linear');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.BorderWidth', 2);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.BorderColor', '#ffffff');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.BorderWidth', 1);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.BorderColor', '#6b7280');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.BorderEnabled', true);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.FollowCursor', false);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.AlwaysActiveMode', true);
|
||||
@@ -329,7 +329,7 @@ export function registerGlassSettings(magnifyGlass: any): void {
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.ResetKey', 'o');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.ToggleFollowCursorKey', 'h');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.AltRequired', false);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.OffsetStep', 10);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.OffsetStep', 5);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.DebugMode', false);
|
||||
|
||||
// Panel Defaults
|
||||
@@ -337,12 +337,12 @@ export function registerGlassSettings(magnifyGlass: any): void {
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelPosition', 'Bottom');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelWidth', 300);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelMaxHeight', 300);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelOpacity', 95);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelOpacity', 100);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelTextColor', '#6b7280');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelAccentColor', '#3b82f6');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.InfoPanelAnimations', false);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.ShowHoveringControls', true);
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.ControlsPosition', 'bottom');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.ControlsPosition', 'left');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.ToggleHotkey', 'i');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.GlassPreviewToggleHotkey', 'g');
|
||||
app.ui.settings.setSettingValue('🔍MagnifyGlass.PinPanelHotkey', 'u');
|
||||
|
||||
@@ -127,7 +127,8 @@ function createSelect(
|
||||
value: string,
|
||||
options: readonly string[] | string[],
|
||||
onChange: (value: string) => void,
|
||||
tooltip?: string
|
||||
tooltip?: string,
|
||||
onInput?: (value: string) => void
|
||||
): HTMLElement {
|
||||
const row = document.createElement('div');
|
||||
row.className = 'magnify-control-row';
|
||||
@@ -147,7 +148,14 @@ function createSelect(
|
||||
select.appendChild(option);
|
||||
});
|
||||
|
||||
select.addEventListener('change', () => onChange(select.value));
|
||||
select.addEventListener('change', () => {
|
||||
// Call onInput first for live preview
|
||||
if (onInput) {
|
||||
onInput(select.value);
|
||||
}
|
||||
// Then persist the setting
|
||||
onChange(select.value);
|
||||
});
|
||||
|
||||
row.appendChild(labelEl);
|
||||
row.appendChild(select);
|
||||
@@ -542,10 +550,21 @@ export function renderSettingsPanel(container: HTMLElement): void {
|
||||
));
|
||||
|
||||
panelSection.body.appendChild(createSelect('Controls Position',
|
||||
getSettingValue('🔍MagnifyGlass.ControlsPosition', 'bottom'),
|
||||
getSettingValue('🔍MagnifyGlass.ControlsPosition', 'left'),
|
||||
['top', 'bottom', 'left', 'right', 'top-left', 'top-right', 'bottom-left', 'bottom-right'],
|
||||
(value) => setSettingValue('🔍MagnifyGlass.ControlsPosition', value),
|
||||
'Position of floating control buttons'
|
||||
'Position of floating control buttons',
|
||||
(value) => {
|
||||
// Live update controls position
|
||||
const infoPanel = (window as any).infoPanelManager;
|
||||
if (infoPanel?.stateManager?.state?.settings) {
|
||||
infoPanel.stateManager.state.settings['🔍MagnifyGlass.ControlsPosition'] = value;
|
||||
infoPanel.uiManager.updateControlsLayout(value);
|
||||
if (infoPanel.magnifyGlass.state.active) {
|
||||
infoPanel.positionManager.positionFloatingControls();
|
||||
}
|
||||
}
|
||||
}
|
||||
));
|
||||
|
||||
container.appendChild(panelSection.section);
|
||||
@@ -635,12 +654,12 @@ export function renderSettingsPanel(container: HTMLElement): void {
|
||||
|
||||
// Default glass settings
|
||||
setSettingValue('🔍MagnifyGlass.ZoomFactor', 300);
|
||||
setSettingValue('🔍MagnifyGlass.GlassSize', 250);
|
||||
setSettingValue('🔍MagnifyGlass.GlassSize', 300);
|
||||
setSettingValue('🔍MagnifyGlass.GlassShape', 'Rounded Square');
|
||||
setSettingValue('🔍MagnifyGlass.GlassPosition', 'Top-Right');
|
||||
setSettingValue('🔍MagnifyGlass.TextureFiltering', 'Linear');
|
||||
setSettingValue('🔍MagnifyGlass.BorderWidth', 2);
|
||||
setSettingValue('🔍MagnifyGlass.BorderColor', '#ffffff');
|
||||
setSettingValue('🔍MagnifyGlass.BorderWidth', 1);
|
||||
setSettingValue('🔍MagnifyGlass.BorderColor', '#6b7280');
|
||||
setSettingValue('🔍MagnifyGlass.BorderEnabled', true);
|
||||
setSettingValue('🔍MagnifyGlass.FollowCursor', false);
|
||||
setSettingValue('🔍MagnifyGlass.AlwaysActiveMode', true);
|
||||
@@ -648,20 +667,20 @@ export function renderSettingsPanel(container: HTMLElement): void {
|
||||
setSettingValue('🔍MagnifyGlass.ResetKey', 'o');
|
||||
setSettingValue('🔍MagnifyGlass.ToggleFollowCursorKey', 'h');
|
||||
setSettingValue('🔍MagnifyGlass.AltRequired', false);
|
||||
setSettingValue('🔍MagnifyGlass.OffsetStep', 10);
|
||||
setSettingValue('🔍MagnifyGlass.OffsetStep', 5);
|
||||
setSettingValue('🔍MagnifyGlass.DebugMode', false);
|
||||
|
||||
// Default panel settings
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelEnabled', true);
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelPosition', 'Bottom');
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelWidth', 300);
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelMaxHeight', 600);
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelOpacity', 95);
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelMaxHeight', 300);
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelOpacity', 100);
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelTextColor', '#6b7280');
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelAccentColor', '#3b82f6');
|
||||
setSettingValue('🔍MagnifyGlass.InfoPanelAnimations', false);
|
||||
setSettingValue('🔍MagnifyGlass.ShowHoveringControls', true);
|
||||
setSettingValue('🔍MagnifyGlass.ControlsPosition', 'bottom');
|
||||
setSettingValue('🔍MagnifyGlass.ControlsPosition', 'left');
|
||||
setSettingValue('🔍MagnifyGlass.ToggleHotkey', 'i');
|
||||
setSettingValue('🔍MagnifyGlass.GlassPreviewToggleHotkey', 'g');
|
||||
setSettingValue('🔍MagnifyGlass.PinPanelHotkey', 'u');
|
||||
|
||||
@@ -29,7 +29,7 @@ const DEFAULT_PANEL_SETTINGS = {
|
||||
"🔍MagnifyGlass.GlassPreviewToggleHotkey": "g",
|
||||
"🔍MagnifyGlass.PinPanelHotkey": "u",
|
||||
"🔍MagnifyGlass.ShowHoveringControls": true,
|
||||
"🔍MagnifyGlass.ControlsPosition": "bottom",
|
||||
"🔍MagnifyGlass.ControlsPosition": "left",
|
||||
"🔍MagnifyGlass.InfoPanelTextColor": "#6b7280",
|
||||
"🔍MagnifyGlass.InfoPanelAccentColor": "#3b82f6"
|
||||
};
|
||||
|
||||
@@ -1 +1 @@
|
||||
{"version":3,"file":"defaults.js","sources":["../../../src/shared/settings/defaults.ts"],"sourcesContent":["/**\n * ComfyUI MagnifyGlass - Default Settings Values\n * \n * Default values for all magnify glass and info panel settings.\n */\n\nimport {\n DEFAULT_GLASS_SIZE,\n DEFAULT_ZOOM_FACTOR,\n DEFAULT_BORDER_WIDTH,\n DEFAULT_BORDER_COLOR,\n DEFAULT_OFFSET_STEP,\n DEFAULT_PANEL_WIDTH,\n DEFAULT_PANEL_MAX_HEIGHT,\n DEFAULT_PANEL_OPACITY\n} from '../constants';\nimport type { GlassSettings, PanelSettings } from './types';\n\n/**\n * Default settings for the magnify glass component.\n */\nexport const DEFAULT_GLASS_SETTINGS: GlassSettings = {\n \"🔍MagnifyGlass.ZoomFactor\": DEFAULT_ZOOM_FACTOR,\n \"🔍MagnifyGlass.GlassSize\": DEFAULT_GLASS_SIZE,\n \"🔍MagnifyGlass.BorderColor\": DEFAULT_BORDER_COLOR,\n \"🔍MagnifyGlass.BorderWidth\": DEFAULT_BORDER_WIDTH,\n \"🔍MagnifyGlass.ActivationKey\": \"x\",\n \"🔍MagnifyGlass.AltRequired\": false,\n \"🔍MagnifyGlass.FollowCursor\": false,\n \"🔍MagnifyGlass.DebugMode\": false,\n \"🔍MagnifyGlass.OffsetStep\": DEFAULT_OFFSET_STEP,\n \"🔍MagnifyGlass.GlassPosition\": \"Top-Right\",\n \"🔍MagnifyGlass.ResetKey\": \"o\",\n \"🔍MagnifyGlass.GlassShape\": \"Rounded Square\",\n \"🔍MagnifyGlass.BorderEnabled\": true,\n \"🔍MagnifyGlass.TextureFiltering\": \"Linear\",\n \"🔍MagnifyGlass.AlwaysActiveMode\": true,\n \"🔍MagnifyGlass.ToggleFollowCursorKey\": \"h\",\n};\n\n/**\n * Default settings for the info panel component.\n */\nexport const DEFAULT_PANEL_SETTINGS: PanelSettings = {\n \"🔍MagnifyGlass.InfoPanelEnabled\": true,\n \"🔍MagnifyGlass.InfoPanelPosition\": \"Bottom\",\n \"🔍MagnifyGlass.InfoPanelWidth\": DEFAULT_PANEL_WIDTH,\n \"🔍MagnifyGlass.InfoPanelOpacity\": DEFAULT_PANEL_OPACITY,\n \"🔍MagnifyGlass.InfoPanelMaxHeight\": DEFAULT_PANEL_MAX_HEIGHT,\n \"🔍MagnifyGlass.InfoPanelAnimations\": false,\n \"🔍MagnifyGlass.ShowInspectorTab\": false,\n \"🔍MagnifyGlass.ToggleHotkey\": \"i\",\n \"🔍MagnifyGlass.GlassPreviewToggleHotkey\": \"g\",\n \"🔍MagnifyGlass.PinPanelHotkey\": \"u\",\n \"🔍MagnifyGlass.ShowHoveringControls\": true,\n \"🔍MagnifyGlass.ControlsPosition\": \"bottom\",\n \"🔍MagnifyGlass.InfoPanelTextColor\": \"#6b7280\",\n \"🔍MagnifyGlass.InfoPanelAccentColor\": \"#3b82f6\",\n};\n"],"names":[],"mappings":";AAqBO,MAAM,yBAAwC;AAAA,EACjD,6BAA6B;AAAA,EAC7B,4BAA4B;AAAA,EAC5B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,gCAAgC;AAAA,EAChC,8BAA8B;AAAA,EAC9B,+BAA+B;AAAA,EAC/B,4BAA4B;AAAA,EAC5B,6BAA6B;AAAA,EAC7B,gCAAgC;AAAA,EAChC,2BAA2B;AAAA,EAC3B,6BAA6B;AAAA,EAC7B,gCAAgC;AAAA,EAChC,mCAAmC;AAAA,EACnC,mCAAmC;AAAA,EACnC,wCAAwC;AAC5C;AAKO,MAAM,yBAAwC;AAAA,EACjD,mCAAmC;AAAA,EACnC,oCAAoC;AAAA,EACpC,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,qCAAqC;AAAA,EACrC,sCAAsC;AAAA,EACtC,mCAAmC;AAAA,EACnC,+BAA+B;AAAA,EAC/B,2CAA2C;AAAA,EAC3C,iCAAiC;AAAA,EACjC,uCAAuC;AAAA,EACvC,mCAAmC;AAAA,EACnC,qCAAqC;AAAA,EACrC,uCAAuC;AAC3C;"}
|
||||
{"version":3,"file":"defaults.js","sources":["../../../src/shared/settings/defaults.ts"],"sourcesContent":["/**\n * ComfyUI MagnifyGlass - Default Settings Values\n * \n * Default values for all magnify glass and info panel settings.\n */\n\nimport {\n DEFAULT_GLASS_SIZE,\n DEFAULT_ZOOM_FACTOR,\n DEFAULT_BORDER_WIDTH,\n DEFAULT_BORDER_COLOR,\n DEFAULT_OFFSET_STEP,\n DEFAULT_PANEL_WIDTH,\n DEFAULT_PANEL_MAX_HEIGHT,\n DEFAULT_PANEL_OPACITY\n} from '../constants';\nimport type { GlassSettings, PanelSettings } from './types';\n\n/**\n * Default settings for the magnify glass component.\n */\nexport const DEFAULT_GLASS_SETTINGS: GlassSettings = {\n \"🔍MagnifyGlass.ZoomFactor\": DEFAULT_ZOOM_FACTOR,\n \"🔍MagnifyGlass.GlassSize\": DEFAULT_GLASS_SIZE,\n \"🔍MagnifyGlass.BorderColor\": DEFAULT_BORDER_COLOR,\n \"🔍MagnifyGlass.BorderWidth\": DEFAULT_BORDER_WIDTH,\n \"🔍MagnifyGlass.ActivationKey\": \"x\",\n \"🔍MagnifyGlass.AltRequired\": false,\n \"🔍MagnifyGlass.FollowCursor\": false,\n \"🔍MagnifyGlass.DebugMode\": false,\n \"🔍MagnifyGlass.OffsetStep\": DEFAULT_OFFSET_STEP,\n \"🔍MagnifyGlass.GlassPosition\": \"Top-Right\",\n \"🔍MagnifyGlass.ResetKey\": \"o\",\n \"🔍MagnifyGlass.GlassShape\": \"Rounded Square\",\n \"🔍MagnifyGlass.BorderEnabled\": true,\n \"🔍MagnifyGlass.TextureFiltering\": \"Linear\",\n \"🔍MagnifyGlass.AlwaysActiveMode\": true,\n \"🔍MagnifyGlass.ToggleFollowCursorKey\": \"h\",\n};\n\n/**\n * Default settings for the info panel component.\n */\nexport const DEFAULT_PANEL_SETTINGS: PanelSettings = {\n \"🔍MagnifyGlass.InfoPanelEnabled\": true,\n \"🔍MagnifyGlass.InfoPanelPosition\": \"Bottom\",\n \"🔍MagnifyGlass.InfoPanelWidth\": DEFAULT_PANEL_WIDTH,\n \"🔍MagnifyGlass.InfoPanelOpacity\": DEFAULT_PANEL_OPACITY,\n \"🔍MagnifyGlass.InfoPanelMaxHeight\": DEFAULT_PANEL_MAX_HEIGHT,\n \"🔍MagnifyGlass.InfoPanelAnimations\": false,\n \"🔍MagnifyGlass.ShowInspectorTab\": false,\n \"🔍MagnifyGlass.ToggleHotkey\": \"i\",\n \"🔍MagnifyGlass.GlassPreviewToggleHotkey\": \"g\",\n \"🔍MagnifyGlass.PinPanelHotkey\": \"u\",\n \"🔍MagnifyGlass.ShowHoveringControls\": true,\n \"🔍MagnifyGlass.ControlsPosition\": \"left\",\n \"🔍MagnifyGlass.InfoPanelTextColor\": \"#6b7280\",\n \"🔍MagnifyGlass.InfoPanelAccentColor\": \"#3b82f6\",\n};\n"],"names":[],"mappings":";AAqBO,MAAM,yBAAwC;AAAA,EACjD,6BAA6B;AAAA,EAC7B,4BAA4B;AAAA,EAC5B,8BAA8B;AAAA,EAC9B,8BAA8B;AAAA,EAC9B,gCAAgC;AAAA,EAChC,8BAA8B;AAAA,EAC9B,+BAA+B;AAAA,EAC/B,4BAA4B;AAAA,EAC5B,6BAA6B;AAAA,EAC7B,gCAAgC;AAAA,EAChC,2BAA2B;AAAA,EAC3B,6BAA6B;AAAA,EAC7B,gCAAgC;AAAA,EAChC,mCAAmC;AAAA,EACnC,mCAAmC;AAAA,EACnC,wCAAwC;AAC5C;AAKO,MAAM,yBAAwC;AAAA,EACjD,mCAAmC;AAAA,EACnC,oCAAoC;AAAA,EACpC,iCAAiC;AAAA,EACjC,mCAAmC;AAAA,EACnC,qCAAqC;AAAA,EACrC,sCAAsC;AAAA,EACtC,mCAAmC;AAAA,EACnC,+BAA+B;AAAA,EAC/B,2CAA2C;AAAA,EAC3C,iCAAiC;AAAA,EACjC,uCAAuC;AAAA,EACvC,mCAAmC;AAAA,EACnC,qCAAqC;AAAA,EACrC,uCAAuC;AAC3C;"}
|
||||
@@ -280,12 +280,12 @@ function registerGlassSettings(magnifyGlass) {
|
||||
if (value) {
|
||||
if (confirm("Reset ALL Magnify Glass settings?")) {
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.ZoomFactor", 300);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.GlassSize", 250);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.GlassSize", 300);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.GlassShape", "Rounded Square");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.GlassPosition", "Top-Right");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.TextureFiltering", "Linear");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.BorderWidth", 2);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.BorderColor", "#ffffff");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.BorderWidth", 1);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.BorderColor", "#6b7280");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.BorderEnabled", true);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.FollowCursor", false);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.AlwaysActiveMode", true);
|
||||
@@ -293,18 +293,18 @@ function registerGlassSettings(magnifyGlass) {
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.ResetKey", "o");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.ToggleFollowCursorKey", "h");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.AltRequired", false);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.OffsetStep", 10);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.OffsetStep", 5);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.DebugMode", false);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelEnabled", true);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelPosition", "Bottom");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelWidth", 300);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelMaxHeight", 300);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelOpacity", 95);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelOpacity", 100);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelTextColor", "#6b7280");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelAccentColor", "#3b82f6");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.InfoPanelAnimations", false);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.ShowHoveringControls", true);
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.ControlsPosition", "bottom");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.ControlsPosition", "left");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.ToggleHotkey", "i");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.GlassPreviewToggleHotkey", "g");
|
||||
app.ui.settings.setSettingValue("🔍MagnifyGlass.PinPanelHotkey", "u");
|
||||
|
||||
File diff suppressed because one or more lines are too long
@@ -58,7 +58,7 @@ function createToggle(label, checked, onChange, tooltip) {
|
||||
row.appendChild(toggle);
|
||||
return row;
|
||||
}
|
||||
function createSelect(label, value, options, onChange, tooltip) {
|
||||
function createSelect(label, value, options, onChange, tooltip, onInput) {
|
||||
const row = document.createElement("div");
|
||||
row.className = "magnify-control-row";
|
||||
if (tooltip) row.title = tooltip;
|
||||
@@ -73,7 +73,12 @@ function createSelect(label, value, options, onChange, tooltip) {
|
||||
if (opt === value) option.selected = true;
|
||||
select.appendChild(option);
|
||||
});
|
||||
select.addEventListener("change", () => onChange(select.value));
|
||||
select.addEventListener("change", () => {
|
||||
if (onInput) {
|
||||
onInput(select.value);
|
||||
}
|
||||
onChange(select.value);
|
||||
});
|
||||
row.appendChild(labelEl);
|
||||
row.appendChild(select);
|
||||
return row;
|
||||
@@ -435,10 +440,21 @@ function renderSettingsPanel(container) {
|
||||
));
|
||||
panelSection.body.appendChild(createSelect(
|
||||
"Controls Position",
|
||||
getSettingValue("🔍MagnifyGlass.ControlsPosition", "bottom"),
|
||||
getSettingValue("🔍MagnifyGlass.ControlsPosition", "left"),
|
||||
["top", "bottom", "left", "right", "top-left", "top-right", "bottom-left", "bottom-right"],
|
||||
(value) => setSettingValue("🔍MagnifyGlass.ControlsPosition", value),
|
||||
"Position of floating control buttons"
|
||||
"Position of floating control buttons",
|
||||
(value) => {
|
||||
var _a, _b;
|
||||
const infoPanel = window.infoPanelManager;
|
||||
if ((_b = (_a = infoPanel == null ? void 0 : infoPanel.stateManager) == null ? void 0 : _a.state) == null ? void 0 : _b.settings) {
|
||||
infoPanel.stateManager.state.settings["🔍MagnifyGlass.ControlsPosition"] = value;
|
||||
infoPanel.uiManager.updateControlsLayout(value);
|
||||
if (infoPanel.magnifyGlass.state.active) {
|
||||
infoPanel.positionManager.positionFloatingControls();
|
||||
}
|
||||
}
|
||||
}
|
||||
));
|
||||
container.appendChild(panelSection.section);
|
||||
const panelHotkeySection = createSection("Panel Hotkeys", true);
|
||||
@@ -510,12 +526,12 @@ function renderSettingsPanel(container) {
|
||||
return;
|
||||
}
|
||||
setSettingValue("🔍MagnifyGlass.ZoomFactor", 300);
|
||||
setSettingValue("🔍MagnifyGlass.GlassSize", 250);
|
||||
setSettingValue("🔍MagnifyGlass.GlassSize", 300);
|
||||
setSettingValue("🔍MagnifyGlass.GlassShape", "Rounded Square");
|
||||
setSettingValue("🔍MagnifyGlass.GlassPosition", "Top-Right");
|
||||
setSettingValue("🔍MagnifyGlass.TextureFiltering", "Linear");
|
||||
setSettingValue("🔍MagnifyGlass.BorderWidth", 2);
|
||||
setSettingValue("🔍MagnifyGlass.BorderColor", "#ffffff");
|
||||
setSettingValue("🔍MagnifyGlass.BorderWidth", 1);
|
||||
setSettingValue("🔍MagnifyGlass.BorderColor", "#6b7280");
|
||||
setSettingValue("🔍MagnifyGlass.BorderEnabled", true);
|
||||
setSettingValue("🔍MagnifyGlass.FollowCursor", false);
|
||||
setSettingValue("🔍MagnifyGlass.AlwaysActiveMode", true);
|
||||
@@ -523,18 +539,18 @@ function renderSettingsPanel(container) {
|
||||
setSettingValue("🔍MagnifyGlass.ResetKey", "o");
|
||||
setSettingValue("🔍MagnifyGlass.ToggleFollowCursorKey", "h");
|
||||
setSettingValue("🔍MagnifyGlass.AltRequired", false);
|
||||
setSettingValue("🔍MagnifyGlass.OffsetStep", 10);
|
||||
setSettingValue("🔍MagnifyGlass.OffsetStep", 5);
|
||||
setSettingValue("🔍MagnifyGlass.DebugMode", false);
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelEnabled", true);
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelPosition", "Bottom");
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelWidth", 300);
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelMaxHeight", 600);
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelOpacity", 95);
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelMaxHeight", 300);
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelOpacity", 100);
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelTextColor", "#6b7280");
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelAccentColor", "#3b82f6");
|
||||
setSettingValue("🔍MagnifyGlass.InfoPanelAnimations", false);
|
||||
setSettingValue("🔍MagnifyGlass.ShowHoveringControls", true);
|
||||
setSettingValue("🔍MagnifyGlass.ControlsPosition", "bottom");
|
||||
setSettingValue("🔍MagnifyGlass.ControlsPosition", "left");
|
||||
setSettingValue("🔍MagnifyGlass.ToggleHotkey", "i");
|
||||
setSettingValue("🔍MagnifyGlass.GlassPreviewToggleHotkey", "g");
|
||||
setSettingValue("🔍MagnifyGlass.PinPanelHotkey", "u");
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user