djeraseit / growl

Automatically exported from code.google.com/p/growl
BSD 3-Clause "New" or "Revised" License
0 stars 0 forks source link

Detect full-screen and act appropriately #48

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
Growl should provide an option to change its behavior when another app is 
full-screen.

Possible actions (subject to availability):

1. Show notifications as normal (current behavior).
2. Don't show notifications (functionally equivalent for long full-screen 
sessions that block Growl 
notifications).
3. Attempt to show notifications on top of the full-screen window. Will need to 
find the frontmost 
app and find the highest window level of all its visible windows, then set the 
notification windows' 
window level to that level plus 1.
4. Hold the notifications in a queue until the full-screen session ends.

Original issue reported on code.google.com by chrisf.g...@gmail.com on 18 Oct 2009 at 4:44

GoogleCodeExporter commented 8 years ago
Comment from Peter:

It appears to be possible to detect at least some full-screen sessions: 
http://developer.apple.com/documentation/Carbon/Reference/Carbon_Event_Manager_R
ef/Reference/refere
nce.html#//apple_ref/doc/c_ref/kEventAppSystemUIModeChanged

As for detecting display captures, that's harder. We could poll every minute or 
so. Another would be to create 
a CGDisplayReconfigurationCallBack; an app that captures a display is likely to 
also change the display's mode 
(particularly its resolution)

Original comment by chrisf.g...@gmail.com on 18 Oct 2009 at 4:45

GoogleCodeExporter commented 8 years ago
CGDisplay apis are deprecated apis starting with 10.6, CGDisplayIsCaptured() 
exists in any event, so really the 
hard case is when the app creates full screen windows and puts them onto a 
particular window level.... are we 
accepting SPI usage for this ticket?

Original comment by rarich...@gmail.com on 23 Nov 2009 at 11:49

GoogleCodeExporter commented 8 years ago
er, i should say the CGDisplay apis for capturing the display are deprecated 
starting in 10.6, they'll still work but 
the recommended by apple solution is to create a full screen window on a 
particular window level and scale your 
content as necessary in the OGL context.

Original comment by rarich...@gmail.com on 23 Nov 2009 at 11:54

GoogleCodeExporter commented 8 years ago
We for sure shouldn't use something that's being deprecated. Can we detect what 
Apple recommends (i.e. the 
full screen window)?

Original comment by chrisf.g...@gmail.com on 6 Dec 2009 at 6:18

GoogleCodeExporter commented 8 years ago
This has been an often requested feature. If you were going to do this, how 
would you 
do this Rudy?

Original comment by chrisf.g...@gmail.com on 2 May 2010 at 11:21

GoogleCodeExporter commented 8 years ago
Moving to 2.0.

Original comment by chrisf.g...@gmail.com on 29 Jul 2010 at 4:41

GoogleCodeExporter commented 8 years ago
This seems kind of in line with what you want to do.

Original comment by ch...@growl.info on 29 Sep 2011 at 12:19

GoogleCodeExporter commented 8 years ago

Original comment by ch...@growl.info on 11 Nov 2011 at 1:25