Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Feature request]: Access previously received messages on-device #1985

Closed
tropho23 opened this issue Nov 24, 2022 · 14 comments
Closed

[Feature request]: Access previously received messages on-device #1985

tropho23 opened this issue Nov 24, 2022 · 14 comments
Labels
device-screen Device Screen Enhancements enhancement New feature or request help wanted Extra attention is needed Stale

Comments

@tropho23
Copy link
Contributor

tropho23 commented Nov 24, 2022

Request capability for users to access (and delete) previously received messages, stored on-device using the Store and Forward (S&F) module, and displayed on the device screen. This could be used for any device, not just standalone messengers with keyboard or rotary encoder but that is the intended use case. The 'one button' library supports button longpress and other features to support this.

I propose UI navigation solutions below to enable users to invoke a UI level to view and scroll through received messages; one for rotary encoder and one for CardKB users. Ideally a single solution would be implemented for simplicity, assuming there is a way to do so without conflicting with current button assignments. However, button assignments could be modified to support this.

This feature request is associated with feature request #1983 (Store and Forward module), which would presumably be required for this feature request to work.

Using a Rotary encoder:

  1. User longpresses encoder to access 'Received Messages' menu
  2. Screen displays 'Received Messages' on top row of screen
  3. Rows below top row display received messages in descending order (newest first)
  4. Newest received message received at 05:00 is highlighted by default (inverse text)
    4a. CW encoder rotation scrolls to the next oldest message received at 04:58
    4b. CCW encoder rotation scrolls back to the newer received message
  5. Single press of encoder presents two choices to user: View and Delete (view highlighted by default)
    5a. CW/CCW encoder rotation highlights View or Delete, single press of encoder selects choice
    5b. If user selects Delete, present user with confirmation "Delete this message?", single press of encoder confirms and the list of received messages is again displayed, minus the deleted message
    5c. If user selects View, display selected message onscreen
    5d. A second single press of encoder dismisses the message, going back to the list of received messages
  6. Longpress encoder rotation dismisses the received messages list, returns to main screen
    6a. Longpressing encoder should also exit the received messages list and/or menus at any time

Using a CardKB keyboard (and future supported keyboards):

  1. User presses a custom key combination (e.g. fn key, then M key for example)
  2. Screen displays 'Received Messages' on top row of screen
  3. Rows below top row display received messages in descending order (newest first)
  4. Newest received message received at 05:00 is highlighted by default (inverse text)
    4a. Down arrow key scrolls to the next oldest message received at 04:58
    4b. Up arrow key scrolls back to the newer received message
  5. Pressing the enter key presents two choices to user: View and Delete (view highlighted by default)
    5a. Up/down arrow keys highlight View or Delete, enter key selects choice
    5b. If user selects Delete, present user with confirmation "Delete this message?", enter key confirms and the list of received messages is again displayed, minus the deleted message
    5c. If user selects View, display selected message onscreen
    5d. Backspace key dismisses the message, going back to the list of received messages
  6. ESC key dismisses the received messages list, returns to main screen
    6a. ESC key should also exit the received messages list and/or menus at any time
@tropho23 tropho23 changed the title Feature request: Access previously received messages on-device [Feature request]: Access previously received messages on-device Nov 24, 2022
@tropho23
Copy link
Contributor Author

I forgot to include that deleting previously received messages is not a critical need, but would be nice to have.

@caveman99 caveman99 added enhancement New feature or request help wanted Extra attention is needed labels Nov 25, 2022
@garthvh
Copy link
Member

garthvh commented Nov 25, 2022

There are not very many messages stored on device, would this need to get / delete the message from the S&F device on the mesh?

@tropho23
Copy link
Contributor Author

tropho23 commented Nov 25, 2022 via email

@thebentern thebentern added the low-priority Possibly something we'll consider in the future but doesn't serve the core use-cases or problematic label May 25, 2023
@garthvh garthvh added device-screen Device Screen Enhancements and removed low-priority Possibly something we'll consider in the future but doesn't serve the core use-cases or problematic labels Jun 14, 2023
@Nikguy321
Copy link

Any movement on this?

@RicInNewMexico
Copy link
Member

I'm going to toss this onto the 3.0 project list simply because it can be part of the overall UI rework that's already planned. We have multiple device platforms now able to send/receive messages without an attached PC or phone running a client. It only makes sense that our firmware (and it's UI) should be able to display more than just the most recently received message (at least on devices with sufficient storage).

@Nikguy321
Copy link

How is this going?

@garthvh
Copy link
Member

garthvh commented Oct 15, 2023

No progress, pull requests are welcome.

@0100010
Copy link

0100010 commented Feb 14, 2024

This, would be really nice to have; come on 3.0...

@tropho23
Copy link
Contributor Author

I realized today that long-pressing a rotary encoder doesn't do anything as it's not a 'real' user button, it just performs the user button select action.

We'll have to change my proposed UI actions flow in my original issue description to figure out what to substitute for a secondary action (double press maybe?)

@jp-bennett
Copy link
Collaborator

I realized today that long-pressing a rotary encoder doesn't do anything as it's not a 'real' user button, it just performs the user button select action.

The big question, IMO, is whether we can capture a long press, and treat it as the user button. And if we can, we probably should.

@tropho23
Copy link
Contributor Author

I realized today that long-pressing a rotary encoder doesn't do anything as it's not a 'real' user button, it just performs the user button select action.

The big question, IMO, is whether we can capture a long press, and treat it as the user button. And if we can, we probably should.

Yes, long press would be quite valuable

@ea3iav
Copy link

ea3iav commented Apr 21, 2024

Up!
There are now at least three standalone devices populating the market. All that screens to just display the last message 😞

@HarukiToreda
Copy link
Contributor

HarukiToreda commented Apr 21, 2024

I realized today that long-pressing a rotary encoder doesn't do anything as it's not a 'real' user button, it just performs the user button select action.

The big question, IMO, is whether we can capture a long press, and treat it as the user button. And if we can, we probably should.

unfortunately the cardKB firmware doesn't register long presses on keys other than Shift, Sym and Fn, changing that would require modifying the cardKB firmware.

Another option could be Fn+Up (0x99) and Fn+Down (0xA4)

and last suggestion would be to separate the CardKB settings from Canned Messages and create a Standalone Module which will allow for more standalone features and keep the code clean. Considering that canned messages would no longer be needed or as necessary with a full keyboard available. We've already implemented dissabling gps and notification with keystrokes which have nothing to do with canned messages, I can already see more features to come because of it.

@thebentern
Copy link
Contributor

thebentern commented May 5, 2024

Closed by #3784
and #3259. Anything remaining can be opened in a Discussion or a subsequent Issue.

@GUVWAF GUVWAF moved this from To-Do to In Progress in Meshtastic 3.0 Goals and Ideas Jun 8, 2024
@github-actions github-actions bot added the Stale label Nov 1, 2024
@github-actions github-actions bot closed this as not planned Won't fix, can't repro, duplicate, stale Nov 9, 2024
@github-project-automation github-project-automation bot moved this from In Progress to Done in Meshtastic 3.0 Goals and Ideas Nov 9, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
device-screen Device Screen Enhancements enhancement New feature or request help wanted Extra attention is needed Stale
Projects
Development

No branches or pull requests

10 participants