feat(new_editor): wire project, inspector, and viewport runtime
This commit is contained in:
@@ -14,6 +14,7 @@ namespace {
|
||||
|
||||
using XCEngine::UI::Editor::Host::InputModifierTracker;
|
||||
using XCEngine::UI::UIInputEventType;
|
||||
using XCEngine::UI::UIPointerButton;
|
||||
|
||||
TEST(InputModifierTrackerTest, ControlStatePersistsAcrossChordKeyDownAndClearsOnKeyUp) {
|
||||
InputModifierTracker tracker = {};
|
||||
@@ -52,11 +53,31 @@ TEST(InputModifierTrackerTest, PointerModifiersMergeMouseFlagsWithTrackedKeyboar
|
||||
VK_MENU,
|
||||
0x00380001);
|
||||
|
||||
const auto modifiers = tracker.BuildPointerModifiers(MK_SHIFT);
|
||||
const auto modifiers = tracker.BuildPointerModifiers(MK_SHIFT | MK_RBUTTON);
|
||||
EXPECT_TRUE(modifiers.shift);
|
||||
EXPECT_TRUE(modifiers.alt);
|
||||
EXPECT_FALSE(modifiers.control);
|
||||
EXPECT_FALSE(modifiers.super);
|
||||
EXPECT_FALSE(modifiers.leftMouse);
|
||||
EXPECT_TRUE(modifiers.rightMouse);
|
||||
}
|
||||
|
||||
TEST(InputModifierTrackerTest, PointerMessagesUpdateTrackedMouseButtonState) {
|
||||
InputModifierTracker tracker = {};
|
||||
|
||||
const auto leftDown = tracker.ApplyPointerMessage(
|
||||
UIInputEventType::PointerButtonDown,
|
||||
UIPointerButton::Left,
|
||||
0u);
|
||||
EXPECT_TRUE(leftDown.leftMouse);
|
||||
EXPECT_TRUE(tracker.GetCurrentModifiers().leftMouse);
|
||||
|
||||
const auto leftUp = tracker.ApplyPointerMessage(
|
||||
UIInputEventType::PointerButtonUp,
|
||||
UIPointerButton::Left,
|
||||
0u);
|
||||
EXPECT_FALSE(leftUp.leftMouse);
|
||||
EXPECT_FALSE(tracker.GetCurrentModifiers().leftMouse);
|
||||
}
|
||||
|
||||
TEST(InputModifierTrackerTest, RightControlIsTrackedIndependentlyFromLeftControl) {
|
||||
|
||||
Reference in New Issue
Block a user