Platforms to show: All Mac Windows Linux Cross-Platform
SetSystemUIModeMBS(mode as Integer, Options as Integer)
Type | Topic | Plugin | Version | macOS | Windows | Linux | iOS | Targets |
global method | System | MBS MacOSX Plugin | 2.8 | ✅ Yes | ❌ No | ❌ No | ❌ No | Desktop only |
Details from Apple's documentation:
Sets the presentation mode for system-provided user interface elements.
The presentation mode of an application determines which system-provided user interface elements are visible on thes screen. When the frontmost application changes its presentation mode, a kEventAppSystemUIModeChanged Carbon event is sent to all applications that have registered for the event. This event is also sent when an application is activated; it contains the newly active application's presentation mode.
Note that the system UI mode is a per-process state. Switching from a process that is suppressing system UI to another processthat is not will cause system UI elements to become visible automatically. Switching back to the first process will suppress system UI elements again.
The modes available:
kUIModeNormal | 0 | In this mode, all standard system UI elements are visible. |
kUIModeContentSuppressed | 1 | In this mode, system UI elements which cover the "content area" of the screen (the area other than the menubar) are hidden. However, these elements may automatically show themselves in response to mouse movements or other user activity; specifically, the Dock will still show itself automatically when the mouse moves into the Dock's auto-show region. |
kUIModeContentHidden | 2 | In this mode, system UI elements which cover the "content area" of the screen (the area other than the menubar) are hidden. Unlike kUIModeContentSuppressed, most UI elements will not automatically show themselves in this mode. |
kUIModeAllHidden | 3 | In this mode, all system UI elements, including the menubar, are hidden. Most system UI elements will not automatically show themselves in this mode. The application may request that the menubar automatically show itself while in this mode by passing the kUIOptionAutoShowMenuBar flag to SetSystemUIMode. |
The options which you can combine:
kUIOptionAutoShowMenuBar | 1 | Requests that the menubar automatically show itself when the user moves the mouse into the screen area that would ordinarily be occupied by the menubar. Only valid with kUIModeAllHidden. |
kUIOptionAnimateMenuBar | 2 | Requests that the menubar animate on or offscreen, if the UIMode is also being changed such that the menubar will change visibility. Unlike other UI options, this option is not stored and only affects the behavior of this call to SetSystemUIMode. Valid for all modes. Available in Mac OS X 10.7 and later. |
kUIOptionDisableAppleMenu | 4 | Disables all items in the Apple menu. Valid for all modes. |
kUIOptionDisableProcessSwitch | 8 | The active application may not be changed while this process is active. Currently disables the Command-Tab and Command-Shift-Tab key sequences to switch the active process, and the global window rotation key sequence selected by the user in the Keyboard preference pane. SetFrontProcess may still be used to explicitly switch the active process. Only valid with modes other than kUIModeNormal. |
kUIOptionDisableForceQuit | 16 | The Force Quit window may not be displayed while this process is active. Currently disables the Command-Option-Escape key sequence to open the Force Quit window and the Force Quit menu item in the Apple menu. Only valid with modes other than kUIModeNormal. |
kUIOptionDisableSessionTerminate | 32 | The current login session may not be terminated while this process is active. Currently disables the Power key and the Restart, Shut Down, and Log Out menu items in the Apple menu. Only valid with modes other than kUIModeNormal. |
Please use presentationOptions in NSApplicationMBS for Cocoa applications.
Some examples using this global method:
Some FAQ entries about this method:
The items on this page are in the following plugins: MBS MacOSX Plugin.