File Details
3.3.17
- R
- May 17, 2026
- 1.01 MB
- 17.5K
- 12.0.5+6
- Retail + 3
File Name
GSE-3.3.17.zip
Supported Versions
- 12.0.5
- 11.0.5
- 11.0.2
- 5.5.4
- 5.5.3
- 2.5.5
- 1.15.8
GSE
3.3.17 (2026-05-16)
Full Changelog Previous Releases
- #1893 update build script
- #1890 Statics: register specId 1480 (DH Devourer/Aldrachi) in SpecIDClassList
- #1890 Colour code corrections — don't rewrite MacroBlock text mid-typing
The previous patch's macroEditBox OnTextChanged handler called
sel:SetText(value) to rewrite the visible text when decoded value
differed from raw input. AceGUI fires OnTextSet after SetText, which
resets the caret to position 0 and strips editor colour markup —
producing a visible cursor-jump and lost colouring whenever the user
typed into a MacroBlock.
Drop the sel:SetText branch. The handler still decodes value and
stores the clean form via StoreMacroEditorText(value); we just no
longer overwrite the live edit box while the user is interacting
with it. The same change applies to GSE_QoL's CreateSpellEditBox
override since it mirrors the base GUI implementation.
Patch from external contributor (Larry, 2026-05-10). - #1890 Colour code corrections — UI editor decode/disable-coloring wiring
Editor.lua:
- GetCompiledMacroBodyLength — decode before measuring length.
- Raw editor compile/cancel — decode input before loadstring; disable
IndentationLib on widget release/cancel so stale colouring doesn't leak.
- Per-action save (cfg.sourceBox) — StoreMacroEditorText for macro fields,
DecodeEditorText for everything else.
- Raw-edit button — sanitize sequence version before opening raw editor.
- Macro action render — repair leaked markup on action.macro before display,
decode spelltext for non-macro types, decode in OnTextChanged callbacks.
- macroEditBox — DisableMultilineEditorColoring on creation/release; decode
text on change with a recursion guard before storing via StoreMacroEditorText.
Editor_Actions.lua:
- Wrap each spellEditBox:GetText() with DecodeEditorText (or
StoreMacroEditorText for macro radio).
- Compiled-side-panel + visible-char count both decoded.
Editor_Macro.lua:
- Macro template / compiled-template / OnTextChanged paths decode through
DecodeMacroEditorText / StoreMacroEditorText.
- Manual macro display SetText decoded.
Editor_Variable.lua:
- OnRelease callback disables IndentationLib on the value editor.
MacroCompare.lua:
- DisableCompareColoring on close, action button, and OnRelease for both
diff columns.
MacroPreview.lua:
- DisablePreviewColoring on PreviewLabel OnRelease.
QoL.lua (GameMode > 10 retail-spell editor):
- Mirrors Editor.lua's macroEditBox pattern: repair-on-display, decode
OnTextChanged with recursion guard, DisableMultilineEditorColoring on
create/release, count + side-panel through decode helpers. - #1890 Colour code corrections — sanitize on storage and import paths
Storage.lua:
- migrateSequenceVersions / ReplaceSequence — call SanitizeSequenceEditorMarkup
so previously-stored sequences with leaked markup get cleaned on next save.
- buildAction / CompileMacroText — decode macro text before slash-command
detection so a leaked colour prefix doesn't hide the leading "/".
Utils.lua:
- OOCAddSequenceToCollection / OOCPerformMergeAction — sanitize before storing.
- processWAGOImport — scrub the imported tree.
- ImportSerialisedSequence — scrub COLLECTION payloads (with defensive
or {}on Sequences/Variables/Macros), MACRO, and VARIABLE imports.
- Adds local helpers scrubImportedEditorMarkup / scrubCollectionPayload that
recurse using the new GSE.Decode* helpers (with inline fallback if absent). - #1890 Colour code corrections — add editor-markup decode helpers
Adds shared helpers used across the editor, storage, and import paths to
strip leaked WoW colour markup (|cff…|r and || escape pairs) without
losing the translator-coloured display text:
GSE.DecodeEditorText — strip colour markup from any string
GSE.DecodeMacroEditorText — same + repair |cmd → /cmd at line starts
GSE.StoreMacroEditorText — decode + recompile-then-decode for storage
GSE.SanitizeSequenceEditorMarkup — recursive walker over sequence tables
This commit lands the helpers only; storage/import/UI call-sites follow. - #1890 Hide the macro compilation unless the cokmpile template window is open
- #1893 manage import queue

