1
0
mirror of https://github.com/laurent22/joplin.git synced 2024-12-27 10:32:58 +02:00
joplin/packages/app-desktop/gui/KeymapConfig/styles/index.ts
Helmut K. C. Tessarek 340312fa80
Desktop: Fix handling of certain keys in shortcut editor (#4022)
String.fromCharCode expects unicode charcodes as an argument; e.keyCode returns javascript keycodes.
Javascript keycodes and unicode charcodes are not the same thing!

Therefore I used an array to map keycodes. This seems to be the only way to make this work properly.

I also changed the width of the shortcut recorder input field to 200px, since certain key combinations are cut off, because they don't fit in the field.
2020-11-12 18:40:00 +00:00

89 lines
1.7 KiB
TypeScript

const { buildStyle } = require('@joplin/lib/theme');
export default function styles(themeId: number) {
return buildStyle('KeymapConfigScreen', themeId, (theme: any) => {
return {
container: {
...theme.containerStyle,
padding: theme.configScreenPadding,
backgroundColor: theme.backgroundColor3,
},
actionsContainer: {
display: 'flex',
flexDirection: 'row',
},
recorderContainer: {
padding: 2,
flexGrow: 1,
},
filterInput: {
...theme.inputStyle,
flexGrow: 1,
minHeight: 29,
alignSelf: 'center',
},
recorderInput: {
...theme.inputStyle,
minHeight: 29,
width: '200px',
},
label: {
...theme.textStyle,
alignSelf: 'center',
marginRight: 10,
},
table: {
...theme.containerStyle,
marginTop: 16,
overflow: 'auto',
width: '100%',
},
tableShortcutColumn: {
...theme.textStyle,
width: '60%',
},
tableCommandColumn: {
...theme.textStyle,
width: 'auto',
},
tableCell: {
display: 'flex',
flexDirection: 'row',
},
tableCellContent: {
flexGrow: 1,
alignSelf: 'center',
},
tableCellStatus: {
height: '100%',
alignSelf: 'center',
},
kbd: {
fontFamily: 'sans-serif',
border: '1px solid',
borderRadius: 4,
backgroundColor: theme.raisedBackgroundColor,
padding: 2,
paddingLeft: 6,
paddingRight: 6,
},
disabled: {
color: theme.colorFaded,
fontStyle: 'italic',
},
inlineButton: {
...theme.buttonStyle,
marginLeft: 12,
},
warning: {
...theme.textStyle,
backgroundColor: theme.warningBackgroundColor,
paddingLeft: 16,
paddingRight: 16,
paddingTop: 2,
paddingBottom: 2,
},
};
});
}