PageSourceSearch

https://localdesktop.github.io/assets/js/08f338cc.5c9ad6b5.js

js localdesktop.github.io collected 2026-10-03 09:32:09 UTC 5,620 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunklocaldesktop_github_io=self.webpackChunklocaldesktop_github_io||[]).push([[1985],{128:(e,s,i)=>{i.d(s,{A:()=>t});const t=i.p+"assets/images/accessibility-physical-keyboard-list-e6c8d91cc439f38be84270c02af250e8.png"},1022:(e,s,i)=>{i.d(s,{A:()=>t});const t=i.p+"assets/images/accessibility-physical-keyboard-warning-9ca57444606b076b489f9fdf4b226efb.png"},3657:(e,s,i)=>{i.d(s,{A:()=>t});const t=i.p+"assets/images/accessibility-physical-keyboard-enabled-f28b004be2b3b376d54a26b0374f3689.png"},3965:(e,s,i)=>{i.r(s),i.d(s,{assets:()=>a,contentTitle:()=>c,default:()=>h,frontMatter:()=>r,metadata:()=>t,toc:()=>l});const t=JSON.parse('{"id":"user/physical-keyboard-shortcuts","title":"Physical Keyboard Shortcuts","description":"If Android intercepts hardware shortcuts like Ctrl+C, Ctrl+V, Ctrl+L, or other desktop-style combinations before they reach the Linux session, enable Local Desktop\'s physical-keyboard accessibility service.","source":"@site/docs/user/6-physical-keyboard-shortcuts.md","sourceDirName":"user","slug":"/user/physical-keyboard-shortcuts","permalink":"/docs/user/physical-keyboard-shortcuts","draft":false,"unlisted":false,"editUrl":"https://github.com/localdesktop/localdesktop.github.io/tree/main/gh-pages/docs/user/6-physical-keyboard-shortcuts.md","tags":[],"version":"current","sidebarPosition":6,"frontMatter":{"title":"Physical Keyboard Shortcuts"},"sidebar":"userSidebar","previous":{"title":"Share files between Android and Linux","permalink":"/docs/user/android-storage"},"next":{"title":"Firefox","permalink":"/docs/user/app-compatibility/firefox"}}');var n=i(5105),o=i(3969);const r={title:"Physical Keyboard Shortcuts"},c=void 0,a={},l=[{value:"Enable the service",id:"enable-the-service",level:2},{value:"When should I use this?",id:"when-should-i-use-this",level:2},{value:"Turn it off again",id:"turn-it-off-again",level:2}];function d(e){const s={admonition:"admonition",code:"code",h2:"h2",img:"img",li:"li",ol:"ol",p:"p",strong:"strong",...(0,o.R)(),...e.components};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)(s.p,{children:["If Android intercepts hardware shortcuts like ",(0,n.jsx)(s.code,{children:"Ctrl+C"}),", ",(0,n.jsx)(s.code,{children:"Ctrl+V"}),", ",(0,n.jsx)(s.code,{children:"Ctrl+L"}),", or other desktop-style combinations before they reach the Linux session, enable Local Desktop's physical-keyboard accessibility service."]}),"\n",(0,n.jsx)(s.admonition,{title:"Android Shows A Generic Warning",type:"warning",children:(0,n.jsx)(s.p,{children:'Android uses the same "full control of your device" warning for every accessibility service. Local Desktop uses this service only to forward physical keyboard events into the Linux desktop session.'})}),"\n",(0,n.jsx)(s.h2,{id:"enable-the-service",children:"Enable the service"}),"\n",(0,n.jsxs)(s.ol,{children:["\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsxs)(s.p,{children:["Open Android ",(0,n.jsx)(s.strong,{children:"Settings"})," > ",(0,n.jsx)(s.strong,{children:"Accessibility"})," and find ",(0,n.jsx)(s.strong,{children:"Local Desktop"})," under ",(0,n.jsx)(s.strong,{children:"Downloaded apps"}),"."]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"Accessibility settings with Local Desktop listed",src:i(128).A+"#boxed",width:"2560",height:"1600"})}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsxs)(s.p,{children:["Open ",(0,n.jsx)(s.strong,{children:"Local Desktop"})," and turn on ",(0,n.jsx)(s.strong,{children:"Use Local Desktop"}),"."]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"Local Desktop accessibility service details page",src:i(5143).A+"#boxed",width:"2560",height:"1600"})}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsxs)(s.p,{children:["Android will show a generic accessibility warning. Read it, then tap ",(0,n.jsx)(s.strong,{children:"Allow"})," if you want Local Desktop to receive physical keyboard shortcuts."]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"Android accessibility permission warning dialog",src:i(1022).A+"#boxed",width:"2560",height:"1600"})}),"\n"]}),"\n",(0,n.jsxs)(s.li,{children:["\n",(0,n.jsxs)(s.p,{children:["When the setup is complete, the Accessibility list should show ",(0,n.jsx)(s.strong,{children:"On / Local Desktop"}),"."]}),"\n",(0,n.jsx)(s.p,{children:(0,n.jsx)(s.img,{alt:"Accessibility settings after the service has been enabled",src:i(3657).A+"#boxed",width:"2560",height:"1600"})}),"\n"]}),"\n"]}),"\n",(0,n.jsx)(s.h2,{id:"when-should-i-use-this",children:"When should I use this?"}),"\n",(0,n.jsx)(s.p,{children:"Enable it only if Android steals physical keyboard shortcuts before they reach Local Desktop. If shortcuts already work correctly on your device, leave it off."}),"\n",(0,n.jsx)(s.h2,{id:"turn-it-off-again",children:"Turn it off again"}),"\n",(0,n.jsxs)(s.p,{children:["Go back to the same settings page and switch ",(0,n.jsx)(s.strong,{children:"Use Local Desktop Physical Keyboard"})," off."]})]})}function h(e={}){const{wrapper:s}={...(0,o.R)(),...e.components};return s?(0,n.jsx)(s,{...e,children:(0,n.jsx)(d,{...e})}):d(e)}},3969:(e,s,i)=>{i.d(s,{R:()=>r,x:()=>c});var t=i(8101);const n={},o=t.createContext(n);function r(e){const s=t.useContext(o);return t.useMemo((function(){return"function"==typeof e?e(s):{...s,...e}}),[s,e])}function c(e){let s;return s=e.disableParentContext?"function"==typeof e.components?e.components(n):e.components||n:r(e.components),t.createElement(o.Provider,{value:s},e.children)}},5143:(e,s,i)=>{i.d(s,{A:()=>t});const t=i.p+"assets/images/accessibility-physical-keyboard-service-9ed846a1c70f6bef55
1d97b1d795aee5c.png"}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.