[PR #203] [CLOSED] Adds 'Mods only' visualizer #321

Closed
opened 2026-05-05 05:13:02 -06:00 by gitea-mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/keycastr/keycastr/pull/203
Author: @colinta
Created: 5/20/2021
Status: Closed

Base: minimal-visualizerHead: main


📝 Commits (6)

  • c56f2d3 adds 'Mods only' visualizer
  • 43f8fa0 updates for Sonoma to ignore mouse events (resize frame on mods change)
  • 064f574 code style changes, and ordered modifiers '⌃⌥⇧⌘'
  • 6681144 supports 'FN' key, and I had the order flipped on modifiers
  • 7761adc giving up on autosave frame, using defaults directly
  • 208c648 if frame.origin.x is on left side of window, grow to the right. Otherwise grow to the left.

📊 Changes

7 files changed (+533 additions, -0 deletions)

View changed files

📝 keycastr/KCEventTap.m (+3 -0)
📝 keycastr/KeyCastr.xcodeproj/project.pbxproj (+170 -0)
keycastr/Mods-Info.plist (+22 -0)
keycastr/Mods.nib/designable.nib (+23 -0)
keycastr/Mods.nib/keyedobjects.nib (+0 -0)
keycastr/ModsVisualizer.h (+61 -0)
keycastr/ModsVisualizer.m (+254 -0)

📄 Description

I made this for my own purposes, but I'll offer it up in the spirit of open source. Based on the Svelte visualizer, this one displays the current modifiers and nothing more.

I use it because I have a custom keyboard that implements sticky keys, and I needed to see them on screen (it's easy to lose track of which keys are pressed).

Not really useful for screencasting, but it does show how to create a new visualizer. 🤷‍♂️

Example of pressing "command+shift" and "command+control+alt+shift".

screen shot 2019-02-27 at 11 08 05 am
screen shot 2019-02-27 at 11 07 47 am


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/keycastr/keycastr/pull/203 **Author:** [@colinta](https://github.com/colinta) **Created:** 5/20/2021 **Status:** ❌ Closed **Base:** `minimal-visualizer` ← **Head:** `main` --- ### 📝 Commits (6) - [`c56f2d3`](https://github.com/keycastr/keycastr/commit/c56f2d3c8d115faccb974d32daa3007c9f2923d0) adds 'Mods only' visualizer - [`43f8fa0`](https://github.com/keycastr/keycastr/commit/43f8fa0c1f91b8228253e4d9c93376cac2df03cd) updates for Sonoma to ignore mouse events (resize frame on mods change) - [`064f574`](https://github.com/keycastr/keycastr/commit/064f574dd30df309b49c524dea2141a50ee20c21) code style changes, and ordered modifiers '⌃⌥⇧⌘' - [`6681144`](https://github.com/keycastr/keycastr/commit/66811447aa83b5228d60a33811a5f46aa5cc9dc4) supports 'FN' key, and I had the order flipped on modifiers - [`7761adc`](https://github.com/keycastr/keycastr/commit/7761adce29739df571afc33e2f7038893df17ee7) giving up on autosave frame, using defaults directly - [`208c648`](https://github.com/keycastr/keycastr/commit/208c648751e099863ef630b5d80e7fe91387f1ac) if frame.origin.x is on left side of window, grow to the right. Otherwise grow to the left. ### 📊 Changes **7 files changed** (+533 additions, -0 deletions) <details> <summary>View changed files</summary> 📝 `keycastr/KCEventTap.m` (+3 -0) 📝 `keycastr/KeyCastr.xcodeproj/project.pbxproj` (+170 -0) ➕ `keycastr/Mods-Info.plist` (+22 -0) ➕ `keycastr/Mods.nib/designable.nib` (+23 -0) ➕ `keycastr/Mods.nib/keyedobjects.nib` (+0 -0) ➕ `keycastr/ModsVisualizer.h` (+61 -0) ➕ `keycastr/ModsVisualizer.m` (+254 -0) </details> ### 📄 Description I made this for my own purposes, but I'll offer it up in the spirit of open source. Based on the Svelte visualizer, this one displays the current modifiers and nothing more. I use it because I have a custom keyboard that implements sticky keys, and I needed to see them on screen (it's easy to lose track of which keys are pressed). Not really useful for screencasting, but it does show how to create a new visualizer. 🤷‍♂️ Example of pressing "command+shift" and "command+control+alt+shift". ![screen shot 2019-02-27 at 11 08 05 am](https://user-images.githubusercontent.com/27570/53504478-0d9b0980-3a80-11e9-86e6-46638da17838.png) ![screen shot 2019-02-27 at 11 07 47 am](https://user-images.githubusercontent.com/27570/53504489-112e9080-3a80-11e9-85c5-53a08577a9da.png) --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
gitea-mirror 2026-05-05 05:13:02 -06:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/keycastr#321
No description provided.