Files
firmware/src/graphics
Ben Meadors fb6a212b44 fix(graphics): make on-screen keyboard lifecycle safe and RAII-managed (#11460)
- VirtualKeyboard::handleLongPress VK_ESC invoked the onTextEntered
  member std::function directly, but that callback path reaches
  OnScreenKeyboardModule::stop(), which destroys the keyboard - and
  with it the std::function whose invocation is still on the stack.
  handlePress and submitText already deliberately copy-and-clear before
  invoking for exactly this reason (CannedMessageModule documents the
  same hazard); do the same here.

- OnScreenKeyboardModule's keyboard becomes unique_ptr, replacing the
  delete-in-destructor / delete-then-new-in-start / delete-in-stop
  bookkeeping that runs on every keyboard open/close. The
  NotificationRenderer legacy hook receives a non-owning raw pointer,
  as before.
2026-08-14 10:05:16 +00:00
..
2026-02-19 07:16:33 -06:00
2026-07-16 18:35:33 -05:00
2026-07-31 17:29:21 +00:00
2026-02-19 07:16:33 -06:00
2026-07-16 18:35:33 -05:00
2026-02-19 07:16:33 -06:00
2026-07-20 11:55:17 +02:00