         clearTimeout @_sleepCountdown
         duration = 0
         wake()
-      else if (evt? and evt.type is 'truemouseenter')
+      else if event? and event.type is 'truemouseenter'
         triggerChanged = yes
         @_state = 'waking'
         @_wakeCountdown = setTimeout wake, delay

  #
  # - `ms.duration`- Duration of sleep and wake animations.
  # - `ms.delay` - Delay before sleeping and waking.
  # - `cls.stem` - Empty to remove the stem.
  # - `cls.follow` - Empty to disable cursor following.
  # - `safeToggle` - Prevents orphan tips, since timers are sometimes unreliable.
  hlf.tip =
    debug: off

    #   4. If we are in the middle of sleeping, stop and speed up our waking
    #      transition.
    #   5. Update our trigger cache.
    wakeByTrigger: ($trigger, event, onWake) ->
      # - Check.
      triggerChanged = not $trigger.is @_$currentTrigger
      if triggerChanged
        @_inflateByTrigger $trigger
        @_$currentTrigger = $trigger
      # - Guard.
      if @_state is 'awake' and onWake?
        onWake()
        @debugLog 'quick update'
        return yes
      if event? then @debugLog event.type
      return no if @_state in ['awake', 'waking']
      # - Prepare.
      delay = @ms.delay.in
      duration = @ms.duration.in
      wake = =>
        @onShow triggerChanged, event
        @$tip.fadeIn duration, =>
          if triggerChanged
            onWake() if onWake?
          if @safeToggle is on then @$tip.siblings(@classNames.tip).fadeOut()
          @afterShow triggerChanged, event
          @_state = 'awake'
      # - Run.
      if @_state is 'sleeping'
