Skip to content

Commit

Permalink
Add descriptions to Decky titleview DialogButtons (#502)
Browse files Browse the repository at this point in the history
* chore: add onOKActionDescriptions to decky titleview

This is in preparation for beebles' custom titleview. Since plugins may reuse the same icons in their custom titleviews, it will be a good practice to disambiguate their meanings. In the Steam UI, any icon button has a matching description.

* chore: implement it using the translation framework

---------

Co-authored-by: Marco Rodolfi <marco.rodolfi@tuta.io>
  • Loading branch information
ferothefox and RodoMa92 committed Jul 9, 2023
1 parent 6b3f9e4 commit 7c805e9
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 0 deletions.
4 changes: 4 additions & 0 deletions backend/locales/en-US.json
Expand Up @@ -234,6 +234,10 @@
"testing": "Testing"
}
},
"TitleView":{
"decky_store_desc": "Open Decky Store",
"settings_desc": "Open Decky Settings"
},
"Updater": {
"decky_updates": "Decky Updates",
"no_patch_notes_desc": "no patch notes for this version",
Expand Down
4 changes: 4 additions & 0 deletions frontend/src/components/TitleView.tsx
@@ -1,5 +1,6 @@
import { DialogButton, Focusable, Router, staticClasses } from 'decky-frontend-lib';
import { CSSProperties, VFC } from 'react';
import { useTranslation } from 'react-i18next';
import { BsGearFill } from 'react-icons/bs';
import { FaArrowLeft, FaStore } from 'react-icons/fa';

Expand All @@ -13,6 +14,7 @@ const titleStyles: CSSProperties = {

const TitleView: VFC = () => {
const { activePlugin, closeActivePlugin } = useDeckyState();
const { t } = useTranslation();

const onSettingsClick = () => {
Router.CloseSideMenus();
Expand All @@ -31,12 +33,14 @@ const TitleView: VFC = () => {
<DialogButton
style={{ height: '28px', width: '40px', minWidth: 0, padding: '10px 12px' }}
onClick={onStoreClick}
onOKActionDescription={t('TitleView.decky_store_desc')}
>
<FaStore style={{ marginTop: '-4px', display: 'block' }} />
</DialogButton>
<DialogButton
style={{ height: '28px', width: '40px', minWidth: 0, padding: '10px 12px' }}
onClick={onSettingsClick}
onOKActionDescription={t('TitleView.settings_desc')}
>
<BsGearFill style={{ marginTop: '-4px', display: 'block' }} />
</DialogButton>
Expand Down

0 comments on commit 7c805e9

Please sign in to comment.