lwouis / alt-tab-macos

Windows alt-tab on macOS
https://alt-tab-macos.netlify.app
GNU General Public License v3.0
10.59k stars 323 forks source link

On Sequoia beta 3 (Mac os 15.0), it keeps says screen recording is not allowed even it's allowed , and don't have popup like before #3477

Closed hyungchulc closed 2 days ago

hyungchulc commented 2 months ago

Describe the bug

On Sequoia beta 3 (Mac Os 15.0), it keeps says screen recording is not allowed even it's allowed , and don't have popup like before, which asks if I want to keep give the permission.

Screenshots / video

Screenshot 2024-07-11 at 03 21 59 AM@2x

Steps to reproduce the bug

  1. Open AltTab in beta 3
  2. Doesn't work

Your environment

falchion10 commented 2 months ago

Having this issue as well. Just updated to 15.0 Developer Beta 3

UnknownCrafts commented 2 months ago

Ignore my instructions, please check this: https://github.com/lwouis/alt-tab-macos/issues/3477#issuecomment-2226400338

Edit: just for extra clarification I am also on MacOS 15 dev beta 3

I would like to confirm this issue and also give a workaround. Unfortunately the workaround does not persist during restarts but it is still better than not being able to use AltTab, ofc you can redo the steps after each restart.

Workaround:

NOTE: Please click the "Later" option instead of "quit and restart", this might not be obvious in the video due to compression.

https://github.com/lwouis/alt-tab-macos/assets/65975222/2808010e-d600-4f00-be03-82b080629368

Edit: If the workaround does not work then, add AltTab without removing it in the privacy and security settings.

AChangXD commented 2 months ago

Running into this as well

AChangXD commented 2 months ago

Edit: just for extra clarification I am also on MacOS 15 dev beta 3

I would like to confirm this issue and also give a workaround. Unfortunately the workaround does not persist during restarts but it is still better than not being able to use AltTab, ofc you can redo the steps after each restart.

Workaround:

video.mp4

Removing + adding back didn't fix it for me. I had to add it without removing it and it fixed itself. Seems more like a MacOS issue though

UnknownCrafts commented 2 months ago

Edit: just for extra clarification I am also on MacOS 15 dev beta 3 I would like to confirm this issue and also give a workaround. Unfortunately the workaround does not persist during restarts but it is still better than not being able to use AltTab, ofc you can redo the steps after each restart. Workaround: video.mp4

Removing + adding back didn't fix it for me. I had to add it without removing it and it fixed itself. Seems more like a MacOS issue though

I will add that as an alternative to the original comment.

Ethansev commented 2 months ago

Edit: just for extra clarification I am also on MacOS 15 dev beta 3 I would like to confirm this issue and also give a workaround. Unfortunately the workaround does not persist during restarts but it is still better than not being able to use AltTab, ofc you can redo the steps after each restart. Workaround: video.mp4

Removing + adding back didn't fix it for me. I had to add it without removing it and it fixed itself. Seems more like a MacOS issue though

Not working for me unfortunately but worth a shot. I'll play with it a bit and see what I can do. Also on MacOS 15 dev beta 3.

AChangXD commented 2 months ago

@Ethansev Try restarting/reinstalling

AChangXD commented 2 months ago

I created a ticket in the feedback app, I'd recommend anyone running into this issue to do the same.

hyungchulc commented 2 months ago

Made it work with just clicking "Later" in the pop-up...!!

andogq commented 2 months ago

This worked for me too! Remove AltTab from the list in Screen & System Audio Recording, and close the AltTab warning window. Re-open AltTab, and follow the prompts to give it screen recording permissions in settings. When it says that the program must be quit and re-opened, then click Later and it will work.

UnknownCrafts commented 2 months ago

Made it work with just clicking "Later" in the pop-up...!!

I was afraid that people would not be able to see the options due to the video compression, but in the video I am clicking the "Later" option instead of "quit and restart"

I will add a disclaimer in my original comment.

jhaemin commented 2 months ago

This worked for me too! Remove AltTab from the list in Screen & System Audio Recording, and close the AltTab warning window. Re-open AltTab, and follow the prompts to give it screen recording permissions in settings. When it says that the program must be quit and re-opened, then click Later and it will work.

@andogq It works. Thanks.

BossscoLeung commented 2 months ago

Workaround:

NOTE: Please click the "Later" option instead of "quit and restart", this might not be obvious in the video due to compression.

@UnknownCrafts Thanks for the temporarily workaround, it works!

Anastandstealb commented 2 months ago

I also am facing the same issue and later is not working for me

judge2020 commented 2 months ago

andogq's suggestion is what worked for me.

lwouis commented 2 months ago

Related: https://github.com/lwouis/alt-tab-macos/issues/3427

XicoMontalvao commented 2 months ago

Here I have already tested everything that was said above and it did not work again, neither this nor the Shottr

pauldvu commented 2 months ago

Okay, so I think I kind of figured out why the workaround may not be working for some people. Let me go ahead and share with you some things you can try.

Okay, so the first thing you want to do is reset the consent control prompts, which is different from resetting the privacy and security entry. Rather, ensure that you reset the entire consent prompt.

tccutil reset ScreenCapture com.lwouis.alt-tab-macos && 
tccutil reset Microphone com.lwouis.alt-tab-macos && 
tccutil reset Camera com.lwouis.alt-tab-macos && 
tccutil reset Accessibility com.lwouis.alt-tab-macos

This is important because it will allow you to see the prompts again in order to do the next steps.

image

Okay, here. You want to go ahead and open system settings and then add it.

image

Okay. It's at this point, where this is the checkpoint. You want to make sure that you see the screen recording? It's green and set to allowed.

image

Okay. And then after that, you want to go ahead and press, later.

Lastly, you simply want to do that for accessibility.

What's important to note is that you want to make sure. That. You're seeing both go green, essentially. When you're hitting the later button, so you have to reset. your control cassette props hope it helps

UnknownCrafts commented 2 months ago

Okay, so I think I kind of figured out why the workaround may not be working for some people. Let me go ahead and share with you some things you can try.

Okay, so the first thing you want to do is reset the consent control prompts, which is different from resetting the privacy and security entry. Rather, ensure that you reset the entire consent prompt.

tccutil reset ScreenCapture com.lwouis.alt-tab-macos && 
tccutil reset Microphone com.lwouis.alt-tab-macos && 
tccutil reset Camera com.lwouis.alt-tab-macos && 
tccutil reset Accessibility com.lwouis.alt-tab-macos

This is important because it will allow you to see the prompts again in order to do the next steps.

image Okay, here. You want to go ahead and open system settings and then add it. image

Okay. It's at this point, where this is the checkpoint. You want to make sure that you see the screen recording? It's green and set to allowed.

image

Okay. And then after that, you want to go ahead and press, later.

Lastly, you simply want to do that for accessibility.

What's important to note is that you want to make sure. That. You're seeing both go green, essentially. When you're hitting the later button, so you have to reset. your control cassette props hope it helps

This works perfectly.

XicoMontalvao commented 2 months ago

Captura de Tela 2024-07-12 às 20 13 00 not

UnknownCrafts commented 2 months ago

Captura de Tela 2024-07-12 às 20 13 00 not

Just give the accessibility permission again by clicking the button and then it should work perfectly

YousufSSyed commented 2 months ago

Having this issue as well

IsaacBraydon commented 2 months ago

Edit: just for extra clarification I am also on MacOS 15 dev beta 3 I would like to confirm this issue and also give a workaround. Unfortunately the workaround does not persist during restarts but it is still better than not being able to use AltTab, ofc you can redo the steps after each restart. Workaround: video.mp4

Removing + adding back didn't fix it for me. I had to add it without removing it and it fixed itself. Seems more like a MacOS issue though

You can try these steps:

  1. Run AltTab until it showed permission is required.
  2. Switch to the permission settings and disable AltTab's permission that you're troubling with. (Use 'Later' instead of 'Restart&Reopen', and do not remove it from the list right now).
  3. Use Command+Q close AltTab.
  4. Reopen AltTab manually after confirmed AltTab's permission is disabled & not removed from the permission list.
  5. AltTab would still require permission at this run.
  6. REMOVE AltTab's permission from the list & add AltTab again to the list & grant the permission.
  7. AltTab can be used during this login session but you might do it again after restart.
    • Seems like something wrong with Sequoia's permission management system while updated to Beta 3. Apple might repair this after next update.
engageintellect commented 2 months ago

+1 😢

HTA86 commented 2 months ago

Ignore my instructions, please check this: #3477 (comment)

Edit: just for extra clarification I am also on MacOS 15 dev beta 3

I would like to confirm this issue and also give a workaround. Unfortunately the workaround does not persist during restarts but it is still better than not being able to use AltTab, ofc you can redo the steps after each restart.

Workaround:

NOTE: Please click the "Later" option instead of "quit and restart", this might not be obvious in the video due to compression.

video.mp4

Edit: If the workaround does not work then, add AltTab without removing it in the privacy and security settings.

Thank you for sharing the workaround! I can confirm that I am also experiencing the same issue on macOS 15.0 Beta 3. The suggested workaround works for me.

hahayupgit commented 2 months ago

This worked for me too! Remove AltTab from the list in Screen & System Audio Recording, and close the AltTab warning window. Re-open AltTab, and follow the prompts to give it screen recording permissions in settings. When it says that the program must be quit and re-opened, then click Later and it will work.

+1 had this same issue and this worked! Thank you!

Bleushift commented 2 months ago

Same issue here. Updated to later Beta on Mac. Unfortunately, none of the suggestions here have worked.

XicoMontalvao commented 2 months ago

Same issue here. Updated to later Beta on Mac. Unfortunately, none of the suggestions here have worked.

IZKEER commented 2 months ago

This worked for me too! Remove AltTab from the list in Screen & System Audio Recording, and close the AltTab warning window. Re-open AltTab, and follow the prompts to give it screen recording permissions in settings. When it says that the program must be quit and re-opened, then click Later and it will work.

worked, cheers

castdrian commented 2 months ago

to fix this with most screenshot applications, take a full screen screenshot and then it'll work until reboot

todd-gallant commented 2 months ago

its not just alt-tab, other apps are doing the same thing, like Displaylink Manager..

lwouis commented 2 months ago

I'm guessing that the root cause of this issue is the way AltTab checks if the permission is granted.

AltTab doesn't use the official API for this. Instead it uses a workaround that consist in making a call to another API, and seeing if we get a result. If we don't, we assume that the permission is not granted. If we do, we assume that it is granted.

The reason we use this workaround instead of the official API is that the official API has a big downside: when you call it, it returns how the permission was at the time when AltTab was launched, not at the time we are calling to ask. This means that we know the permission state when AltTab was launched. If it's changed after that, we have no idea.

This made the onboarding experience as it is today in the app impossible. Indeed, the first time, we ask the user to provide permissions. Of course at this point the permissions are not granted since it's the first launch. The user then grants it. At this point, we would have no way to confirm that they granted it since the official API would return false until AltTab is restarted.

We wanted a good UX, so we implemented the workaround I mentioned. It's possible that Apple messed with the API used in the workaround in this Beta, which would break it. I don't see why they would update it, or how they could do it without breaking the API functionality, but maybe they did.

More specifics in this PR.

Again, this is my guess. I don't have a machine with the Beta to debug things. As usual, I plan on waiting for the Beta to finish, and the release to be made public and official. Only then, we will know if we have things to fix or not. It's usual of Apple to fix things before the end of betas. It has happened for the last 2 betas for instance. So from my perspective, we shouldn't rush hotfixes or what not. Let's wait for something stable. These betas are moving targets.

eachann1024 commented 2 months ago

I'm guessing that the root cause of this issue is the way AltTab checks if the permission is granted.

AltTab doesn't use the official API for this. Instead it uses a workaround that consist in making a call to another API, and seeing if we get a result. If we don't, we assume that the permission is not granted. If we do, we assume that it is granted.

The reason we use this workaround instead of the official API is that the official API has a big downside: when you call it, it returns how the permission was at the time when AltTab was launched, not at the time we are calling to ask. This means that we know the permission state when AltTab was launched. If it's changed after that, we have no idea.

This made the onboarding experience as it is today in the app impossible. Indeed, the first time, we ask the user to provide permissions. Of course at this point the permissions are not granted since it's the first launch. The user then grants it. At this point, we would have no way to confirm that they granted it since the official API would return false until AltTab is restarted.

We wanted a good UX, so we implemented the workaround I mentioned. It's possible that Apple messed with the API used in the workaround in this Beta, which would break it. I don't see why they would update it, or how they could do it without breaking the API functionality, but maybe they did.

More specifics in this PR.

Again, this is my guess. I don't have a machine with the Beta to debug things. As usual, I plan on waiting for the Beta to finish, and the release to be made public and official. Only then, we will know if we have things to fix or not. It's usual of Apple to fix things before the end of betas. It has happened for the last 2 betas for instance. So from my perspective, we shouldn't rush hotfixes or what not. Let's wait for something stable. These betas are moving targets.

Every time Apple releases a major update, it challenges the rules of the old version.

DominicVonk commented 1 month ago

The issue is fixed with beta 4, remove all old permissions and quit the app. And allow them again. It keeps them preserved between reboots now.

UnknownCrafts commented 1 month ago

The issue is fixed with beta 4, remove all old permissions and quit the app. And allow them again. It keeps them preserved between reboots now.

Time to go back to dev beta from public beta, at least it's only 2.88gb

jhaemin commented 1 month ago

Confirmed it is fixed in Beta 4.

dexxa05 commented 1 month ago

Hi guys, Can you confirm everything is working in Beta 4, like before ? I still have issue, preview is not working...

jhaemin commented 1 month ago

@dexxa05 Preview is working fine for me.

dexxa05 commented 1 month ago

@dexxa05 Preview is working fine for me.

Yes you right everything is working properly :)

dew912 commented 1 month ago

Any luck with Public Beta 2?

Imolos commented 1 month ago

Any luck with Public Beta 2?

Just Installed Beta 2 on my Mac Studio with M1 Max And after reboot system asked me if I still want to allow usage of screen recording. It starts working I try also just quit the app and launch it again and the permisions are still allowed So I guess for some this could work Mileage may vary

ThomasWaldmann commented 1 month ago

https://github.com/lwouis/alt-tab-macos/issues/3477#issuecomment-2226400338 <- this only worked for me after changing the binary to /usr/bin/tccutil.

Otherwise I only got some "Usage: ..." output.

Larsen2k4 commented 1 month ago

A little update with Sequoia Beta 5: Apple finally eased the constant nagging on screen permissions by allowing access for one week before asking again. (Works for Alttab and other apps I use)

danielskowronski commented 1 month ago

This still happens on macOS 15.0 beta 6 (624A5320a) and I have an open FB ticket with them since early July. The issue is both with AltTab spamming macOS API with requests and macOS allowing message storm to annoy users by running any executable calling that API.

Even with the latest change from Apple that introduces 1 month whitelist option, AltTab triggers the same pattern (it doesn't start showing just after AltTab gets launched on login, rather when the computer is in Power Nap or just left with the screen turned off):

AltTab

Anyone who's using macOS Beta should file a feedback ticket with Apple so they get enough system diagnostics to figure out what's allowing this behaviour.

Larsen2k4 commented 1 month ago

Not happening here on Sequoia Beta 6 (PowerNap turned off) - AltTab requests have been completely silent for me after the first allowance.

danielskowronski commented 1 month ago

After two days, I can confirm that issue seems to be gone after the first allowance.

I have AltTab installed since Sonoma, so it seems that on Sequoia Beta 6 the problem lies only with AltTab being persistent in requesting permission it partially had been granted (and macOS allowing it to annoy user).

ejbills commented 1 week ago

I'm guessing that the root cause of this issue is the way AltTab checks if the permission is granted.

AltTab doesn't use the official API for this. Instead it uses a workaround that consist in making a call to another API, and seeing if we get a result. If we don't, we assume that the permission is not granted. If we do, we assume that it is granted.

Hi there @lwouis, DockDoor has a similar permissions page which works on macOS 15 Sequoia without issues

Screenshot 2024-09-09 at 12 56 50 PM

.

Feel free to port the logic to AltTab: Observable object: https://github.com/ejbills/DockDoor/blob/539ef09e72e0ff24b2bf722704b84523bc4d1f08/DockDoor/Components/PermissionsView/PermissionsChecker.swift#L4 Used in a view: https://github.com/ejbills/DockDoor/blob/539ef09e72e0ff24b2bf722704b84523bc4d1f08/DockDoor/Components/PermissionsView/PermissionsView.swift#L6

Hope this helps. 👍

lwouis commented 1 week ago

Hi @ejbills,

Thank you for sharing your implementation to help us!

I think we use the same exact implementation. In other words, I think yours will suffer from the same problems:

Thank you 🙇

ejbills commented 1 week ago

I think we use the same exact implementation. In other words, I think yours will suffer from the same problems:

Oh man... thanks for the heads up! hahaha

lwouis commented 2 days ago

I've updated to Sequoia today, and on first login was greeted with the new dialog:

image

It is confusing because I didn't press to Allow. Yet I could still use AltTab. On a second launch, I got the dialog again, didn't allow again, and still could use AltTab. On a third launch, the dialog didn't show up and I could use AltTab.

I don't understand what the message means, and why I can ignore it and still use AltTab. What is the purpose of this dialog?