WillKuo

WillKuo

How to capture the popup window information in the Mac desktop by Apple Script?

For my iOS e2e test, sometimes the test is blocked by the Mac pop-up window alert. The possible pop-up as follows:

In order to fetch the unexpected pop-up dialog window when executing e2e tests. I write a simple Apple script get_popup_windows.scpt as follows:

tell application "System Events"
    set allProcesses to processes whose background only is false

    -- Log the count of allProcesses
    log "Number of processes found: " & (count of allProcesses)

    set dialogInfos to {}

    repeat with eachProcess in allProcesses
        try
            tell eachProcess
                log "Process Name: " & (name of eachProcess as text)
                set allWindows to (windows whose subrole is "AXStandardWindow" or subrole is "AXDialog")
                log "Number of allWindows found: " & (count of allWindows)
                repeat with eachWindow in allWindows
                    set uiElements to UI elements of eachWindow
                    log "eachWindow: " & (name of eachWindow as text)
                    set the end of dialogInfos to {title:(name of eachWindow as text), processName:(name of eachProcess as text)}
                end repeat
            end tell
        end try
    end repeat
end tell

return dialogInfos

However, when I execute the script: osascript get_popup_windows.scpt The result as follows:

Number of processes found: 10
Process Name: Terminal
Number of allWindows found: 1
eachWindow: scripts — osascript get_popup_windows.scpt — 143×41
Process Name: Google Chrome
Number of allWindows found: 1
eachWindow: Gemini - Google Chrome - Will
Process Name: sublime_text
Number of allWindows found: 0
Process Name: Notes
Number of allWindows found: 0
Process Name: Music
Number of allWindows found: 0
Process Name: Finder
Number of allWindows found: 0
Process Name: app_mode_loader
Number of allWindows found: 0
Process Name: Simulator
Number of allWindows found: 0
Process Name: app_mode_loader
Number of allWindows found: 0
Process Name: Script Editor
Number of allWindows found: 0
title:scripts — osascript get_popup_windows.scpt — 143×41, processName:Terminal, title:Gemini - Google Chrome - Will, processName:Google Chrome

=> I cannot fetch the target pop-up window in the Mac desktop. Please guide me if you have any suggestions, thanks.

Where Next?

Popular Macos topics Top

AstonJ
When I purchased this Mac it was fast. However some months on and it is noticeably slower now, and where I notice it most is on starting ...
New
siddhant3030
I have a new MacBook Pro which I’m connecting to an external monitor. I know why it is heating but I want to know if anyone having the sa...
New
DevotionGeo
Since we’re talking about Mac, which of the filesystems should I use on an external hard drive (non-SSD), which I’ll be using with my Mac...
New
AstonJ
Just wasted hours trying to figure out why my Apple Magic keyboard 2 started lagging after the latest macOS upgrade - tried SMC and PRAM ...
New
abhimohata
I am intending to show an alert message in macOS through a C++ based application. I am using CFUserNotificationDisplayAlert for the same....
New
dav
I’m searching for a tool that can (anonymously) collect crash reports from users of my macOS app (not iOS). Previously I used Fabric whic...
New
devovipul
I have JAR application ready. i have apple account also. Please give me steps to signed app upload i try But getting error as below : A...
New
leamas
Dear forum, New on macos. Need to create a .pkg file on the command line. The tooling seems to be pkgbuild(1) and productbuild(1). My pr...
New
BadPistol97
I am trying to draw NSPanels on texts of other apps using AXObserverAddNotification with the attribute of kAXValueChangedNotification on ...
New
WillKuo
For my iOS e2e test, sometimes the test is blocked by the Mac pop-up window alert. The possible pop-up as follows: Java Access Pop-up ...
New

Other popular topics Top

brentjanderson
Bought the Moonlander mechanical keyboard. Cherry Brown MX switches. Arms and wrists have been hurting enough that it’s time I did someth...
New
Rainer
My first contact with Erlang was about 2 years ago when I used RabbitMQ, which is written in Erlang, for my job. This made me curious and...
New
AstonJ
I’ve been hearing quite a lot of comments relating to the sound of a keyboard, with one of the most desirable of these called ‘thock’, he...
New
AstonJ
Do the test and post your score :nerd_face: :keyboard: If possible, please add info such as the keyboard you’re using, the layout (Qw...
New
First poster: joeb
The File System Access API with Origin Private File System. WebKit supports new API that makes it possible for web apps to create, open,...
New
PragmaticBookshelf
Author Spotlight Rebecca Skinner @RebeccaSkinner Welcome to our latest author spotlight, where we sit down with Rebecca Skinner, auth...
New
New
PragmaticBookshelf
Author Spotlight: Sophie DeBenedetto @SophieDeBenedetto The days of the traditional request-response web application are long gone, b...
New
PragmaticBookshelf
Develop, deploy, and debug BEAM applications using BEAMOps: a new paradigm that focuses on scalability, fault tolerance, and owning each ...
New
AstonJ
If you’re getting errors like this: psql: error: connection to server on socket “/tmp/.s.PGSQL.5432” failed: No such file or directory ...
New