docs: def on_channel_click(self, channel_id=None, key=None, button=None):
          """Respond to the click on a channel."""
          channels = self.channel_ids
          if channels is None:
              return
          if len(channels) == 1:
              self.on_select()
              return
          assert len(channels) >= 2
          # Get the axis from the pressed button (1, 2, etc.)
          # axis = 'x' if button == 1 else 'y'
          d = 0 if button == 1 else 1
          # Change the first or second best channel.
          old = channels[d]
          # Avoid updating the view if the channel doesn't change.
          if channel_id == old:
              return
          channels[d] = channel_id
          # Ensure that the first two channels are different.
          if channels[1 - d] == channel_id:
              channels[1 - d] = old
          assert channels[0] != channels[1]
          # Remove duplicate channels.
          self.channel_ids = _uniq(channels)
          logger.debug("Choose channels %d and %d in feature view.",
                       *channels[:2])
          # Fix the channels temporarily.
          self.on_select(fixed_channels=True)