From 7f5ef60d5f27f1637570e9a99dea4f809f0b0c00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?R=C3=A9gis=20Hanol?= Date: Fri, 17 Jan 2014 19:41:41 +0100 Subject: [PATCH] BUGFIX: url was overriden when using the back button after visiting a topic --- app/assets/javascripts/discourse/routes/topic_route.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/app/assets/javascripts/discourse/routes/topic_route.js b/app/assets/javascripts/discourse/routes/topic_route.js index 8c5b68e0ce5..4ebb3510129 100644 --- a/app/assets/javascripts/discourse/routes/topic_route.js +++ b/app/assets/javascripts/discourse/routes/topic_route.js @@ -63,13 +63,18 @@ Discourse.TopicRoute = Discourse.Route.extend({ // Use replaceState to update the URL once it changes postChangedRoute: Discourse.debounce(function(currentPost) { + // do nothing if we are transitioning to another route + if (this.get("isTransitioning")) { return; } + var topic = this.modelFor('topic'); if (topic && currentPost) { var postUrl = topic.get('url'); if (currentPost > 1) { postUrl += "/" + currentPost; } Discourse.URL.replaceState(postUrl); } - }, 1000) + }, 150), + + willTransition: function() { this.set("isTransitioning", true); } }, @@ -83,6 +88,7 @@ Discourse.TopicRoute = Discourse.Route.extend({ activate: function() { this._super(); + this.set("isTransitioning", false); var topic = this.modelFor('topic'); Discourse.Session.currentProp('lastTopicIdViewed', parseInt(topic.get('id'), 10));