diff --git a/plugins/builtin/source/content/views/view_pattern_editor.cpp b/plugins/builtin/source/content/views/view_pattern_editor.cpp index ea9719f04..c9cf0cdf3 100644 --- a/plugins/builtin/source/content/views/view_pattern_editor.cpp +++ b/plugins/builtin/source/content/views/view_pattern_editor.cpp @@ -1837,7 +1837,7 @@ namespace hex::plugin::builtin { } }); - ContentRegistry::Settings::onChange("hex.builtin.setting.interface", "hex.builtin.setting.interface.parent_highlighting", [this](const ContentRegistry::Settings::SettingsValue &value) { + ContentRegistry::Settings::onChange("hex.builtin.setting.hex_editor", "hex.builtin.setting.hex_editor.pattern_parent_highlighting", [this](const ContentRegistry::Settings::SettingsValue &value) { m_parentHighlightingEnabled = bool(value.get(false)); }); diff --git a/plugins/ui/source/ui/hex_editor.cpp b/plugins/ui/source/ui/hex_editor.cpp index 25c8d5ddc..23a408f4f 100644 --- a/plugins/ui/source/ui/hex_editor.cpp +++ b/plugins/ui/source/ui/hex_editor.cpp @@ -580,7 +580,7 @@ namespace hex::ui { this->drawSelectionFrame(x, y, selection, byteAddress, bytesPerCell, cellStartPos, cellSize, backgroundColor.value()); } - const bool cellHovered = ImGui::IsMouseHoveringRect(cellStartPos, cellStartPos + cellSize, false); + const bool cellHovered = ImGui::IsMouseHoveringRect(cellStartPos, cellStartPos + cellSize, false) && ImGui::IsWindowHovered(); this->handleSelection(byteAddress, bytesPerCell, &bytes[x * bytesPerCell], cellHovered); @@ -629,7 +629,7 @@ namespace hex::ui { const auto cellStartPos = getCellPosition(); const auto cellSize = CharacterSize + scaled(ImVec2(m_characterCellPadding, 0)); - const bool cellHovered = ImGui::IsMouseHoveringRect(cellStartPos, cellStartPos + cellSize, true); + const bool cellHovered = ImGui::IsMouseHoveringRect(cellStartPos, cellStartPos + cellSize, true) && ImGui::IsWindowHovered(); if (x < validBytes) { this->handleSelection(byteAddress, bytesPerCell, &bytes[x], cellHovered); @@ -725,7 +725,7 @@ namespace hex::ui { const auto cellStartPos = getCellPosition(); const auto cellSize = ImGui::CalcTextSize(data.displayValue.c_str()) * ImVec2(1, 0) + ImVec2(m_characterCellPadding * 1_scaled, CharacterSize.y); - const bool cellHovered = ImGui::IsMouseHoveringRect(cellStartPos, cellStartPos + cellSize, true); + const bool cellHovered = ImGui::IsMouseHoveringRect(cellStartPos, cellStartPos + cellSize, true) && ImGui::IsWindowHovered(); const auto x = address % m_bytesPerRow; if (x < validBytes && isCurrRegionValid(address)) {