johnnovak / gridmonger

Your trusty old-school cRPG mapping companion
https://gridmonger.johnnovak.net/
Do What The F*ck You Want To Public License
52 stars 2 forks source link

Platform: consider making `cmd` the modifier key on MacOS #16

Closed peterb12 closed 1 week ago

peterb12 commented 2 weeks ago

For most Mac programs, "cmd" is the primary modifier key, as opposed to control. If the framework you're using allows it, you might consider making that the equivalent of control on the platform.

Let's be honest, anyone using Gridmonger is gonna be fine using control instead. And changing documentation strings would be annoying. But I'll suggest it anyway in case you somehow get this "for free".

(By the way, in case no one else has said it to you - I really appreciate your making GridMonger multi-platform. I use it on both Mac and Windows.)

johnnovak commented 2 weeks ago

For most Mac programs, "cmd" is the primary modifier key, as opposed to control. If the framework you're using allows it, you might consider making that the equivalent of control on the platform.

It's my own GUI framework, so it allows what I teach it to allow. 😎 It sits on top of GLFW for OpenGL context and OS-specific input/windowing system abstractions, so I'm interpreting the raw keyboard events myself.

Let's be honest, anyone using Gridmonger is gonna be fine using control instead. And changing documentation strings would be annoying. But I'll suggest it anyway in case you somehow get this "for free".

It's a fair point and it tripped me up a few times as well on my Mac. It's not particularly hard to do, and another Mac user asked for it last week, so I'll just default to Cmd on Mac. Then you can switch it back to Ctrl in the preferences even on the Mac if you wish to do so.

(By the way, in case no one else has said it to you - I really appreciate your making GridMonger multi-platform. I use it on both Mac and Windows.)

Thanks, man 😎 Yeah, doing anything for a single platform only seems wasted effort to me, personally. I want to be able to keep using my own programs on any major OS if I switch my main OS in the future. Plus although I use GM on Windows to play games, I develop it on my MacBook 99% of the time. Just a lot more convenient for me, personally, than to sit in front of my desktop PC.

I also find doing things cross-platform by default good for general hardening and it kinda forces you to do a better overall design. It's hard to retrofit such things. Also, GM started 50% as a vehicle to test my custom-drawn GUI ideals to create a nice UX that looks and behaves the same way on all platforms, and a "catalyst" to develop my own GUI toolkit.

My views on cross-platform UIs if you're interested. I wrote it in 2016 but still 100% relevant (well, at least my views haven't changed 😏 ). https://blog.johnnovak.net/2016/05/29/cross-platform-gui-toolkit-trainwreck-2016-edition/

And yeah, an official Linux release is coming this year too at some point.

johnnovak commented 1 week ago

This has been implemented.