So the issue here is that if a VL that does not have a tab is applied (either through Virtual Library dropdown menu or View Manager menu), calibre will create a new tab for this VL, and in the process it re-orders the open tabs, and emit the event signal for each tab (I don't know how this happens, but I can see it by inserting debug statements).
The solution to this is to ignore all the emitted signals except the last one. This solution will have the side effect of a little lag before applying the corresponding view.
Last edited by capink; 09-28-2021 at 09:47 AM.
Reason: Remove attached zip. new version available in the first post.
|