       when @inputSummary.keyName is "return"
         true
       else
-        unhandledAddition = mutationSummary.textAdded? and mutationSummary.textAdded isnt @inputSummary.textAdded
+        unhandledAddition = mutationSummary.textAdded isnt @inputSummary.textAdded
         unhandledDeletion = mutationSummary.textDeleted? and not @inputSummary.didDelete
         not (unhandledAddition or unhandledDeletion)
 


    compositionstart: (event) ->
      @mutationObserver.stop()

    compositionend: (event) ->
      if (composedString = event.data)?
        @delegate?.inputControllerWillPerformTyping()
        @responder?.insertString(composedString)
        @setInputSummary(textAdded: composedString, didDelete: @selectionIsExpanded())
      @mutationObserver.start()

    input: (event) ->
      event.stopPropagation()

            break

        if context[keyName]?
          summary = {keyName, keyModifier}
          if endingComposition
            @extendInputSummary(summary)
          else
            @setInputSummary(summary)

          Trix.selectionChangeObserver.reset()
          context[keyName].call(this, event)

