Similar to the reordering case, when a label is moved from another widget, the _labels FlowLayout is repopulated by first removing all existing widgets (hiding them) and then re-adding all widgets from self._traces.
This approach, while ensuring the correct order, might have performance implications if there are many labels in the target subplot, potentially causing flicker. This is a consequence of FlowLayout lacking direct indexed insertion.
Originally posted by @gemini-code-assist[bot] in #2 (comment)