From 7546a29d105b95bac13e526d7431288822f18baa Mon Sep 17 00:00:00 2001 From: Robin Ward Date: Tue, 20 Aug 2013 18:03:57 -0400 Subject: [PATCH] FIX: After sharing links and navigating long topics sometimes you'd have a lot of blank space. --- .../discourse/controllers/share_controller.js | 15 --------------- .../javascripts/discourse/models/share_link.js | 4 +--- .../javascripts/discourse/views/post_menu_view.js | 2 +- .../javascripts/discourse/views/share_view.js | 14 +++++++++++++- 4 files changed, 15 insertions(+), 20 deletions(-) diff --git a/app/assets/javascripts/discourse/controllers/share_controller.js b/app/assets/javascripts/discourse/controllers/share_controller.js index 1fda70b0d68..2007c8bfb35 100644 --- a/app/assets/javascripts/discourse/controllers/share_controller.js +++ b/app/assets/javascripts/discourse/controllers/share_controller.js @@ -10,21 +10,6 @@ Discourse.ShareController = Discourse.Controller.extend({ needs: ['topic'], - // When the user clicks the post number, we pop up a share box - shareLink: function(e, url) { - var x; - x = e.pageX - 150; - if (x < 25) { - x = 25; - } - $('#share-link').css({ - left: "" + x + "px", - top: "" + (e.pageY - 100) + "px" - }); - this.set('link', url); - return false; - }, - // Close the share controller close: function() { this.set('link', ''); diff --git a/app/assets/javascripts/discourse/models/share_link.js b/app/assets/javascripts/discourse/models/share_link.js index f47e1df63c5..615a3180b91 100644 --- a/app/assets/javascripts/discourse/models/share_link.js +++ b/app/assets/javascripts/discourse/models/share_link.js @@ -13,9 +13,7 @@ Discourse.ShareLink = Discourse.Model.extend({ return Discourse.ShareLink.urlFor(this.get('target'), this.get('link'), this.get('topicTitle')); }.property('target', 'link', 'topicTitle'), - title: function() { - return I18n.t("share." + this.get('target')); - }.property('target'), + title: Discourse.computed.i18n('target', 'share.%@'), iconClass: function() { return Discourse.ShareLink.iconClasses[this.get('target')]; diff --git a/app/assets/javascripts/discourse/views/post_menu_view.js b/app/assets/javascripts/discourse/views/post_menu_view.js index 2d54c238adf..969e082e76e 100644 --- a/app/assets/javascripts/discourse/views/post_menu_view.js +++ b/app/assets/javascripts/discourse/views/post_menu_view.js @@ -166,7 +166,7 @@ Discourse.PostMenuView = Discourse.View.extend({ // Share button renderShare: function(post, buffer) { buffer.push(""); }, diff --git a/app/assets/javascripts/discourse/views/share_view.js b/app/assets/javascripts/discourse/views/share_view.js index ba8e857227e..cd121277960 100644 --- a/app/assets/javascripts/discourse/views/share_view.js +++ b/app/assets/javascripts/discourse/views/share_view.js @@ -30,6 +30,8 @@ Discourse.ShareView = Discourse.View.extend({ window.setTimeout(function() { $linkInput.select().focus(); }, 160); + } else { + $('#share-link').css('top', 0); } }.observes('controller.link'), @@ -53,7 +55,17 @@ Discourse.ShareView = Discourse.View.extend({ if (url.indexOf("/") === 0) { url = window.location.protocol + "//" + window.location.host + url; } - shareView.get('controller').shareLink(e, url); + + var x = e.pageX - 150; + if (x < 25) { + x = 25; + } + + $('#share-link').css({ + left: "" + x + "px", + top: "" + (e.pageY - 100) + "px" + }); + shareView.set('controller.link', url); return false; });