title: AngularJS UI route not recognising manually (mis)typed routes
body: <p>Basic problem is, I have a modal window which I want to activate when certain terms are not satisfied. Modal should be active ( disabling user to do anything else but clicking on a modal button) on every state/URL change. I managed to have that working when manually typing correct 'state addresses', e.g. there is state.('dogs') and when I type 'dogs', modal stands open and nothing else is happening. Yet, if I mistype e.g. 'dogzz' modal closes.</p>
  
  <p>The root of the problem is that I control modal with </p>
  
  <pre><code>$rootScope.$on('$stateChangeStart', function(event...
  </code></pre>
  
  <p>It turns that UI-Router won't detect anything that isn't registered as a state? I tried</p>
  
  <pre><code>$rootScope.$on('$stateChangeError', function (event) {...
  </code></pre>
  
  <p>and it won't catch 'irregular' i.e. mistyped URL. I console logged </p>
  
  <pre><code>'$stateNotFound', '$stateChangeError', '$stateChangeStart'
  </code></pre>
  
  <p>and nothing catches mistyped URLs. Searching for some universal, non ui-router solution didn't help, which is kinda strange because 'route prevent' problem seems to be universal.</p>
  
  <p>So, I need to catch mistyped route changes, in essence.</p>