9e4e81eb0d
feat(win32 gui): read fontface and size from gui_config
2025-01-08 15:57:38 +01:00
eaa7ad87b7
feat(win32 gui): add gui_config.json config file
2025-01-08 14:36:43 +01:00
5c6c9acaa9
fix(win32 gui): round down CellSize to avoid gaps between cells
2025-01-08 12:12:57 +01:00
Jonathan Marler
337b6ce626
win32 gui: rework startup/hwnd sync
2025-01-07 22:02:16 +01:00
Jonathan Marler
ff7bdeef6b
win32 gui: render unicode replacement_char on invalid chars
2025-01-07 19:02:33 +01:00
0c7f19b5dd
feat: support matching of shifted keybindings
...
This allows us to bind things like alt+F and ctrl+?. Binding
with and explicit shift modifier is still allowed, such as alt+shift+f.
2025-01-07 14:53:34 +01:00
689b2ca410
feat(win32 gui): send both shifted and un-shifted input keycodes/codepoints
...
Also, send input text only for non-modified events.
2025-01-07 14:53:34 +01:00
Jonathan Marler
d90d82a4b7
win32 gui: remove bespoke/incorrect key translation
...
I played around with the API a bit and I tried out the other approach
where instead of trying to implement our own keyboard translation, instead
I just clear the "control key" before calling ToUnicode. This fixes any
weird translation the OS was doing.
With this change, we no longer need to skip calling ToUnicode if the
control or alt keys are down, so keys will always work the same way whether
or not these modifiers are down.
2025-01-07 14:53:34 +01:00
4c73948068
feat(win32 gui): send terminal background updates to gui
2025-01-07 10:31:17 +01:00
Jonathan Marler
c7d6bd6805
win32 gui: unbreak window icon
...
woops, accidently broke the window icon by moving the code that loads
it after calling RegisterClass, here's the fix
2025-01-06 20:27:56 +01:00
cd2aba6a74
fix(win32 gui): don't panic on bad unicode result and reduce info logging
2025-01-06 17:03:02 +01:00
93d6ee2626
fix(win32 gui): set window title after gui window is created
2025-01-06 16:49:57 +01:00
e4fef98fcd
fix(win32 gui): add mapping for left_super
2025-01-06 16:00:17 +01:00
a6b29e4fe9
feat(win32 gui): issue quit command on window close and exit cleanly
2025-01-06 10:56:36 +01:00
Jonathan Marler
21a7106fe3
win32 gui: mouse drag
...
initial implementation for left mouse drag
2025-01-06 08:35:16 +01:00
Jonathan Marler
592e812bf4
win32 gui: implement window placement and higher DPI icons
2025-01-06 07:42:18 +01:00
Jonathan Marler
2af5cc9774
win32 gui: don't center text
2025-01-06 07:40:58 +01:00
Jonathan Marler
67613c5bc4
win32 gui: decide on aligning cells to pixel boundary
2025-01-06 07:40:58 +01:00
Jonathan Marler
456ec8535b
win32 gui: fix some issues with cell sizing/alignment
2025-01-06 07:40:58 +01:00
Jonathan Marler
f2a9cb0d6a
win32 gui: performance fix, don't call DrawText for space characters
2025-01-05 22:11:58 +01:00
Jonathan Marler
ff04602d1c
win32: fix backspace
2025-01-05 20:32:37 +01:00
Jonathan Marler
d3159bf334
win32: fix keyboard issues
...
closes #114
closes #113
closes #108
Co-authored-by: CJ van den Berg <cj@vdbonline.com>
2025-01-05 20:05:15 +01:00
9d9372bfe0
fix(win32 gui): send initial resize event on window creation
...
closes #115
2025-01-05 15:17:25 +01:00
6257c9d721
feat(win32 gui): add indexed color support
2025-01-04 22:42:15 +01:00
Jonathan Marler
5bc3cd6a6d
win32 gui: implement set_terminal_title
2025-01-04 13:13:13 -07:00
Jonathan Marler
38f7cbcaab
win32 gui: key translation fixes
2025-01-04 12:01:41 -07:00
Jonathan Marler
67ca29f2c8
win32 gui: handle DPI changes
2025-01-04 11:02:42 -07:00
9be68a2206
fix(win32): translate win32 virtual key codes
2025-01-04 18:01:04 +01:00
3d0bc59b0c
fix(win32): cell size calculation and don't recalculate as often
2025-01-04 17:37:52 +01:00
68d2c4d053
feat(win32): add mouse wheel support
2025-01-04 17:20:52 +01:00
33e36c080d
fix: win32 renderer event tag
2025-01-04 15:27:05 +01:00
Jonathan Marler
1a595871dd
win32 standalone gui
2025-01-04 15:18:49 +01:00