diff --git a/Craftimizer/ImGuiUtils.cs b/Craftimizer/ImGuiUtils.cs index 6089b70..4d4b87b 100644 --- a/Craftimizer/ImGuiUtils.cs +++ b/Craftimizer/ImGuiUtils.cs @@ -587,9 +587,8 @@ internal static class ImGuiUtils public static void TooltipWrapped(string text, float width = 300) { using var _tooltip = ImRaii.Tooltip(); - ImGui.PushTextWrapPos(width); + using var _wrap = ImRaii2.TextWrapPos(width); ImGui.TextUnformatted(text); - ImGui.PopTextWrapPos(); } public static void AlignCentered(float width, float availWidth = default) diff --git a/Craftimizer/ImRaii2.cs b/Craftimizer/ImRaii2.cs index f2499e8..89c32bf 100644 --- a/Craftimizer/ImRaii2.cs +++ b/Craftimizer/ImRaii2.cs @@ -1,4 +1,5 @@ using Dalamud.Interface.Utility.Raii; +using ImGuiNET; using ImPlotNET; using System; using System.Numerics; @@ -89,4 +90,10 @@ public static class ImRaii2 ImPlot.PushStyleColor(idx, col); return new EndUnconditionally(ImPlot.PopStyleColor, true); } + + public static ImRaii.IEndObject TextWrapPos(float wrap_local_pos_x) + { + ImGui.PushTextWrapPos(wrap_local_pos_x); + return new EndUnconditionally(ImGui.PopTextWrapPos, true); + } }