@@ -4,6 +4,68 @@ All notable changes to this project will be documented in this file.
44
55## [ Unreleased]
66
7+ ## [ 1.16.0] - 2025-11-24
8+
9+ ### Added
10+ - ** Lock Editor Button** : New "🔒 Lock Editor" button in script control panel (right-justified) to prevent accidental edits
11+ - Makes script editor read-only when enabled
12+ - Prevents scanner input from typing into script when locked
13+ - State persists between app restarts
14+ - Visual feedback: red when locked, orange when unlocked
15+ - ** NVM Dump Window** : Moved NVM dump functionality from Firmware Manager to Devices menu for better organization
16+ - Standalone window with tabbed interface
17+ - "Dump NVM", "Clear View", and "Clear Firmware (Reset NVM)" buttons
18+ - Dedicated output area for NVM data
19+ - ** Firmware Manager Auto-Sizing** : Window now automatically scales to fit all device content based on screen size
20+ - Dynamic height calculation (480px per device)
21+ - Minimum size of 1000x700 with fallback to 1200x900
22+ - No more need to manually resize window
23+
24+ ### Changed
25+ - ** Serial Number Panel** : Now visible by default on first launch (was hidden)
26+ - ** Serial Number Input** : Redesigned layout and improved usability
27+ - Input field now auto-saves (removed "Set" button)
28+ - Moved input bar next to "Serial Number" label
29+ - Removed redundant "Current:" text
30+ - Improved auto-increment checkbox sizing
31+ - Info text updated to reflect auto-save behavior
32+ - ** Device Manager Width Calculation** : Changed to pure percentage-based limits (45% max) to handle UI scaling better
33+ - Fixes issue where panel would take up entire width on restart with large UI scaling
34+
35+ ### Fixed
36+ - ** Conditional Statement Warnings** : Fixed bug where ` if ` conditions triggering warnings would show "Step complete" instead of the warning message
37+ - Status now correctly preserved when script is in error hold state
38+ - ** Scanner Input Injection** : Fixed scanner input being typed into script editor when cursor was focused there
39+ - Implemented "scanner mode" that blocks character propagation during rapid input
40+ - Scanner handler now runs first via ` bind_all ` with ` add=True `
41+ - ** File Wipe Bug** : Fixed critical bug where autosave could wipe file contents during loading
42+ - Added ` loading_file ` flag to prevent autosave during programmatic edits
43+ - Files are now safe during all load/recovery operations
44+ - ** Device Manager Width Persistence** : Fixed issues with saving/restoring panel width
45+ - Added stricter validation for saved widths
46+ - Improved retry mechanism for widget sizing
47+ - Better debug logging for troubleshooting
48+
49+ ## [ 1.15.0] - 2025-11-22
50+
51+ ### Added
52+ - ** Serial Number System** : Comprehensive serial number tracking with auto-increment functionality
53+ - Manual entry via GUI panel (located in Device Manager, hidden by default)
54+ - Barcode/QR code scanner support (USB and Bluetooth)
55+ - Automatic integration with data logging filenames
56+ - Smart auto-increment for various serial formats (numeric, prefix+numeric, mixed)
57+ - Persistent storage of serial numbers and settings
58+ - Template variables: ` <serial> ` , ` <date> ` , ` <time> ` for flexible filename formatting
59+ - Serial number settings dialog accessible via Settings menu
60+ - Toggle panel visibility via Settings → "Show Serial Number Panel" (off by default)
61+ - Real-time feedback on scanner activity (no misleading "ready" status)
62+ - Comprehensive documentation (SERIAL_NUMBER_SYSTEM.md, SERIAL_NUMBER_QUICKSTART.md)
63+ - Example scripts demonstrating serial number usage
64+ - Test suite for serial number functionality (test_serial_system.py)
65+
66+ ### Fixed
67+ - ** Firmware Manager mousewheel crash** : Fixed ` TclError: invalid command name ` exception that occurred when scrolling mouse wheel after closing the Firmware Manager window. Added proper event binding cleanup in window close handler.
68+
769## [ 1.14.6] - 2025-11-21
870
971### Fixed
0 commit comments