chore: bump version to 1.10.1, update docs and build artifacts

This commit is contained in:
AEmotionStudio
2026-01-13 22:08:14 -08:00
parent 811e34b85a
commit 02fe7540e2
6 changed files with 47 additions and 18 deletions
+16
View File
@@ -5,6 +5,22 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [1.10.1] - 2026-01-13
### Improved
- **Performance**: Significant optimization of mouse movement tracking using `requestAnimationFrame`, resulting in smoother operation and reduced CPU load.
- **Documentation**:
- Added `CONTRIBUTING.md` to guide new contributors.
- Added standard GitHub Issue Templates for bug reports and feature requests.
- Updated README with a new high-quality YouTube demo video.
### Fixed
- **UI Layout**: Corrected the positioning of the toggle icon in the bottom toolbar.
- **Stability**: Fixed a startup error related to `Comfy.ColorPalette` detection.
---
## [1.10.0] - 2026-01-06
### Added
+2 -2
View File
@@ -3,7 +3,7 @@
# ComfyUI-MagnifyGlass
[![ComfyUI](https://img.shields.io/badge/ComfyUI-Extension-green?style=for-the-badge)](https://github.com/comfyanonymous/ComfyUI)
[![Version](https://img.shields.io/badge/Version-1.10.0-orange?style=for-the-badge)](https://github.com/AEmotionStudio/ComfyUI-MagnifyGlass/releases)
[![Version](https://img.shields.io/badge/Version-1.10.1-orange?style=for-the-badge)](https://github.com/AEmotionStudio/ComfyUI-MagnifyGlass/releases)
[![License](https://img.shields.io/badge/License-GPLv3-red?style=for-the-badge)](LICENSE)
[![Dependencies](https://img.shields.io/badge/dependencies-none-brightgreen?style=for-the-badge&color=blue)](package.json)
@@ -23,7 +23,7 @@
---
## 🚀 What's New in v1.10.0 (January 6, 2026)
## 🚀 What's New in v1.10.1 (January 13, 2026)
**Inspector Power-Ups & Settings Overhaul**
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "comfyui-magnifyglass",
"version": "1.5.0",
"version": "1.10.1",
"type": "module",
"description": "A professional magnifying glass and info panel for ComfyUI",
"scripts": {
+1 -1
View File
@@ -1,7 +1,7 @@
[project]
name = "comfyui-magnifyglass"
description = "ComfyUI-MagnifyGlass: A powerful & customizable magnifying glass for ComfyUI. Zoom into canvas details with smooth controls, configurable activation, custom styles (shape, size, border) & WebGL performance."
version = "1.4.5"
version = "1.10.1"
license = {file = "LICENSE"}
[project.urls]
+26 -13
View File
@@ -7,6 +7,7 @@ import { DEFAULT_PADDING, DEFAULT_GLASS_Y_OFFSET } from "../shared/constants.js"
class EventHandler {
constructor(magnifyGlass) {
__publicField(this, "magnifyGlass");
__publicField(this, "rafId", null);
this.magnifyGlass = magnifyGlass;
this.handleKeyDown = this.handleKeyDown.bind(this);
this.handleKeyUp = this.handleKeyUp.bind(this);
@@ -30,6 +31,10 @@ class EventHandler {
document.removeEventListener("keyup", this.handleKeyUp);
document.removeEventListener("mousemove", this.handleMouseMove);
window.removeEventListener("resize", this.handleResize);
if (this.rafId !== null) {
cancelAnimationFrame(this.rafId);
this.rafId = null;
}
}
/**
* Handle window resize events.
@@ -167,19 +172,27 @@ class EventHandler {
this.magnifyGlass.lastKnownMousePosition.x = e.clientX;
this.magnifyGlass.lastKnownMousePosition.y = e.clientY;
if (!this.magnifyGlass.state.active || !this.magnifyGlass.litegraphCanvas) return;
const rect = this.magnifyGlass.litegraphCanvas.getBoundingClientRect();
const cssMouseXOnCanvas = e.clientX - rect.left;
const cssMouseYOnCanvas = e.clientY - rect.top;
if (cssMouseXOnCanvas >= 0 && cssMouseXOnCanvas <= rect.width && cssMouseYOnCanvas >= 0 && cssMouseYOnCanvas <= rect.height) {
const canvasElement = this.magnifyGlass.litegraphCanvas;
const scaleX = rect.width > 0 ? canvasElement.width / rect.width : 1;
const scaleY = rect.height > 0 ? canvasElement.height / rect.height : 1;
const pixelX = cssMouseXOnCanvas * scaleX;
const pixelY = cssMouseYOnCanvas * scaleY;
this.magnifyGlass.state.x = pixelX;
this.magnifyGlass.state.y = pixelY;
this.magnifyGlass.ui.positionGlass(e.clientX, e.clientY);
this.magnifyGlass.updateMagnifiedView();
if (this.rafId === null) {
this.rafId = requestAnimationFrame(() => {
this.rafId = null;
if (!this.magnifyGlass.state.active || !this.magnifyGlass.litegraphCanvas) return;
const clientX = this.magnifyGlass.lastKnownMousePosition.x;
const clientY = this.magnifyGlass.lastKnownMousePosition.y;
const rect = this.magnifyGlass.litegraphCanvas.getBoundingClientRect();
const cssMouseXOnCanvas = clientX - rect.left;
const cssMouseYOnCanvas = clientY - rect.top;
if (cssMouseXOnCanvas >= 0 && cssMouseXOnCanvas <= rect.width && cssMouseYOnCanvas >= 0 && cssMouseYOnCanvas <= rect.height) {
const canvasElement = this.magnifyGlass.litegraphCanvas;
const scaleX = rect.width > 0 ? canvasElement.width / rect.width : 1;
const scaleY = rect.height > 0 ? canvasElement.height / rect.height : 1;
const pixelX = cssMouseXOnCanvas * scaleX;
const pixelY = cssMouseYOnCanvas * scaleY;
this.magnifyGlass.state.x = pixelX;
this.magnifyGlass.state.y = pixelY;
this.magnifyGlass.ui.positionGlass(clientX, clientY);
this.magnifyGlass.updateMagnifiedView();
}
});
}
}
/**
File diff suppressed because one or more lines are too long