It occurs to me that this is pretty confusing...the "doFind" event actually fires whenever the user hits enter in one of the input fields (even if it's the "replace" field), whereas the "doReplace" event fires when the user clicks the Replace or Replace All buttons. This is partly due to the fact that the behavior of the Enter key was originally consistent in both the Find and Replace fields (in the single-file case), where it does a "Find" in both cases. But in the multi-file case, we decided to make hitting Enter in the Find field and Replace fields do different things. So maybe at this point it would be better to not try to make these events be so semantic, and have them be more granular (e.g. "findInput", "replaceInput", "replaceButtonClick", "replaceAllButtonClick", etc.)