docs: def redock_sidebar(self, window_key, sidebar_name, controller_name, widget, event=None):
          """Redock/embed sidebar into main window
  
          The size & position of the open window are saved to the runtime_config file, the sidebar is redocked back
          to the main-window, and the left-bar window is hidden. The undock button of the bar is made visible again.
          """
          config_parameter_undocked = window_key + '_WINDOW_UNDOCKED'
          config_id_for_pane_position = window_key + '_DOCKED_POS'
          undocked_window_name = window_key.lower() + '_window'
          widget_name = window_key.lower()
          undocked_window_view = getattr(self.view, undocked_window_name)
  
          self.view['main_window'].disconnect(self.handler_ids[undocked_window_name]['state'])
          getattr(self, 'on_{}_return_clicked'.format(widget_name))(None)
  
          undocked_window_view['central_eventbox'].remove(self.view[widget_name])
          self.view[sidebar_name].pack_start(self.view[widget_name], True, True, 0)
  
          self.get_controller(controller_name).hide_window()
          self.view['undock_{}_button'.format(widget_name)].show()
  
          # restore the position of the pane
          self.set_pane_position(config_id_for_pane_position)
  
          global_runtime_config.set_config_value(config_parameter_undocked, False)
          return True