Skip to content

Commit 22ad62c

Browse files
cfillionocornut
authored andcommitted
Backends: OSX: added ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress mouse cursor support. (#8739)
Yet another undocumented standard cursor. Amend 8a35386.
1 parent f18aea5 commit 22ad62c

File tree

3 files changed

+6
-4
lines changed

3 files changed

+6
-4
lines changed

backends/imgui_impl_osx.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@
1010
// [X] Platform: Gamepad support.
1111
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
1212
// [X] Platform: IME support.
13-
// Missing features or Issues:
14-
// [ ] Missing ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress cursors.
1513

1614
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
1715
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.

backends/imgui_impl_osx.mm

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,6 @@
1010
// [X] Platform: Gamepad support.
1111
// [X] Platform: Mouse cursor shape and visibility (ImGuiBackendFlags_HasMouseCursors). Disable with 'io.ConfigFlags |= ImGuiConfigFlags_NoMouseCursorChange'.
1212
// [X] Platform: IME support.
13-
// Missing features or Issues:
14-
// [ ] Missing ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress cursors.
1513

1614
// You can use unmodified imgui_impl_* files in your project. See examples/ folder for examples of using this.
1715
// Prefer including the entire imgui/ repository into your project (either as a copy or as a submodule), and only build the backends you need.
@@ -31,6 +29,7 @@
3129

3230
// CHANGELOG
3331
// (minor and older changes stripped away, please see git history for details)
32+
// 2025-06-27: Added ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress mouse cursor support.
3433
// 2025-06-12: ImGui_ImplOSX_HandleEvent() only process event for window containing our view. (#8644)
3534
// 2025-03-21: Fill gamepad inputs and set ImGuiBackendFlags_HasGamepad regardless of ImGuiConfigFlags_NavEnableGamepad being set.
3635
// 2025-01-20: Removed notification observer when shutting down. (#8331)
@@ -110,6 +109,7 @@ + (id)_windowResizeNorthWestSouthEastCursor;
110109
+ (id)_windowResizeNorthEastSouthWestCursor;
111110
+ (id)_windowResizeNorthSouthCursor;
112111
+ (id)_windowResizeEastWestCursor;
112+
+ (id)busyButClickableCursor;
113113
@end
114114

115115
/**
@@ -431,6 +431,7 @@ bool ImGui_ImplOSX_Init(NSView* view)
431431
bd->MouseCursors[ImGuiMouseCursor_ResizeNESW] = [NSCursor respondsToSelector:@selector(_windowResizeNorthEastSouthWestCursor)] ? [NSCursor _windowResizeNorthEastSouthWestCursor] : [NSCursor closedHandCursor];
432432
bd->MouseCursors[ImGuiMouseCursor_ResizeNWSE] = [NSCursor respondsToSelector:@selector(_windowResizeNorthWestSouthEastCursor)] ? [NSCursor _windowResizeNorthWestSouthEastCursor] : [NSCursor closedHandCursor];
433433
bd->MouseCursors[ImGuiMouseCursor_Hand] = [NSCursor pointingHandCursor];
434+
bd->MouseCursors[ImGuiMouseCursor_Wait] = bd->MouseCursors[ImGuiMouseCursor_Progress] = [NSCursor respondsToSelector:@selector(busyButClickableCursor)] ? [NSCursor busyButClickableCursor] : [NSCursor arrowCursor];
434435
bd->MouseCursors[ImGuiMouseCursor_NotAllowed] = [NSCursor operationNotAllowedCursor];
435436

436437
// Note that imgui.cpp also include default OSX clipboard handlers which can be enabled

docs/CHANGELOG.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,9 @@ Breaking changes:
4343

4444
Other changes:
4545

46+
- Backends: OSX: added ImGuiMouseCursor_Wait and ImGuiMouseCursor_Progress
47+
mouse cursor support. (#8739) [@cfillion]
48+
4649

4750
-----------------------------------------------------------------------
4851
VERSION 1.92.0 (Released 2025-06-25)

0 commit comments

Comments
 (0)