feat: add hotkey help to settings (#886)
This commit is contained in:
parent
aa69e651ac
commit
29a2892dd0
49
src/routes/_components/ShortcutHelpInfo.html
Normal file
49
src/routes/_components/ShortcutHelpInfo.html
Normal file
|
@ -0,0 +1,49 @@
|
|||
<div class="{inDialog ? 'in-dialog' : ''}">
|
||||
<h1>Hotkeys</h1>
|
||||
|
||||
<ul>
|
||||
<li><kbd>s</kbd> to search</li>
|
||||
<li><kbd>g</kbd> + <kbd>h</kbd> to go home</li>
|
||||
<li><kbd>g</kbd> + <kbd>n</kbd> to go to the notifications page</li>
|
||||
<li><kbd>g</kbd> + <kbd>l</kbd> to go to the local stream page</li>
|
||||
<li><kbd>g</kbd> + <kbd>t</kbd> to go to the federated stream page</li>
|
||||
<li><kbd>g</kbd> + <kbd>c</kbd> to go to the community page</li>
|
||||
<li><kbd>j</kbd> or <kbd>↓</kbd> to activate the next status</li>
|
||||
<li><kbd>k</kbd> or <kbd>↑</kbd> to activate the previous status</li>
|
||||
<li><kbd>o</kbd> to open the active status</li>
|
||||
<li><kbd>f</kbd> to favorite the active status</li>
|
||||
<li><kbd>b</kbd> to boost the active status</li>
|
||||
<li><kbd>r</kbd> to reply to the active status</li>
|
||||
<li><kbd>x</kbd> to show or hide text behind content warning in the active status</li>
|
||||
<li><kbd>y</kbd> to show or hide sensitive media in the active status</li>
|
||||
<li><kbd>h</kbd> or <kbd>?</kbd> to toggle the help dialog</li>
|
||||
<li><kbd>Backspace</kbd> to go back, close dialogs</li>
|
||||
</ul>
|
||||
</div>
|
||||
<style>
|
||||
.in-dialog h1 {
|
||||
color: var(--muted-modal-text);
|
||||
}
|
||||
li {
|
||||
list-style-type: none;
|
||||
}
|
||||
.in-dialog li {
|
||||
color: var(--muted-modal-text);
|
||||
}
|
||||
kbd {
|
||||
color: #333;
|
||||
display: inline-block;
|
||||
border: 1px solid #333;
|
||||
border-radius: 2px;
|
||||
padding: 0.1em;
|
||||
margin: 0.2em;
|
||||
background-color: #dadada;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
export default {
|
||||
data: () => ({
|
||||
inDialog: false
|
||||
})
|
||||
}
|
||||
</script>
|
|
@ -5,49 +5,13 @@
|
|||
muted="true"
|
||||
className="shortcut-help-modal-dialog">
|
||||
|
||||
<h1>Keyboard Shortcuts</h1>
|
||||
|
||||
<ul>
|
||||
<li><kbd>s</kbd> to search</li>
|
||||
<li><kbd>g</kbd> + <kbd>h</kbd> to go home</li>
|
||||
<li><kbd>g</kbd> + <kbd>n</kbd> to go to the notifications page</li>
|
||||
<li><kbd>g</kbd> + <kbd>l</kbd> to go to the local stream page</li>
|
||||
<li><kbd>g</kbd> + <kbd>t</kbd> to go to the federated stream page</li>
|
||||
<li><kbd>g</kbd> + <kbd>c</kbd> to go to the community page</li>
|
||||
<li><kbd>j</kbd> or <kbd>↓</kbd> to activate the next status</li>
|
||||
<li><kbd>k</kbd> or <kbd>↑</kbd> to activate the previous status</li>
|
||||
<li><kbd>o</kbd> to open the active status</li>
|
||||
<li><kbd>f</kbd> to favorite the active status</li>
|
||||
<li><kbd>b</kbd> to boost the active status</li>
|
||||
<li><kbd>r</kbd> to reply to the active status</li>
|
||||
<li><kbd>x</kbd> to show or hide text behind content warning in the active status</li>
|
||||
<li><kbd>y</kbd> to show or hide sensitive media in the active status</li>
|
||||
<li><kbd>h</kbd> or <kbd>?</kbd> to toggle this dialog</li>
|
||||
<li><kbd>Backspace</kbd> to go back, close dialogs</li>
|
||||
</ul>
|
||||
<ShortcutHelpInfo inDialog={true} />
|
||||
|
||||
<Shortcut scope='modal' key='h|?' on:pressed='close()'/>
|
||||
</ModalDialog>
|
||||
<style>
|
||||
h1 {
|
||||
color: var(--muted-modal-text);
|
||||
}
|
||||
li {
|
||||
list-style-type:none;
|
||||
color: var(--muted-modal-text);
|
||||
}
|
||||
kbd {
|
||||
color: #333;
|
||||
display: inline-block;
|
||||
border: 1px solid #333;
|
||||
border-radius: 2px;
|
||||
padding: 0.1em;
|
||||
margin: 0.2em;
|
||||
background-color: #dadada;
|
||||
}
|
||||
</style>
|
||||
<script>
|
||||
import ModalDialog from './ModalDialog.html'
|
||||
import ShortcutHelpInfo from '../../ShortcutHelpInfo.html'
|
||||
import Shortcut from '../../shortcut/Shortcut.html'
|
||||
import { show } from '../helpers/showDialog'
|
||||
import { close } from '../helpers/closeDialog'
|
||||
|
@ -57,7 +21,8 @@
|
|||
oncreate,
|
||||
components: {
|
||||
ModalDialog,
|
||||
Shortcut
|
||||
Shortcut,
|
||||
ShortcutHelpInfo
|
||||
},
|
||||
methods: {
|
||||
show,
|
||||
|
|
14
src/routes/_pages/settings/hotkeys.html
Normal file
14
src/routes/_pages/settings/hotkeys.html
Normal file
|
@ -0,0 +1,14 @@
|
|||
<SettingsLayout page='settings/hotkeys' label="Hotkeys">
|
||||
<ShortcutHelpInfo />
|
||||
</SettingsLayout>
|
||||
<script>
|
||||
import SettingsLayout from '../../_components/settings/SettingsLayout.html'
|
||||
import ShortcutHelpInfo from '../../_components/ShortcutHelpInfo.html'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
SettingsLayout,
|
||||
ShortcutHelpInfo
|
||||
}
|
||||
}
|
||||
</script>
|
|
@ -4,6 +4,7 @@
|
|||
<SettingsList>
|
||||
<SettingsListItem href="/settings/general" label="General"/>
|
||||
<SettingsListItem href="/settings/instances" label="Instances"/>
|
||||
<SettingsListItem href="/settings/hotkeys" label="Hotkeys"/>
|
||||
<SettingsListItem href="/settings/about" label="About Pinafore"/>
|
||||
</SettingsList>
|
||||
|
||||
|
@ -20,4 +21,4 @@
|
|||
SettingsListItem
|
||||
}
|
||||
}
|
||||
</script>
|
||||
</script>
|
||||
|
|
20
src/routes/settings/hotkeys.html
Normal file
20
src/routes/settings/hotkeys.html
Normal file
|
@ -0,0 +1,20 @@
|
|||
<Title name="Hotkeys" settingsPage={true} />
|
||||
|
||||
<LazyPage {pageComponent} {params} />
|
||||
|
||||
<script>
|
||||
import Title from '../_components/Title.html'
|
||||
import LazyPage from '../_components/LazyPage.html'
|
||||
import pageComponent from '../_pages/settings/hotkeys.html'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
|
||||
Title,
|
||||
LazyPage
|
||||
},
|
||||
data: () => ({
|
||||
pageComponent
|
||||
})
|
||||
}
|
||||
</script>
|
Loading…
Reference in a new issue