8000 Adjust Minimal visualizer keystroke filtering options by colinta · Pull Request #354 · keycastr/keycastr · GitHub
[go: up one dir, main page]

Skip to content

Adjust Minimal visualizer keystroke filtering options - #354

Merged
akitchen merged 1 commit into
keycastr:mainfrom
colinta:colinta--hide-printables
Sep 7, 2026
Merged

akitchen merged 1 commit into
keycastr:mainfrom
colinta:colinta--hide-printables

Conversation

@colinta
@colinta colinta commented Sep 1, 2026
Copy link
Copy Markdown
Contributor

I only use Minimal visualizer to show my modifiers, no navigation or printable characters.

I noticed that the visualizer was showing ⌃ and ⌘ correctly, and hiding ← and a

But if I press ⌥←, this would show both characters, instead of showing only ⌥

return [ud boolForKey:@"minimal.display.specialKeys"];
}

return [ud boolForKey:@"minimal.display.allKeys"];
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

These last two checks were returning YES for all keys because the modifier was pressed.

: @"minimal.display.allKeys";
if (![ud boolForKey:baseKeyPreference]) {
return NO;
}
@colinta colinta Sep 1, 2026 •
Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Check whether to show keystroke.keyCode based on the appropriate preference.

@colinta
colinta commented Sep 1, 2026 •
Copy link
Copy Markdown
Contributor Author

Looking at code comments, I'm not sure if the intended behaviour was to show ⌘← even when "Show navigation keys" is unchecked... but it certainly seems like the wrong behaviour to me.
image

Likewise, it's strange to me that Modifiers (⌘ etc) are shown even when Command keys / Modified keys is unchecked. These settings are strangely worded, if the intention is to show key chords.

@colinta
colinta commented Sep 1, 2026
Copy link
Copy Markdown
Contributor Author

@akitchen I'm going to propose this change, I know this isn't what you implemented here, but coming in with fresh eyes, and knowing the original intended use case...

The preferences as you have them:

  • Always shows modifiers - I guess that's what the visualizer does? Then why is it called "Minimal" why not "Modifiers". To be explicit: whether to show ⌘⌥⇧⌃ ignores "Command keys" and "Modified keys" settings (also let's talk about the labels here – "command" mean ⌘ and ⌃ - and "modified" means ⌥? strange)
  • if Command keys is pressed, chords that use ⌘ or ⌃ are also shown
  • likewise Modified setting shows ⌥-chords
  • 'Include fn key' works differently - it decides whether to ever show the fn key (this is how I expected the other options to behave)
  • Special & Nav keys - this option decides whether to show these keys when a modifier isn't pressed
  • Likewise All keys determines whether to show printables when a modifier isn't pressed

Andrew these settings are bonkers, do you disagree? They're all over the place. I propose this:

image

Just a simple filter. Each checkbox does what it says - on every keypress, create the label, then filter based on these settings. Bam, simple, done. WDYT?

@colinta
colinta force-pushed the colinta--hide-printables branch from c5867f5 to c258044 Compare September 1, 2026 17:36
@colinta
colinta force-pushed the colinta--hide-printables branch from c258044 to 61e4195 Compare September 1, 2026 17:46
@akitchen
akitchen commented Sep 1, 2026
Copy link
Copy Markdown
Member

Yeah I agree it's confusing, how to structure the key filtering for this first release wasn't really clear and it was time to get something into people's hands. So I'm happy to iterate on this.

Maybe the question to consider is whether we're just filtering different kinds of key presses, or working with the semantic meaning of different kinds of keystrokes (commands, modified keys, navigation keys, etc.).

@colinta
colinta commented Sep 1, 2026 •
Copy link
Copy Markdown
Contributor Author

Cool cool, sorry if I sounded hot, I thought I was being cheeky – hopefully I was! 🤣 but re-reading I sound upset. Not so, and yeah now that it's released, it'll be easier to iterate on it. 👍

@akitchen akitchen changed the title I'm back! haha - small bug in Minimal visualizer Adjust Minimal visualizer keystroke filtering options Sep 7, 2026
@akitchen
akitchen commented Sep 7, 2026
Copy link
Copy Markdown
Member

Thanks, yeah I like these options for filtering the keystrokes in this visualizer. I'll merge this and follow up with some nib cleanup and a small migration to remove the unused defaults.

@akitchen
akitchen merged commit 535a7ad into keycastr:main Sep 7, 2026
@colinta
colinta commented Sep 7, 2026
Copy link
Copy Markdown
Contributor Author

Heck yeah - thanks Andrew!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants

0