What does {'INTERFACE'} mean when returned from `invoke`, `modal` or `execute`? In version 2.72 a new return value for invoke, modal and execute got introduced: {'INTERFACE'}- It is documented as


  INTERFACE Interface, Handled but not executed (popup menus).


What does this actually mean when comparing the Operator's control flow to that of returning one of the other values?
The 'INTERFACE' operator return value is used to indicate where an operator has successfully completed by opening a menu or other UI component.

The comment in the source code for the operator return types states that it is:

/* "used for operators that act indirectly (eg. popup menu)" */
/* "note: this isn't great design (using operators to trigger UI) avoid where possible." */



  Source: source/blender/makesdna/DNA_windowmanager_types.h


This new return type was added during Commit - Fix T41041: "'Delete keyframe' removes markers too"

Reason for commit update was: 


  "Operators that trigger UI events (but nothing else)
  were using 'CANCELLED' making it impossible to tell if an invoke
  function failed, or opened a menu."