code: def focus_cb(self, viewer, tf, name):
          
          if not self.settings.get('channel_follows_focus', False):
              return True
  
          self.logger.debug("focus %s=%s" % (name, tf))
          if tf:
              if viewer != self.getfocus_viewer():
                  self.change_channel(name, raisew=False)
  
          return True
docs: Called when ``viewer`` gets ``(tf==True)`` or loses
          ``(tf==False)`` the focus.