Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: MacOS 15 Privacy Popups #170

Closed
1 task done
Xytronix opened this issue Jun 20, 2024 · 36 comments
Closed
1 task done

[Bug]: MacOS 15 Privacy Popups #170

Xytronix opened this issue Jun 20, 2024 · 36 comments
Labels
Bug Something isn't working Screen Capture Related to macOS screen capture APIs

Comments

@Xytronix
Copy link

Check existing issues

  • I have checked existing issues and believe that my issue is not a duplicate

Description

So since macos 15 I get this popup each time Ice records something on my screen. If I click Continue, it popups again.
This is very annoying, anything that could be done to keep it to a minimum?

Steps to Reproduce

  1. Install MacOS 15
  2. Run Ice

Ice Version

0.10.0-beta.4

macOS Version

15.0

Screenshots

image

@Xytronix Xytronix added the Bug Something isn't working label Jun 20, 2024
@lume96
Copy link

lume96 commented Jun 20, 2024

Hi,
experiencing the same issue here (apart message being in French, not German ;-) ) on the same setup (MacOS 15 beta 1 and Ice 0.10 Beta 4)

However 2 points :

  1. on my laptop this mainly only pops up once at the beginning of a session. Once I choose "continue to allow" I'm okay for the rest of the session
  2. to answer to Jordans comment in the other thread : I do have other apps that are allowed to record screen and audio, such as CleanShotX and BTT that have never, up to now, seen this pop up regarding those other apps.

@jordanbaird
Copy link
Owner

Does anyone have an English version of the alert? Preferably not a translation, but the actual English alert that shows up, so I can Google it :)

@Xytronix
Copy link
Author

Xytronix commented Jun 21, 2024

Here is it:

image

It stopped reappearing after clicking continue since a reboot. It appears every time Ice is launched after a reboot.

@Xytronix
Copy link
Author

Did occur again after being in standby for a while even when Ice was closed

@jordanbaird
Copy link
Owner

I think this is most likely a bug with the macOS 15 beta. In fact, it seems like I remember reading something similar happening in some of the early macOS 14 betas that was resolved before its official release.

@WardsParadox
Copy link

This is not due to a bug in macOS 15, this is due to the following per Apple's documentation and enterprise support recommendations:

Applications utilizing deprecated APIs for content capture such as CGDisplayStream & CGWindowListCreateImage can trigger system alerts indicating they might be able to collect detailed information about the user. Developers need to migrate to ScreenCaptureKit and SCContentSharingPicker. (120910350)

https://developer.apple.com/documentation/macos-release-notes/macos-15-release-notes#Deprecations

This was announced in 2022 with Sonoma beta, and the experience was so poor Apple removed the notifications in favor of the next OS (now 15, Sequoia)

@WardsParadox
Copy link

Looks like it's this line:

CGWindowListCreateImage(screenBounds, .optionIncludingWindow, windowID, option)

@Xytronix Xytronix reopened this Jun 28, 2024
@jordanbaird
Copy link
Owner

@WardsParadox We don't have the option to use ScreenCaptureKit. It can't capture of offscreen items. Until Apple adds support for that, this is quite literally our only option.

@WardsParadox
Copy link

I'll let our support know this and see what they suggest. ☝🏻This☝🏻may be enough for us to push this further back. It also shouldn't be prompting more than once like it is now which is feedback we're already sending in.

Thanks for the further info.

@jordanbaird
Copy link
Owner

It's this line that lets us do the offscreen capture:

return CGImage(windowListFromArrayScreenBounds: screenBounds, windowArray: windowArray, imageOption: option)

Which is the Swift overlay for CGWindowListCreateImageFromArray, so the same family of functions. In the meantime, I can migrate the line you linked above to use SCScreenshotManager.

@jordanbaird
Copy link
Owner

@WardsParadox Any update on this?

@WardsParadox
Copy link

WardsParadox commented Jul 29, 2024

So far the response is "Developers need to move onto newer APIs" unfortunately. So we're starting the "and if those API's don't exist" talks.

@WardsParadox
Copy link

We've put additional pressure through our enterprise channel, so 🤞🏻 for some additional info soon.

@stonerl
Copy link
Contributor

stonerl commented Aug 2, 2024

Just to add my 2 cents. I know most of it has been said, but here is a summary.

This is from macOS 15 Beta 4 Release Notes:

ScreenCaptureKit

New Features

  • Windows recorded using the new SCRecordingOutputConfiguration API will now have a new "Stop Recording This Window" menu item in the purple window menu to stop the window's recording stream. (125112908)

Deprecations

  • Applications utilizing deprecated APIs for content capture such as CGDisplayStream & CGWindowListCreateImage can trigger system alerts indicating they might be able to collect detailed information about the user. Developers need to migrate to ScreenCaptureKit and SCContentSharingPicker. (120910350)

Also in Xcode I get deprecation messages for the following lines:

return CGImage(windowListFromArrayScreenBounds: screenBounds, windowArray: windowArray, imageOption: option)

'init(windowListFromArrayScreenBounds:windowArray:imageOption:)' was deprecated in macOS 14.0: Please use ScreenCaptureKit instead.

CGWindowListCreateImage(screenBounds, .optionIncludingWindow, windowID, option)

'CGWindowListCreateImage' was deprecated in macOS 14.0: Please use ScreenCaptureKit instead.

@jordanbaird
Copy link
Owner

@WardsParadox Would it help if I opened my own ticket with Apple? Maybe additional feedback would help them see that this is indeed a problem.

@jordanbaird jordanbaird changed the title Suggestion: MacOS 15 Privacy Popups [Bug]: MacOS 15 Privacy Popups Aug 4, 2024
@stonerl
Copy link
Contributor

stonerl commented Aug 6, 2024

The popup has changed with macOS 15 beta 5.

CleanShot 2024-08-06 at 13 20 54@2x

@WardsParadox
Copy link

@WardsParadox Would it help if I opened my own ticket with Apple? Maybe additional feedback would help them see that this is indeed a problem.

It looks like my previous comment never posted. Yes please! If you can link the ID of the case, I'll reference it on ours as an impacted app due to missing APIs

@jordanbaird
Copy link
Owner

@terafin The problem isn't getting the windows. The problem is capturing an image from them. It's been a while since I messed with it, but if I'm remembering correctly, it either throws an error, hangs, or returns a blank image.

@jordanbaird
Copy link
Owner

@stonerl Yikes. This is even worse than before. People are going to panic when they see that. I want to make it clear that Ice does NOT record private aspects of the screen and never will.

Here are the things it captures:

  1. The desktop wallpaper image, so it can display it over the top of the menu bar when using the various menu bar shape options. It doesn't capture desktop icons, or widgets. Just the wallpaper.
  2. Individual menu bar items, so it can display them in settings and the Ice Bar.

@terafin
Copy link

terafin commented Aug 8, 2024

@terafin The problem isn't getting the windows. The problem is capturing an image from them. It's been a while since I messed with it, but if I'm remembering correctly, it either throws an error, hangs, or returns a blank image.

Might be worth trying again, worked for me :)

@jordanbaird
Copy link
Owner

@terafin Even for offscreen menu bar items? Maybe they fixed it. Which version of macOS?

@terafin
Copy link

terafin commented Aug 8, 2024

@terafin Even for offscreen menu bar items? Maybe they fixed it. Which version of macOS?

Didn't try that, but 14.5, worth a shot?

@jordanbaird
Copy link
Owner

@terafin I guess it's worth another shot, but onscreen items have never been the problem. It's only ever been offscreen, so I doubt anything has changed. I'll still check though.

@terafin
Copy link

terafin commented Aug 8, 2024

@terafin I guess it's worth another shot, but onscreen items have never been the problem. It's only ever been offscreen, so I doubt anything has changed. I'll still check though.

@jordanbaird Awesome, thanks! I suspect if it doesn't work, that might be a more concise and clear bug report since I think that's the "intended" API :) Who knows, maybe it's a more specific bug that can be fixed! (Note: Offscreen worked for me, just never tried menu bars)

@stonerl
Copy link
Contributor

stonerl commented Aug 15, 2024

According to 9to5mac it now only asks once a month Link to article

@jordanbaird
Copy link
Owner

@stonerl That's better than it was at least, but I agree with their opinion that it's still over the top. In my opinion, it should be an opt-in feature, or at least let users opt out for individual apps. The wording of the alert is improving as well. I'm still going to submit feedback to Apple about the missing functionality in ScreenCaptureKit, since I really do want to migrate to the newer APIs. But this at least makes it a little less pressing.

@luckman212
Copy link

Looks like macOS 15 is truly going to be Apple's Vista...

@jordanbaird jordanbaird added the Screen Capture Related to macOS screen capture APIs label Aug 16, 2024
@kocane
Copy link

kocane commented Sep 4, 2024

Why do they have to treat us like we're [REDACTED]? Let us "allow always", god damn it.

@jordanbaird
Copy link
Owner

@kocane While I do agree with your sentiment, please follow our code of conduct by keeping that kind of language outside of this repository. Thanks.

@jordanbaird
Copy link
Owner

I'm going to close this, as Sequoia is releasing today, and Apple seems to have settled on the once-a-month popup. There isn't much Ice can do about this, aside from implementing the new ScreenCaptureKit APIs (which we can't do for the reasons described above).

@jordanbaird jordanbaird closed this as not planned Won't fix, can't repro, duplicate, stale Sep 16, 2024
@luckman212
Copy link

Thank you @jordanbaird

Hopefully there will be enough outrage from this annoying change that Apple will reconsider this for 15.1

@stonerl
Copy link
Contributor

stonerl commented Sep 23, 2024

This little app here might be what we are looking for: Amnesia

@mbklein
Copy link

mbklein commented Sep 23, 2024

There's also a manual way to do what the Amnesia app does without granting low level system permissions to yet another app.

@stonerl
Copy link
Contributor

stonerl commented Oct 9, 2024

ScreenCaptureKit

New Features

Applications using our deprecated content capture technologies now have enhanced user awareness policies. Users will see fewer dialogs if they regularly use apps in which they have already acknowledged and accepted the risks. (133431080)

New changes in macOS 15.1 beta6. Not sure what this means in practice, but let's hope for less popups.

@luckman212
Copy link

Shameless plug for a small thing I made:

luckman212/screencapture-nag-remover

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something isn't working Screen Capture Related to macOS screen capture APIs
Projects
None yet
Development

No branches or pull requests

9 participants