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

Pipemenu and submenuShowDelay #1150

Open
3 of 7 tasks
johanmalm opened this issue Oct 9, 2023 · 4 comments
Open
3 of 7 tasks

Pipemenu and submenuShowDelay #1150

johanmalm opened this issue Oct 9, 2023 · 4 comments
Milestone

Comments

@johanmalm
Copy link
Collaborator

johanmalm commented Oct 9, 2023

Implement cat B+ items 7.1.4 and 2.11.3

https://github.com/labwc/labwc-scope/blob/main/incomplete-cat-B-items.md

The notes below are are based on an IRC discussion. Critique + review + ideas welcome, but it's mostly there as a note-to-self so that I remember what I'm doing.

  • Split parse_xml() to take fp from fopen() or popen()
  • Replace bespoke array with wl_list to make iteration easier when splitting menu.c
  • Implement pipe menus Support pipemenus #1216
  • Split menu.c
  • Move handle_menu_keys() to menu/input.c
  • Refactor menu_configure() to be called in real time rather just once on initialization (which is fine for a static menu, but not so good for a dynamic one).
  • Re-consider what server->menu variables we want (currently just menu_current, but no selection)
  • Should menu struct contain size/offset?
  • Implement submenu delay
  • Handle menus which are too big for usable_output
@Consolatis
Copy link
Member

Consolatis commented Oct 9, 2023

Move handle_menu_keys() to menu/input.c

Do we really want to do that? It uses various XKB_KEY_ defines and basically just maps keys to actions. I think src/keyboard.c is a good fit along with the other keybind handling.

Moving the handlers that are called by that function (and those that are called by src/cursor.c like menu_process_cursor_motion) somewhere else within src/menu/ sounds totally fine, just not sure about handle_menu_keys() itself.

Another thing: do we want a private and public header similar to ssd.h and ssd-internal.h?

@johanmalm
Copy link
Collaborator Author

Okay. I'll split without moving the key-handling thing into it.

Yes, good idea about a private header.

@Consolatis Consolatis added this to the 0.7.2 milestone Mar 20, 2024
@Consolatis
Copy link
Member

Marked the pipe menu entry as done. Is there anything you want to see in 0.7.2? Otherwise I'd suggest that we move this to the 0.7.3 milestone.

@johanmalm johanmalm modified the milestones: 0.7.2, 0.7.3 Apr 11, 2024
@johanmalm
Copy link
Collaborator Author

Thanks. Nothing else is imminent. I've moved it to 0.7.3

johanmalm added a commit to johanmalm/labwc that referenced this issue Jun 29, 2024
Also, always top-align submenus intead of inheriting the vertical
alignment of their parent. This is consitent with Openbox behaviour.

Related-to: labwc#1150
johanmalm added a commit to johanmalm/labwc that referenced this issue Jul 1, 2024
@Consolatis Consolatis modified the milestones: 0.7.3, 0.7.4 Jul 9, 2024
@Consolatis Consolatis modified the milestones: 0.7.4, 0.8.0 Jul 17, 2024
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

No branches or pull requests

2 participants