grahampugh / erase-install

A script that automates downloading macOS installers, and optionally erasing or upgrading macOS in a single process. Watch the video!
https://grahamrpugh.com/2023/05/14/macaduk-presentation-eraseinstall.html
Apache License 2.0
834 stars 131 forks source link

[FR] Customizable Button Behavior (Enabled/Disabled) and Fullscreen Workflow Control #521

Open adonboli opened 1 month ago

adonboli commented 1 month ago

I would like to request the ability to configure the behavior of the main “OK” button (button1) in the workflow, specifically to enable or disable when using Utility window mode instead of Fullscreen.

The primary goal of this feature is to allow users to continue working during the download or prep phases, while preventing them from dismissing the Utility Window and inadvertently forgetting that an update is occurring in the background.

This feature would function similarly to the reboot delay window, where the “OK” button is disabled ( "--button1disabled").

Additionally, it would be beneficial to enable downloads to occur in Utility Window mode (especially for users with slower internet connections who wish to keep working), and then automatically switch to full-screen mode during the “prepping the installer” stage, effectively preventing further work. To prevent a sudden change without warning, it might be helpful to provide users with a warning before transitioning to full-screen mode, with a customizable countdown (e.g., 60 seconds, adjustable by an admin).

Currently, we can either set the full workflow to FS or full workflow to Utility Window mode. Not specifying "--fs" or "--no-fs" seems to default to "no full screen" for the entire workflow.

While I understand that a reboot delay can be used to allow users to save their work, I believe that offering more granular control over button states for each stage in utility mode, as well as the ability to designate which stages should be full-screen or utility mode, would greatly enhance the overall customization experience.