Skip to content

Commit dfa3c43

Browse files
committed
feat: added changelog popup on first login after updating the addon.
1 parent 160cc49 commit dfa3c43

10 files changed

Lines changed: 591 additions & 38 deletions

File tree

.vscode/tasks.json

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,20 @@
11
{
22
"version": "2.0.0",
33
"tasks": [
4+
{
5+
"label": "Sync CHANGELOG.md to ConfigChangelogData.lua",
6+
"type": "shell",
7+
"command": "powershell",
8+
"args": [
9+
"-NoProfile",
10+
"-ExecutionPolicy",
11+
"Bypass",
12+
"-File",
13+
"${workspaceFolder}\\scripts\\sync-changelog-to-lua.ps1"
14+
],
15+
"group": "build",
16+
"problemMatcher": []
17+
},
418
{
519
"label": "Package CombatMode Zip",
620
"type": "shell",

CombatMode/CHANGELOG.md

Lines changed: 94 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,110 @@
1-
## 3.2.1 CHANGELOG
2-
- Fixed issue preventing Cast @cursor Whitelist from properly working.
1+
# Changelog
32

4-
---
3+
All notable changes to this project will be documented in this file.
54

6-
### 3.2.0 CHANGELOG
7-
- Added Reticle Targeting CVar editor that allows the user to customize the values of the CVars Combat Mode utilizes for Reticle Targeting.
8-
- Added Targeting macro prelines editor that allows the user to customize the macro prelines injected into every action when Reticle Targeting is enabled.
5+
This log follows Keep a Changelog (https://keepachangelog.com/en/1.1.0/) and Semantic Versioning (https://semver.org/spec/v2.0.0.html).
96

10-
### 3.1.10 CHANGELOG
11-
- Added explicit third-party action bar policy: when Bartender4, Dominos, or ElvUI is detected, CM forces `macroInjectionClickCastOnly=true` and locks that toggle, while Blizzard default bars keep full reticle targeting macro injection behavior.
7+
## [3.2.2] - 2026-03-28
128

13-
### 3.1.9 CHANGELOG
14-
- Major refactor of action bar binding override code. ***[Technical gibberish ahead]*** Now CM computes the canonical action-slot id directly from the binding prefix and button index. This
15-
avoids relying on `MultiBar*ButtonN` frames whose `action` attribute can be ambiguous under action bar replacement addons like Bartender4, Dominos, ElvUI, etc.
9+
### Added
10+
11+
- Changelog popup on first login after updating the addon.
12+
13+
## [3.2.1] - 2026-03-27
14+
15+
### Fixed
16+
17+
- Cast @cursor whitelist not applying correctly.
18+
19+
## [3.2.0] - 2026-03-27
20+
21+
### Added
22+
23+
- Reticle Targeting CVar editor: customize the CVars Combat Mode uses for Reticle Targeting.
24+
- Targeting macro prelines editor: customize macro prelines injected into actions when Reticle Targeting is enabled.
25+
26+
## [3.1.10] - 2026-03-26
27+
28+
### Added
29+
30+
- Explicit third-party action bar policy: when Bartender4, Dominos, or ElvUI is detected, Combat Mode forces `macroInjectionClickCastOnly=true` and locks that toggle; Blizzard default bars keep full reticle targeting macro injection.
31+
32+
## [3.1.9] - 2026-03-26
33+
34+
### Changed
35+
36+
- Refactored action bar binding overrides: canonical action-slot id is derived from the binding prefix and button index instead of `MultiBar*ButtonN` frames, whose `action` attribute can be ambiguous with Bartender4, Dominos, ElvUI, and similar addons.
1637
- Code cleanup.
1738

18-
### 3.1.8 CHANGELOG
19-
- Fixed issue preventing Reticle Targeting from working with ElvUI/Bartender4.
39+
## [3.1.8] - 2026-03-25
40+
41+
### Fixed
42+
43+
- Reticle Targeting with ElvUI and Bartender4.
44+
45+
## [3.1.7] - 2026-03-24
46+
47+
### Fixed
48+
49+
- Sticky crosshair table name.
50+
51+
## [3.1.6] - 2026-03-24
2052

21-
### 3.1.7 CHANGELOG
22-
- Fixed sticky crosshair table name.
53+
### Added
54+
55+
- GitHub package release workflow.
56+
57+
### Changed
2358

24-
### 3.1.6 CHANGELOG
2559
- Code cleanup.
26-
- Added GitHub package release workflow.
2760

28-
### 3.1.5 CHANGELOG
29-
- Cursor freelook centring is now tied to the Crosshair being active and not Reticle Targeting.
30-
- Crosshair reactivity no longer requires Reticle Targeting to be enabled.
31-
- Adjusted Interaction HUD range check.
61+
## [3.1.5] - 2026-03-23
62+
63+
### Changed
64+
65+
- Cursor freelook centring is tied to the Crosshair being active, not Reticle Targeting.
66+
- Crosshair reactivity no longer requires Reticle Targeting.
67+
- Interaction HUD range check adjusted.
68+
69+
Together, these updates allow using the Crosshair and Interaction HUD independently of Reticle Targeting configuration.
70+
71+
## [3.1.4] - 2026-03-23
72+
73+
### Changed
74+
75+
- Performance improvements.
76+
- Split `Constants.lua` into smaller files under `/Constants`.
77+
78+
## [3.1.3] - 2026-03-23
3279

33-
These changes should allow the player to use the Crosshair and the Interaction HUD regardless of Reticle Targeting configuration.
80+
### Fixed
3481

35-
### 3.1.4 CHANGELOG
36-
- Performance pass.
37-
- Split Constants.lua into smaller files in /Constants.
82+
- Interaction HUD errors from secret values in dungeons.
3883

39-
### 3.1.3 CHANGELOG
40-
- Fixed Interaction HUD issues with secret values in dungeons throwing errors.
41-
- Font usage for Interaction HUD and Healing Radial is now client language-agnostic.
84+
### Changed
85+
86+
- Interaction HUD and Healing Radial fonts are no longer tied to a specific client language.
4287
- Updated LibEditMode.
4388

44-
### 3.1.2 CHANGELOG
45-
- Added LibEditMode to Libs folder
89+
## [3.1.2] - 2026-03-22
90+
91+
### Added
92+
93+
- LibEditMode in the `Libs` folder.
94+
95+
## [3.1.1] - 2026-03-22
96+
97+
### Added
98+
99+
- Edit Mode support: adjust the Crosshair from Blizzard’s Edit Mode.
100+
- Interaction HUD option for the crosshair: shows interactable NPCs and objects to the right of the crosshair when enabled.
101+
102+
### Changed
103+
104+
- Crosshair vertical positioning limit removed.
105+
- Crosshair behavior aligns more closely with config options, including more reliable cursor centring.
106+
- Reorganized project structure into smaller, easier-to-maintain files.
107+
108+
### Fixed
46109

47-
### 3.1.1 CHANGELOG
48-
- Added support for Edit Mode. You can now adjust the Crosshair directly from Blizzard's Edit Mode.
49-
- Added Interaction HUD to crosshair options. This displays a HUD for interactable NPCs or objects to the right of the crosshair when enabled.
50-
- Adjusted Crosshair positioning to remove the vertical position limit, allowing the user to place it as high or as low as they want to.
51-
- Crosshair reaction now better reflects config options, including more reliable cursor centring.
52-
- Fixed issue with Reticle Targeting blacklist not properly excluding spells from the targeting macro injection, which was interfering with Hold To Cast/Empowered spells. Now, if you exclude a spell by putting its name on the list, Hold To Cast & Empowered Spell options like Hold & Release should work properly.
53-
- Reorganized project structure into smaller, more maintainable files.
110+
- Reticle Targeting blacklist not excluding spells from targeting macro injection, which broke Hold To Cast and empowered spell options (e.g. Hold & Release). Excluding a spell by name on the list now restores expected behavior.

CombatMode/CombatMode.toc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
## Interface: 120005, 120001, 120000
2-
## Version: 3.2.1
2+
## Version: 3.2.2
33

44
## Title: |A:::|a|TInterface\Addons\CombatMode\assets\cmtitle:22:95|t
55
## Notes: Combat Mode transforms the standard tab-targeting combat into a more engaging and dynamic action-oriented experience.

CombatMode/Config/ConfigAbout.lua

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,17 @@ CM.Config.AboutOptions = {
9898
name = "|cffffffffVersion:|r " .. "|cff00ff00" .. CM.METADATA["VERSION"] .. "|r\n\n",
9999
order = 3.2,
100100
},
101+
changelogButton = {
102+
type = "execute",
103+
name = "CHANGELOG",
104+
desc = "Opens the changelog in a scrollable window.",
105+
width = 0.7,
106+
func = function()
107+
CM.Config.ShowChangelog()
108+
end,
109+
order = 3.22,
110+
},
111+
spacing333 = Spacing("full", 3.23),
101112
authorsList = {
102113
type = "description",
103114
name = "|cffffffffAuthors:|r " .. "|cffcfcfcf" .. CM.METADATA["AUTHOR"] .. "|r\n",
Lines changed: 122 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,122 @@
1+
---------------------------------------------------------------------------------------
2+
-- Config/ConfigChangelogData.lua - changelog body for in-game viewer
3+
-- Regenerate from CHANGELOG.md: scripts\sync-changelog-to-lua.ps1
4+
---------------------------------------------------------------------------------------
5+
local _G = _G
6+
local LibStub = _G.LibStub
7+
local AceAddon = LibStub("AceAddon-3.0")
8+
local CM = AceAddon:GetAddon("CombatMode")
9+
10+
CM.Config = CM.Config or {}
11+
CM.Config.ChangelogText = [[
12+
# Changelog
13+
14+
All notable changes to this project will be documented in this file.
15+
16+
This log follows Keep a Changelog (https://keepachangelog.com/en/1.1.0/) and Semantic Versioning (https://semver.org/spec/v2.0.0.html).
17+
18+
## [3.2.2] - 2026-03-28
19+
20+
### Added
21+
22+
- Changelog popup on first login after updating the addon.
23+
24+
## [3.2.1] - 2026-03-27
25+
26+
### Fixed
27+
28+
- Cast @cursor whitelist not applying correctly.
29+
30+
## [3.2.0] - 2026-03-27
31+
32+
### Added
33+
34+
- Reticle Targeting CVar editor: customize the CVars Combat Mode uses for Reticle Targeting.
35+
- Targeting macro prelines editor: customize macro prelines injected into actions when Reticle Targeting is enabled.
36+
37+
## [3.1.10] - 2026-03-26
38+
39+
### Added
40+
41+
- Explicit third-party action bar policy: when Bartender4, Dominos, or ElvUI is detected, Combat Mode forces `macroInjectionClickCastOnly=true` and locks that toggle; Blizzard default bars keep full reticle targeting macro injection.
42+
43+
## [3.1.9] - 2026-03-26
44+
45+
### Changed
46+
47+
- Refactored action bar binding overrides: canonical action-slot id is derived from the binding prefix and button index instead of `MultiBar*ButtonN` frames, whose `action` attribute can be ambiguous with Bartender4, Dominos, ElvUI, and similar addons.
48+
- Code cleanup.
49+
50+
## [3.1.8] - 2026-03-25
51+
52+
### Fixed
53+
54+
- Reticle Targeting with ElvUI and Bartender4.
55+
56+
## [3.1.7] - 2026-03-24
57+
58+
### Fixed
59+
60+
- Sticky crosshair table name.
61+
62+
## [3.1.6] - 2026-03-24
63+
64+
### Added
65+
66+
- GitHub package release workflow.
67+
68+
### Changed
69+
70+
- Code cleanup.
71+
72+
## [3.1.5] - 2026-03-23
73+
74+
### Changed
75+
76+
- Cursor freelook centring is tied to the Crosshair being active, not Reticle Targeting.
77+
- Crosshair reactivity no longer requires Reticle Targeting.
78+
- Interaction HUD range check adjusted.
79+
80+
Together, these updates allow using the Crosshair and Interaction HUD independently of Reticle Targeting configuration.
81+
82+
## [3.1.4] - 2026-03-23
83+
84+
### Changed
85+
86+
- Performance improvements.
87+
- Split `Constants.lua` into smaller files under `/Constants`.
88+
89+
## [3.1.3] - 2026-03-23
90+
91+
### Fixed
92+
93+
- Interaction HUD errors from secret values in dungeons.
94+
95+
### Changed
96+
97+
- Interaction HUD and Healing Radial fonts are no longer tied to a specific client language.
98+
- Updated LibEditMode.
99+
100+
## [3.1.2] - 2026-03-22
101+
102+
### Added
103+
104+
- LibEditMode in the `Libs` folder.
105+
106+
## [3.1.1] - 2026-03-22
107+
108+
### Added
109+
110+
- Edit Mode support: adjust the Crosshair from Blizzard’s Edit Mode.
111+
- Interaction HUD option for the crosshair: shows interactable NPCs and objects to the right of the crosshair when enabled.
112+
113+
### Changed
114+
115+
- Crosshair vertical positioning limit removed.
116+
- Crosshair behavior aligns more closely with config options, including more reliable cursor centring.
117+
- Reorganized project structure into smaller, easier-to-maintain files.
118+
119+
### Fixed
120+
121+
- Reticle Targeting blacklist not excluding spells from targeting macro injection, which broke Hold To Cast and empowered spell options (e.g. Hold & Release). Excluding a spell by name on the list now restores expected behavior.
122+
]]

0 commit comments

Comments
 (0)