title: Google Closure - Html5History fires NAVIGATE event twice
body: <p>Why does goog.history.Html5History object fire goog.history.EventType.NAVIGATE event twice each time when fragment is changed? This is the example of code:</p>
  
  <pre><code>var history = goog.history.Html5History.isSupported() 
        ? new goog.history.Html5History()
        : new goog.History();
  goog.events.listen(history, goog.history.EventType.NAVIGATE, function(e) {
        console.log(['navigation', e.target.getToken()]);
  });
  history.setEnabled(true);
  </code></pre>
  
  <p>And this is log:</p>
  
  <pre><code>["navigation", "!/properties/new"]
  ["navigation", "!/properties/new"]
  </code></pre>
  
  <p><strong>UPD:</strong> As I have figured out there are two different values of <code>isNavigation</code> field of <code>e</code> object in callback. First time it takes <code>false</code> value, and second time it takes <code>true</code> value. <code>isNavigation</code> means:</p>
  
  <blockquote>
    <p>isNavigation True if the event was triggered by a browser action, such
    as forward or back, clicking on a link, editing the URL, or calling
    window.history.(go|back|forward). False if the token has been changed
    by a setToken or replaceToken call.</p>
  </blockquote>
  
  <p>But how to get only one even fired?</p>