Re: zoomed attribute of tabbed fullscreen windows
Re: zoomed attribute of tabbed fullscreen windows
- Subject: Re: zoomed attribute of tabbed fullscreen windows
- From: 2551phil <email@hidden>
- Date: Sun, 15 Oct 2017 15:35:43 +0700
Back to the drawing board. Looks like BBEdit doesn’t play by the 0 bounds rule
for either position.
> On 15 Oct 2017, at 15:23, 2551phil <email@hidden> wrote:
>
>
>> On 15 Oct 2017, at 15:05, 2551phil <email@hidden
>> <mailto:email@hidden>> wrote:
>>
>> It correctly returned the full screen windows for all my running apps.
>
>
> With the exception of Script Debugger and Script Editor, I see now.
>
> Interestingly, both these have item 1 of their bounds set to 0 when in Full
> Screen rather than item 2. I’ll need to do a bit more testing, but perhaps
> testing for either item 1 or item 2 being 0 might solve that, so long as it’s
> not possible for either to be 0 when not in full screen.
>
>
>
> Best
>
>
> Phil
> @sqwarq
>
>
>
>
>> On 15 Oct 2017, at 15:05, 2551phil <email@hidden
>> <mailto:email@hidden>> wrote:
>>
>>
>>> On 14 Oct 2017, at 18:41, Jean-Christophe Helary
>>> <email@hidden
>>> <mailto:email@hidden>> wrote:
>>>
>>> I think I found a simple solution
>>
>>
>> Cool, but I’d like to explore this is a bit further as it’s a specific
>> example of a more general problem that could do with a solution: how to
>> determine which apps/windows are in full screen across multiple displays?
>>
>> As a proof of concept, the following works here on a dual display setup with
>> multiple spaces. It correctly returned the full screen windows for all my
>> running apps. It also appears to cope with split screen situations, too.
>>
>> I’m sure Shane or others can improve upon my sloppy scripting style though.
>> :p
>>
>>
>>
>>
>>
>> use AppleScript version "2.4" -- Yosemite (10.10) or later
>> use scripting additions
>>
>> #######################
>> -->> VARIABLES
>> #######################
>> set fullScreenApps to {}
>> set msg to "None"
>>
>> #######################
>> -->> HANDLERS
>> #######################
>>
>> on hasFullScreen:theApp forWindow:aWin
>> set theReply to {false, 0, missing value}
>> tell application theApp
>> try
>> set yPos to item 2 of (get bounds of window aWin)
>> on error
>> set yPos to 1
>> end try
>> if yPos is 0 then
>> try
>> set winName to window aWin's name
>> on error
>> set winName to missing value
>> end try
>> set theReply to {true, aWin, winName}
>> end if
>> end tell
>> return theReply
>> end hasFullScreen:forWindow:
>>
>>
>> on getVisibleProcs()
>> set visibleProcs to {}
>> tell application "System Events"
>> set procs to every application process
>> repeat with i from 1 to count of procs
>> set this_proc to item i of procs
>> try
>> if this_proc's visible is true then
>> set end of visibleProcs to this_proc's
>> name
>> end if
>> end try
>> end repeat
>> end tell
>> return visibleProcs
>> end getVisibleProcs
>>
>> #######################
>> -->> COMMANDS
>> #######################
>>
>> set currentApps to getVisibleProcs()
>> repeat with a from 1 to count of currentApps
>> set this_app to currentApps's item a
>> try
>> tell application this_app
>> set wc to count of its windows
>> repeat with w from 1 to wc
>> set hasFs to (my hasFullScreen:this_app
>> forWindow:w)
>> if hasFs's item 1 is true then
>> set end of fullScreenApps to {this_app,
>> hasFs's item 2, hasFs's item 3}
>> end if
>> end repeat
>> end tell
>> end try
>> end repeat
>>
>> if (count of fullScreenApps) is greater than 0 then
>> set msg to ""
>> repeat with i from 1 to count of fullScreenApps
>> set this_item to item 1 of item i of fullScreenApps as text
>> set this_item to this_item & "'s Window " & item 2 of item i of
>> fullScreenApps as text
>> set this_item to this_item & ": " & item 3 of item i of
>> fullScreenApps as text
>> set msg to msg & this_item & return
>> end repeat
>> end if
>> display dialog msg with title "Windows that are in full screen" buttons "OK"
>> default button "OK"
>>
>>
>>
>>
>>
>>
>>
>> Best
>>
>>
>> Phil
>> @sqwarq
>
_______________________________________________
Do not post admin requests to the list. They will be ignored.
AppleScript-Users mailing list (email@hidden)
Help/Unsubscribe/Update your Subscription:
Archives: http://lists.apple.com/archives/applescript-users
This email sent to email@hidden