Better accessibility permissions.
This commit is contained in:
parent
5fc55cfcb3
commit
2570f99df6
1 changed files with 11 additions and 30 deletions
41
src/App.tsx
41
src/App.tsx
|
|
@ -5,32 +5,12 @@ import {
|
||||||
checkAccessibilityPermissions,
|
checkAccessibilityPermissions,
|
||||||
requestAccessibilityPermissions,
|
requestAccessibilityPermissions,
|
||||||
} from "tauri-plugin-macos-permissions-api";
|
} from "tauri-plugin-macos-permissions-api";
|
||||||
import { register } from "@tauri-apps/plugin-global-shortcut";
|
|
||||||
import HandyTextLogo from "./components/icons/HandyTextLogo";
|
import HandyTextLogo from "./components/icons/HandyTextLogo";
|
||||||
import { invoke } from "@tauri-apps/api/core";
|
|
||||||
// import { TrayIcon } from "@tauri-apps/api/tray";
|
|
||||||
// import { Menu } from "@tauri-apps/api/menu";
|
|
||||||
// import { defaultWindowIcon } from "@tauri-apps/api/app";
|
|
||||||
|
|
||||||
// const menu = await Menu.new({
|
|
||||||
// items: [
|
|
||||||
// {
|
|
||||||
// id: "quit",
|
|
||||||
// text: "Quit",
|
|
||||||
// },
|
|
||||||
// ],
|
|
||||||
// });
|
|
||||||
|
|
||||||
// const options = {
|
|
||||||
// icon: await defaultWindowIcon(),
|
|
||||||
// menu,
|
|
||||||
// menuOnLeftClick: true,
|
|
||||||
// };
|
|
||||||
|
|
||||||
function App() {
|
function App() {
|
||||||
const [hasAccessibility, setHasAccessibility] = useState(false);
|
const [hasAccessibility, setHasAccessibility] = useState(false);
|
||||||
|
|
||||||
useEffect(() => {
|
const checkPermissions = () => {
|
||||||
checkAccessibilityPermissions().then((hasPermissions) => {
|
checkAccessibilityPermissions().then((hasPermissions) => {
|
||||||
if (!hasPermissions) {
|
if (!hasPermissions) {
|
||||||
requestAccessibilityPermissions().then((permissions) => {
|
requestAccessibilityPermissions().then((permissions) => {
|
||||||
|
|
@ -40,27 +20,28 @@ function App() {
|
||||||
}
|
}
|
||||||
setHasAccessibility(hasPermissions);
|
setHasAccessibility(hasPermissions);
|
||||||
});
|
});
|
||||||
|
};
|
||||||
|
|
||||||
// TrayIcon.new(options).then((t) => {
|
useEffect(() => {
|
||||||
// console.log("tray init", t);
|
checkPermissions();
|
||||||
// });
|
|
||||||
|
|
||||||
// invoke("set_binding", {
|
|
||||||
// id: "test",
|
|
||||||
// binding: "alt+d",
|
|
||||||
// });
|
|
||||||
}, []);
|
}, []);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div className="min-h-screen bg-gray-100 flex flex-col items-center pt-6 w-full">
|
<div className="min-h-screen bg-gray-100 flex flex-col items-center pt-6 w-full">
|
||||||
{!hasAccessibility && (
|
{!hasAccessibility && (
|
||||||
<div className="bg-yellow-50 p-4 w-full">
|
<div className="bg-yellow-50 p-4 w-full">
|
||||||
<div className="flex">
|
<div className="flex justify-between items-center">
|
||||||
<div className="ml-3">
|
<div className="ml-3">
|
||||||
<p className="text-sm font-medium text-yellow-800">
|
<p className="text-sm font-medium text-yellow-800">
|
||||||
Accessibility permissions are required for keyboard shortcuts.
|
Accessibility permissions are required for keyboard shortcuts.
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
<button
|
||||||
|
onClick={checkPermissions}
|
||||||
|
className="bg-yellow-200 hover:bg-yellow-300 text-yellow-800 font-medium py-1 px-3 rounded text-sm mr-4"
|
||||||
|
>
|
||||||
|
Recheck Permissions
|
||||||
|
</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue