From ec6ff1d7d50290a7898c9d81d26eae8e560a3dce Mon Sep 17 00:00:00 2001 From: WerWolv Date: Fri, 8 Aug 2025 22:36:58 +0200 Subject: [PATCH] impr: More consistent look for the bookmark view --- .../source/content/views/view_bookmarks.cpp | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/plugins/builtin/source/content/views/view_bookmarks.cpp b/plugins/builtin/source/content/views/view_bookmarks.cpp index 34c6284a6..047ccbeae 100644 --- a/plugins/builtin/source/content/views/view_bookmarks.cpp +++ b/plugins/builtin/source/content/views/view_bookmarks.cpp @@ -259,7 +259,7 @@ namespace hex::plugin::builtin { ImGui::SetCursorPosY(ImGui::GetCursorPosY() + height); } - ImGui::InvisibleButton("##DropTarget", ImVec2(ImGui::GetContentRegionAvail().x, height * 2.0F)); + ImGui::InvisibleButton("##DropTarget", ImVec2(std::max(1.0F, ImGui::GetContentRegionAvail().x), height * 2.0F)); const auto dropTarget = ImRect(ImGui::GetItemRectMin(), ImVec2(ImGui::GetItemRectMax().x, ImGui::GetItemRectMin().y + 2_scaled)); if (it == m_bookmarks->begin()) { @@ -298,7 +298,12 @@ namespace hex::plugin::builtin { ImGuiExt::InputTextIcon("##filter", ICON_VS_FILTER, m_currFilter); ImGui::PopItemWidth(); - if (ImGui::BeginChild("##bookmarks")) { + ImGui::NewLine(); + + ImGui::PushStyleVarY(ImGuiStyleVar_WindowPadding, -5_scaled); + bool open = ImGuiExt::BeginSubWindow("", nullptr, ImGui::GetContentRegionAvail()); + ImGui::PopStyleVar(); + if (open) { if (m_bookmarks->empty()) { ImGuiExt::TextOverlay("hex.builtin.view.bookmarks.no_bookmarks"_lang, ImGui::GetWindowPos() + ImGui::GetWindowSize() / 2, ImGui::GetWindowWidth() * 0.7); } @@ -306,7 +311,6 @@ namespace hex::plugin::builtin { auto bookmarkToRemove = m_bookmarks->end(); const auto defaultItemSpacing = ImGui::GetStyle().ItemSpacing.y; - ImGui::Dummy({ ImGui::GetContentRegionAvail().x, 0 }); drawDropTarget(m_bookmarks->begin(), defaultItemSpacing); // Draw all bookmarks @@ -349,7 +353,7 @@ namespace hex::plugin::builtin { ImGui::SetDragDropPayload("BOOKMARK_PAYLOAD", &bookmarkId, sizeof(bookmarkId)); // Draw drag and drop tooltip - ImGui::ColorButton("##color", headerColor.Value, ImGuiColorEditFlags_NoInputs | ImGuiColorEditFlags_NoTooltip | ImGuiColorEditFlags_NoLabel | ImGuiColorEditFlags_NoAlpha); + ImGui::ColorButton("##color", headerColor.Value, ImGuiColorEditFlags_NoInputs | ImGuiColorEditFlags_NoTooltip | ImGuiColorEditFlags_NoLabel | ImGuiColorEditFlags_AlphaOpaque); ImGui::SameLine(); ImGuiExt::TextFormatted("{}", name); @@ -535,7 +539,7 @@ namespace hex::plugin::builtin { EventHighlightingChanged::post(); } } - ImGui::EndChild(); + ImGuiExt::EndSubWindow(); } bool ViewBookmarks::importBookmarks(prv::Provider *provider, const nlohmann::json &json) {