Add Game Experience overlay loadout preset#658
Conversation
77818ab to
fee8a0b
Compare
There was a problem hiding this comment.
Pull request overview
This PR adds a new default “Game Experience” overlay loadout preset and updates the UI/logic so the built-in preset indices (0–3) align with the preset selector order.
Changes:
- Added a 4th built-in preset slot (index 3) and updated preset cycling to include it.
- Updated the preset selector UI to include “Game Experience” as a new default option.
- Reworked the shipped preset JSON files and added a new
preset-3.jsonloadout.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| IntelPresentMon/PMInstaller/PresentMon.wxs | Ships an additional preset file (preset-3.json) in the installer. |
| IntelPresentMon/AppCef/ipm-ui-vue/src/views/MainView.vue | Adds the “Game Experience” preset button in the preset toggle group. |
| IntelPresentMon/AppCef/ipm-ui-vue/src/core/preferences.ts | Adds Preset.Slot4 = 3 to represent the new built-in preset. |
| IntelPresentMon/AppCef/ipm-ui-vue/src/App.vue | Extends preset hotkey cycling logic to cycle through 0–3. |
| IntelPresentMon/AppCef/ipm-ui-vue/presets/preset-1.json | Updates the loadout content for preset index 1 (now “Game Experience”). |
| IntelPresentMon/AppCef/ipm-ui-vue/presets/preset-2.json | Updates the loadout content for preset index 2 (“GPU Focus”). |
| IntelPresentMon/AppCef/ipm-ui-vue/presets/preset-3.json | Adds the new preset index 3 loadout (“Power/Temp”). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| export enum Preset { | ||
| Slot1 = 0, | ||
| Slot2 = 1, | ||
| Slot3 = 2, | ||
| Slot4 = 3, | ||
| Custom = 1000, | ||
| } |
There was a problem hiding this comment.
Discussed in tech sync. Won't bother with that.
| <Component | ||
| Id="pm_app_preset_3" | ||
| Guid="A1C2E3F4-5B6D-4789-A012-3456789ABCDE"> | ||
| <File | ||
| Id="pm_app_preset_3" | ||
| Name="preset-3.json" | ||
| Source="$(var.PresentMon.TargetDir)Presets\preset-3.json" | ||
| KeyPath="yes"> | ||
| </File> |
There was a problem hiding this comment.
Same as above. The preset name being tied to the order in which they are shown is unfortunate but we don't want to change that here...
fee8a0b to
bac3b1d
Compare
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 7 out of 7 changed files in this pull request and generated 1 comment.
Comments suppressed due to low confidence (1)
IntelPresentMon/AppCef/ipm-ui-vue/src/App.vue:36
- cyclePreset() still hard-codes preset indices (wrap at 3, reset to 0). Since the Preset enum now defines Slot4=3, using the enum values here makes the intent clearer and avoids future drift if the enum changes again.
function cyclePreset() {
if (prefs.preferences.selectedPreset === null || prefs.preferences.selectedPreset >= 3) {
prefs.preferences.selectedPreset = 0;
} else {
prefs.preferences.selectedPreset++;
}
| <v-btn-toggle v-model="prefs.preferences.selectedPreset" :mandatory="prefs.preferences.selectedPreset !== null" variant="outlined" divided> | ||
| <v-btn class="px-5" large> | ||
| Basic | ||
| </v-btn> | ||
|
|
Introduce a fourth default loadout (preset-1.json) and reorder shipped presets so indices 0-3 match UI order: Basic, Game Experience, GPU Focus, Power/Temp.
bac3b1d to
328e1f0
Compare
Introduce a fourth default loadout (preset-1.json) and reorder shipped presets so indices 0–3 match UI order: Basic, Game Experience, GPU Focus, Power/Temp.