mirror of
https://github.com/xivdev/Penumbra.git
synced 2025-12-12 18:27:24 +01:00
Fix issue with tutorial window and double necessary click
This commit is contained in:
parent
bbfc9a0a6f
commit
4294b18bcb
1 changed files with 12 additions and 14 deletions
|
|
@ -15,15 +15,11 @@ public sealed class ImportPopup : Window
|
||||||
|
|
||||||
public ImportPopup(ModImportManager modImportManager)
|
public ImportPopup(ModImportManager modImportManager)
|
||||||
: base("Penumbra Import Status",
|
: base("Penumbra Import Status",
|
||||||
ImGuiWindowFlags.Modal
|
ImGuiWindowFlags.NoCollapse
|
||||||
| ImGuiWindowFlags.Popup
|
|
||||||
| ImGuiWindowFlags.NoCollapse
|
|
||||||
| ImGuiWindowFlags.NoDecoration
|
| ImGuiWindowFlags.NoDecoration
|
||||||
| ImGuiWindowFlags.NoBackground
|
| ImGuiWindowFlags.NoBackground
|
||||||
| ImGuiWindowFlags.NoMove
|
| ImGuiWindowFlags.NoMove
|
||||||
| ImGuiWindowFlags.NoInputs
|
| ImGuiWindowFlags.NoInputs, true)
|
||||||
| ImGuiWindowFlags.NoFocusOnAppearing
|
|
||||||
| ImGuiWindowFlags.NoBringToFrontOnFocus, true)
|
|
||||||
{
|
{
|
||||||
_modImportManager = modImportManager;
|
_modImportManager = modImportManager;
|
||||||
IsOpen = true;
|
IsOpen = true;
|
||||||
|
|
@ -40,7 +36,9 @@ public sealed class ImportPopup : Window
|
||||||
if (!_modImportManager.IsImporting(out var import))
|
if (!_modImportManager.IsImporting(out var import))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ImGui.OpenPopup("##importPopup");
|
const string importPopup = "##importPopup";
|
||||||
|
if (!ImGui.IsPopupOpen(importPopup))
|
||||||
|
ImGui.OpenPopup(importPopup);
|
||||||
|
|
||||||
var display = ImGui.GetIO().DisplaySize;
|
var display = ImGui.GetIO().DisplaySize;
|
||||||
var height = Math.Max(display.Y / 4, 15 * ImGui.GetFrameHeightWithSpacing());
|
var height = Math.Max(display.Y / 4, 15 * ImGui.GetFrameHeightWithSpacing());
|
||||||
|
|
@ -48,17 +46,17 @@ public sealed class ImportPopup : Window
|
||||||
var size = new Vector2(width * 2, height);
|
var size = new Vector2(width * 2, height);
|
||||||
ImGui.SetNextWindowPos(ImGui.GetMainViewport().GetCenter(), ImGuiCond.Always, Vector2.One / 2);
|
ImGui.SetNextWindowPos(ImGui.GetMainViewport().GetCenter(), ImGuiCond.Always, Vector2.One / 2);
|
||||||
ImGui.SetNextWindowSize(size);
|
ImGui.SetNextWindowSize(size);
|
||||||
using var popup = ImRaii.Popup("##importPopup", ImGuiWindowFlags.Modal);
|
using var popup = ImRaii.Popup(importPopup, ImGuiWindowFlags.Modal);
|
||||||
using (var child = ImRaii.Child("##import", new Vector2(-1, size.Y - ImGui.GetFrameHeight() * 2)))
|
using (var child = ImRaii.Child("##import", new Vector2(-1, size.Y - ImGui.GetFrameHeight() * 2)))
|
||||||
{
|
{
|
||||||
if (child)
|
if (child)
|
||||||
import.DrawProgressInfo(new Vector2(-1, ImGui.GetFrameHeight()));
|
import.DrawProgressInfo(new Vector2(-1, ImGui.GetFrameHeight()));
|
||||||
}
|
}
|
||||||
|
|
||||||
if ((import.State != ImporterState.Done || !ImGui.Button("Close", -Vector2.UnitX))
|
var terminate = import.State == ImporterState.Done
|
||||||
&& (import.State == ImporterState.Done || !import.DrawCancelButton(-Vector2.UnitX)))
|
? ImGui.Button("Close", -Vector2.UnitX)
|
||||||
return;
|
: import.DrawCancelButton(-Vector2.UnitX);
|
||||||
|
if (terminate)
|
||||||
_modImportManager.ClearImport();
|
_modImportManager.ClearImport();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue