annotate src/sys/osx/permissions.cc @ 258:862d0d8619f6

*: HUUUGE changes animia has been renamed to animone, so instead of thinking of a health condition, you think of a beautiful flower :) I've also edited some of the code for animone, but I have no idea if it even works or not because I don't have a mac or windows machine lying around. whoops! ... anyway, all of the changes divergent from Anisthesia are now licensed under BSD. it's possible that I could even rewrite most of the code to where I don't even have to keep the MIT license, but that's thinking too far into the future I've been slacking off on implementing the anime seasons page, mostly out of laziness. I think I'd have to create another db file specifically for the seasons anyway, this code is being pushed *primarily* because the hard drive it's on is failing! yay :)
author Paper <paper@paper.us.eu.org>
date Mon, 01 Apr 2024 02:43:44 -0400
parents a7d0d543b334
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
237
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
1 #include "sys/osx/permissions.h"
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
2
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
3 #include <ApplicationServices/ApplicationServices.h>
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
4
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
5 #include <QCoreApplication>
258
862d0d8619f6 *: HUUUGE changes
Paper <paper@paper.us.eu.org>
parents: 237
diff changeset
6 #include <QDesktopServices>
237
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
7 #include <QMessageBox>
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
8 #include <QUrl>
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
9
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
10 namespace osx {
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
11
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
12 bool AskForPermissions() {
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
13 if (::AXIsProcessTrusted())
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
14 return true;
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
15
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
16 QMessageBox msg;
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
17 msg.setIcon(QMessageBox::Information);
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
18 msg.setText(QCoreApplication::tr("Permissions needed!"));
258
862d0d8619f6 *: HUUUGE changes
Paper <paper@paper.us.eu.org>
parents: 237
diff changeset
19 msg.setInformativeText(QCoreApplication::tr(
862d0d8619f6 *: HUUUGE changes
Paper <paper@paper.us.eu.org>
parents: 237
diff changeset
20 "Minori needs access to accessibility features for certain features to work. Open System Preferences?"));
237
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
21 msg.setStandardButtons(QMessageBox::Yes | QMessageBox::No);
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
22 msg.setDefaultButton(QMessageBox::Yes);
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
23 int ret = msg.exec();
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
24 if (ret != QMessageBox::Yes)
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
25 return false;
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
26
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
27 QDesktopServices::openUrl(QUrl("x-apple.systempreferences:com.apple.preference.security?Privacy_Accessibility"));
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
28 return true;
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
29 }
a7d0d543b334 *: make OS X builds succeed
Paper <paper@paper.us.eu.org>
parents:
diff changeset
30
258
862d0d8619f6 *: HUUUGE changes
Paper <paper@paper.us.eu.org>
parents: 237
diff changeset
31 } // namespace osx