code: def notify_change(self, change):
          
          # Send the state to the frontend before the user-registered callbacks
          # are called.
          name = change['name']
          if self.comm is not None and self.comm.kernel is not None:
              # Make sure this isn't information that the front-end just sent us.
              if name in self.keys and self._should_send_property(name, getattr(self, name)):
                  # Send new state to front-end
                  self.send_state(key=name)
          super(Widget, self).notify_change(change)
docs: Called when a property has changed.