Almost working. We re-adding setbfree with multiple manuals, the controls and option pages for the second manual are unavailable. Luckily, an error is thrown:
Jun 06 14:33:10 zynbleton startx[4761]: ERROR:zynthian_gui.cuia_thread_task: CUIA 'zynswitch' failed with params: (3, 'S')
Jun 06 14:33:10 zynbleton startx[4761]: Traceback (most recent call last):
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2735, in cuia_thread_task
Jun 06 14:33:10 zynbleton startx[4761]: self.zynswitch_short(i)
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2336, in zynswitch_short
Jun 06 14:33:10 zynbleton startx[4761]: if self.screens[self.current_screen].switch(i, 'S'):
Jun 06 14:33:10 zynbleton startx[4761]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui_mixer.py", line 2312, in switch
Jun 06 14:33:10 zynbleton startx[4761]: return self.switch_select(t)
Jun 06 14:33:10 zynbleton startx[4761]: ^^^^^^^^^^^^^^^^^^^^^
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui_mixer.py", line 2255, in switch_select
Jun 06 14:33:10 zynbleton startx[4761]: self.zyngui.chain_control()
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 1102, in chain_control
Jun 06 14:33:10 zynbleton startx[4761]: self.screens["chain_control"].reset()
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui_chain_control.py", line 105, in reset
Jun 06 14:33:10 zynbleton startx[4761]: self.set_chain()
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui_chain_control.py", line 139, in set_chain
Jun 06 14:33:10 zynbleton startx[4761]: self.chain_canvas.set_chain(self.chain_id)
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 109, in set_chain
Jun 06 14:33:10 zynbleton startx[4761]: self.build_graph()
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 296, in build_graph
Jun 06 14:33:10 zynbleton startx[4761]: self._draw_graph(proc)
Jun 06 14:33:10 zynbleton startx[4761]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 377, in _draw_graph
Jun 06 14:33:10 zynbleton startx[4761]: if type(proc) != str and type(proc_next) != str and proc.type == proc_next.type and node["slot"] == node_next["slot"]:
Jun 06 14:33:10 zynbleton startx[4761]: ^^^^^^^^^^^^^^
Jun 06 14:33:10 zynbleton startx[4761]: AttributeError: 'NoneType' object has no attribute 'type'
Also, when removing the chain from the options page of the lower manual, the screen freezes at the NO / YES dialog, also failing inside zynthian_side_chain.py on the same code:
Jun 06 14:36:24 zynbleton startx[5190]: Exception in Tkinter callback
Jun 06 14:36:24 zynbleton startx[5190]: Traceback (most recent call last):
Jun 06 14:36:24 zynbleton startx[5190]: File "/usr/lib/python3.11/tkinter/__init__.py", line 1948, in __call__
Jun 06 14:36:24 zynbleton startx[5190]: return self.func(*args)
Jun 06 14:36:24 zynbleton startx[5190]: ^^^^^^^^^^^^^^^^
Jun 06 14:36:24 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 129, in on_size
Jun 06 14:36:24 zynbleton startx[5190]: self.update_layout()
Jun 06 14:36:24 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 125, in update_layout
Jun 06 14:36:24 zynbleton startx[5190]: self._draw_graph()
Jun 06 14:36:24 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 377, in _draw_graph
Jun 06 14:36:24 zynbleton startx[5190]: if type(proc) != str and type(proc_next) != str and proc.type == proc_next.type and node["slot"] == node_next["slot"]:
Jun 06 14:36:24 zynbleton startx[5190]: ^^^^^^^^^^^^^^
Jun 06 14:36:24 zynbleton startx[5190]: AttributeError: 'NoneType' object has no attribute 'type'
Jun 06 14:36:30 zynbleton startx[5190]: ERROR:zynthian_gui.cuia_thread_task: CUIA 'zynswitch' failed with params: (3, 'S')
Jun 06 14:36:30 zynbleton startx[5190]: Traceback (most recent call last):
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2735, in cuia_thread_task
Jun 06 14:36:30 zynbleton startx[5190]: self.zynswitch_short(i)
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 2353, in zynswitch_short
Jun 06 14:36:30 zynbleton startx[5190]: self.screens[self.current_screen].switch_select('S')
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui_confirm.py", line 108, in switch_select
Jun 06 14:36:30 zynbleton startx[5190]: self.zyngui.close_screen()
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 760, in close_screen
Jun 06 14:36:30 zynbleton startx[5190]: self.show_screen(last_screen)
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui.py", line 698, in show_screen
Jun 06 14:36:30 zynbleton startx[5190]: if not dummy_show and not self.screens[screen].build_view():
Jun 06 14:36:30 zynbleton startx[5190]: ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui_chain_control.py", line 118, in build_view
Jun 06 14:36:30 zynbleton startx[5190]: self.refresh_chain()
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_gui_chain_control.py", line 102, in refresh_chain
Jun 06 14:36:30 zynbleton startx[5190]: self.chain_canvas.build_graph()
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 296, in build_graph
Jun 06 14:36:30 zynbleton startx[5190]: self._draw_graph(proc)
Jun 06 14:36:30 zynbleton startx[5190]: File "/zynthian/zynthian-ui/zyngui/zynthian_side_chain.py", line 377, in _draw_graph
Jun 06 14:36:30 zynbleton startx[5190]: if type(proc) != str and type(proc_next) != str and proc.type == proc_next.type and node["slot"] == node_next["slot"]:
Jun 06 14:36:30 zynbleton startx[5190]: ^^^^^^^^^^^^^^
Jun 06 14:36:30 zynbleton startx[5190]: AttributeError: 'NoneType' object has no attribute 'type'