diff --git a/Base/res/cursors/move.png b/Base/res/cursors/move.png new file mode 100644 index 0000000000..68c8f7c694 Binary files /dev/null and b/Base/res/cursors/move.png differ diff --git a/Servers/WindowServer/WSWindowManager.cpp b/Servers/WindowServer/WSWindowManager.cpp index 3db3b59d68..f46b6732ad 100644 --- a/Servers/WindowServer/WSWindowManager.cpp +++ b/Servers/WindowServer/WSWindowManager.cpp @@ -167,6 +167,7 @@ WSWindowManager::WSWindowManager() m_resize_diagonally_bltr_cursor = WSCursor::create(*GraphicsBitmap::load_from_file("/res/cursors/resize-diagonal-bltr.png")); m_i_beam_cursor = WSCursor::create(*GraphicsBitmap::load_from_file("/res/cursors/i-beam.png")); m_disallowed_cursor = WSCursor::create(*GraphicsBitmap::load_from_file("/res/cursors/disallowed.png")); + m_move_cursor = WSCursor::create(*GraphicsBitmap::load_from_file("/res/cursors/move.png")); m_wallpaper_path = "/res/wallpapers/retro.rgb"; m_wallpaper = GraphicsBitmap::load_from_file(GraphicsBitmap::Format::RGBA32, m_wallpaper_path, { 1024, 768 }); @@ -1238,6 +1239,9 @@ void WSWindowManager::notify_client_changed_app_menubar(WSClientConnection& clie const WSCursor& WSWindowManager::active_cursor() const { + if (m_drag_window) + return *m_move_cursor; + if (m_resize_window) { switch (m_resize_direction) { case ResizeDirection::Up: diff --git a/Servers/WindowServer/WSWindowManager.h b/Servers/WindowServer/WSWindowManager.h index e062d658cb..84bcb990e6 100644 --- a/Servers/WindowServer/WSWindowManager.h +++ b/Servers/WindowServer/WSWindowManager.h @@ -164,6 +164,7 @@ private: RetainPtr m_resize_diagonally_bltr_cursor; RetainPtr m_i_beam_cursor; RetainPtr m_disallowed_cursor; + RetainPtr m_move_cursor; OwnPtr m_back_painter; OwnPtr m_front_painter;