## Link to GitHub Issue, if one exists
n/a
## Description of change
No one uses this, remove them to reduce clutter. This is in preparation
to migrate from deprecated ImGui IO model to new one, and this is part
of that.
## Compiling
👍
## Testing
## Link to GitHub Issue, if one exists
n/a
## Description of change
Update ImGui to `v1.91.4`. We can't update to `v1.91.5` or newer just
yet because impl_spice depends on the old IO model of ImGui which got
removed in `v1.91.5`.
We also can't update the DX9 renderer right now, because at some point
overlay breaks in TDJ (and only in TDJ...)
Enable the new debug logging functionality in ImGui. Add a button in
overlay to toggle debug log window.
Fix some minor bugs spotted by the new ImGui debug log: mismatched API
calls, font loading issues.
## Compiling
👍
## Testing
In progress.
## Link to GitHub Issue, if one exists
n/a
## Description of change
Functionally, no change.
Move ImGui library files around so that they mirror how they are
structured in imgui releases. This will make it easier to migrate to a
future version of ImGui.
Add a handful of static asserts to check that we have the necessary
features enabled / disabled in imgui header.
## Compiling
👍
## Testing
Tested 32-bit overlay, 64-bit overlay, TDJ, and UFC overlays, and
spicecfg.
Interesting finds during ImGui testing (not part of this PR, but for
future reference when upgrading imgui version):
* Updating dx9 backend to the newest causes TDJ to stop rendering the
overlay completely (fine in UFC or any other game)
* Omitting `IMGUI_USE_BGRA_PACKED_COLOR` causes spicecfg software
renderer to use the wrong color (RGB format parsing error probably)
* At some point - v1.90? the `About` and `Licenses` buttons in spicecfg
stop responding after an upgrade, maybe our improper usage of MenuItem?
* Using the docking branch of ImGui is not required but we should just
stick to it for multi-viewport functionality which we may want to use
later.
## Link to GitHub Issue, if one exists
Fixes#27
## Description of change
In standalone configurator mode, when a mouse cursor moves outside the
window and comes back, it may get stuck in the wrong cursor type (e.g.,
get stuck in horizontal resize mode). This is a side effect of software
rendering we do that doesn't deal nicely with mouse events (i.e., not at
all).
## Compiling
Should be fine.
## Testing
Testing spicecfg, spice -cfg, spice64 -cfg, and in-game overlay.