diff --git a/shell/platform/windows/flutter_window.cc b/shell/platform/windows/flutter_window.cc index 2558d4fc5864a..b43bb3bbcc1e3 100644 --- a/shell/platform/windows/flutter_window.cc +++ b/shell/platform/windows/flutter_window.cc @@ -177,7 +177,7 @@ PhysicalWindowBounds FlutterWindow::GetPhysicalWindowBounds() { } void FlutterWindow::UpdateFlutterCursor(const std::string& cursor_name) { - current_cursor_ = GetCursorByName(cursor_name); + SetFlutterCursor(GetCursorByName(cursor_name)); } void FlutterWindow::SetFlutterCursor(HCURSOR cursor) { diff --git a/shell/platform/windows/flutter_window_unittests.cc b/shell/platform/windows/flutter_window_unittests.cc index c920f5a97ef60..7dd69e42829e8 100644 --- a/shell/platform/windows/flutter_window_unittests.cc +++ b/shell/platform/windows/flutter_window_unittests.cc @@ -436,5 +436,12 @@ TEST(FlutterWindowTest, PosthumousWindowMessage) { EXPECT_GE(msg_count, 1); } +TEST(FlutterWindowTest, UpdateCursor) { + FlutterWindow win32window(100, 100); + win32window.UpdateFlutterCursor("text"); + HCURSOR cursor = ::GetCursor(); + EXPECT_EQ(cursor, ::LoadCursor(nullptr, IDC_IBEAM)); +} + } // namespace testing } // namespace flutter