diff --git a/Base/etc/WindowServer/WindowServer.ini b/Base/etc/WindowServer/WindowServer.ini index 877e2e9e1d..74e22cb6e1 100644 --- a/Base/etc/WindowServer/WindowServer.ini +++ b/Base/etc/WindowServer/WindowServer.ini @@ -17,6 +17,7 @@ IBeam=/res/cursors/i-beam.png Disallowed=/res/cursors/disallowed.png Move=/res/cursors/move.png Hand=/res/cursors/hand.png +Help=/res/cursors/help.png Drag=/res/cursors/drag.png [Input] diff --git a/Base/res/cursors/help.png b/Base/res/cursors/help.png new file mode 100755 index 0000000000..c14c29d453 Binary files /dev/null and b/Base/res/cursors/help.png differ diff --git a/Libraries/LibGUI/Window.h b/Libraries/LibGUI/Window.h index c173b1e18b..9a7b4ada74 100644 --- a/Libraries/LibGUI/Window.h +++ b/Libraries/LibGUI/Window.h @@ -49,6 +49,7 @@ enum class StandardCursor { ResizeColumn, ResizeRow, Hand, + Help, Drag, Move, }; diff --git a/Services/WindowServer/Cursor.cpp b/Services/WindowServer/Cursor.cpp index da649f94af..6dd0e48c25 100644 --- a/Services/WindowServer/Cursor.cpp +++ b/Services/WindowServer/Cursor.cpp @@ -72,6 +72,8 @@ RefPtr Cursor::create(StandardCursor standard_cursor) return WindowManager::the().resize_row_cursor(); case StandardCursor::Hand: return WindowManager::the().hand_cursor(); + case StandardCursor::Help: + return WindowManager::the().help_cursor(); case StandardCursor::Drag: return WindowManager::the().drag_cursor(); case StandardCursor::Move: diff --git a/Services/WindowServer/Cursor.h b/Services/WindowServer/Cursor.h index 0d1e35418f..45e57303e4 100644 --- a/Services/WindowServer/Cursor.h +++ b/Services/WindowServer/Cursor.h @@ -41,6 +41,7 @@ enum class StandardCursor { ResizeColumn, ResizeRow, Hand, + Help, Drag, Move, }; diff --git a/Services/WindowServer/WindowManager.cpp b/Services/WindowServer/WindowManager.cpp index ac2f3740f0..6a0df85054 100644 --- a/Services/WindowServer/WindowManager.cpp +++ b/Services/WindowServer/WindowManager.cpp @@ -113,6 +113,7 @@ void WindowManager::reload_config(bool set_screen) m_arrow_cursor = get_cursor("Arrow", { 2, 2 }); m_hand_cursor = get_cursor("Hand", { 8, 4 }); + m_help_cursor = get_cursor("Help", { 1, 1 }); m_resize_horizontally_cursor = get_cursor("ResizeH"); m_resize_vertically_cursor = get_cursor("ResizeV"); m_resize_diagonally_tlbr_cursor = get_cursor("ResizeDTLBR"); diff --git a/Services/WindowServer/WindowManager.h b/Services/WindowServer/WindowManager.h index f57d21a3e5..6b49230eaa 100644 --- a/Services/WindowServer/WindowManager.h +++ b/Services/WindowServer/WindowManager.h @@ -122,6 +122,7 @@ public: const Cursor& active_cursor() const; const Cursor& arrow_cursor() const { return *m_arrow_cursor; } const Cursor& hand_cursor() const { return *m_hand_cursor; } + const Cursor& help_cursor() const { return *m_help_cursor; } const Cursor& resize_horizontally_cursor() const { return *m_resize_horizontally_cursor; } const Cursor& resize_vertically_cursor() const { return *m_resize_vertically_cursor; } const Cursor& resize_diagonally_tlbr_cursor() const { return *m_resize_diagonally_tlbr_cursor; } @@ -204,6 +205,7 @@ private: RefPtr m_arrow_cursor; RefPtr m_hand_cursor; + RefPtr m_help_cursor; RefPtr m_resize_horizontally_cursor; RefPtr m_resize_vertically_cursor; RefPtr m_resize_diagonally_tlbr_cursor;