mbox series

[v3,0/2] Create menus in iothread

Message ID 20220321041043.24112-1-akihiko.odaki@gmail.com (mailing list archive)
Headers show
Series Create menus in iothread | expand

Message

Akihiko Odaki March 21, 2022, 4:10 a.m. UTC
Commit 0439c5a4623d674efa0c72abd62ca6e98bb7cf87 introduced an
assertion that blk_all_next is called in the main thread. The function
is called in the following chain:
- blk_all_next
- qmp_query_block
- addRemovableDevicesMenuItems
- main

This change moves the menu creation to the iothread. This also changes
the menu creation procedure to construct the entire menu tree before
setting to NSApp, which is necessary because a menu set once cannot be
modified if NSApp is already running.

v2: Separate a change moving create_initial_menus (Peter Maydell)

v3: Rebased to commit 2058fdbe81e2985c226a026851dd26b146d3395c

Akihiko Odaki (2):
  ui/cocoa: Move create_initial_menus
  ui/cocoa: Create menus in iothread

 ui/cocoa.m | 209 +++++++++++++++++++++++++----------------------------
 1 file changed, 98 insertions(+), 111 deletions(-)