Mercurial > minori
view src/sys/osx/permissions.cc @ 347:a0aa8c8c4307
dep/anitomy: port to use UCS-4 rather than wide strings
rationale: wide strings are not the same on every platform, and
might not even be Unicode. (while they usually are, its possible
that they are not)
I was *going* to change StringToInt to use a string stream, but
outputting to an integer doesn't seem to work at all with UCS-4,
even though it ought to, so I just rolled my own that uses the
arabic digits only.
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Sun, 23 Jun 2024 10:32:09 -0400 |
parents | 862d0d8619f6 |
children |
line wrap: on
line source
#include "sys/osx/permissions.h" #include <ApplicationServices/ApplicationServices.h> #include <QCoreApplication> #include <QDesktopServices> #include <QMessageBox> #include <QUrl> namespace osx { bool AskForPermissions() { if (::AXIsProcessTrusted()) return true; QMessageBox msg; msg.setIcon(QMessageBox::Information); msg.setText(QCoreApplication::tr("Permissions needed!")); msg.setInformativeText(QCoreApplication::tr( "Minori needs access to accessibility features for certain features to work. Open System Preferences?")); msg.setStandardButtons(QMessageBox::Yes | QMessageBox::No); msg.setDefaultButton(QMessageBox::Yes); int ret = msg.exec(); if (ret != QMessageBox::Yes) return false; QDesktopServices::openUrl(QUrl("x-apple.systempreferences:com.apple.preference.security?Privacy_Accessibility")); return true; } } // namespace osx