diff --git a/app/javascript/src/javascripts/post_tooltips.js b/app/javascript/src/javascripts/post_tooltips.js index b4563756c..33a2e0037 100644 --- a/app/javascript/src/javascripts/post_tooltips.js +++ b/app/javascript/src/javascripts/post_tooltips.js @@ -9,13 +9,14 @@ PostTooltip.POST_SELECTOR = "*:not(.ui-sortable-handle) > .post-preview img, .dt PostTooltip.SHOW_DELAY = 500; PostTooltip.HIDE_DELAY = 125; PostTooltip.DURATION = 250; +PostTooltip.instance = null; PostTooltip.initialize = function () { if (PostTooltip.disabled()) { return; } - delegate("body", { + PostTooltip.instance = delegate("body", { allowHTML: true, appendTo: document.querySelector("#post-tooltips"), delay: [PostTooltip.SHOW_DELAY, PostTooltip.HIDE_DELAY], @@ -98,8 +99,8 @@ PostTooltip.on_disable_tooltips = async function (event) { } await CurrentUser.update({ disable_post_tooltips: true }); - Utility.notice("Tooltips disabled; check your account settings to re-enable."); - location.reload(); + Utility.notice(`Tooltips disabled; check your account settings to re-enable.`); + PostTooltip.instance[0].destroy(); }; $(document).ready(PostTooltip.initialize); diff --git a/app/views/posts/show.html+tooltip.erb b/app/views/posts/show.html+tooltip.erb index 1783a2746..d31add8b3 100644 --- a/app/views/posts/show.html+tooltip.erb +++ b/app/views/posts/show.html+tooltip.erb @@ -31,8 +31,12 @@ <%= link_to "#{@post.rating.upcase}", posts_path(tags: "rating:#{@post.pretty_rating}"), class: "post-tooltip-rating post-tooltip-info" %> <%= link_to "#{@post.image_width}x#{@post.image_height}", @post.file_url, class: "post-tooltip-dimensions post-tooltip-info" %> - <%= link_to "#", class: "post-tooltip-disable", title: "Disable enhanced tooltips" do %> - <%= close_icon %> + <%= render PopupMenuComponent.new do |menu| %> + <%= menu.item do %> + <%= link_to "javascript:void(0)", class: "post-tooltip-disable" do %> + <%= close_icon %> Disable tooltips + <% end %> + <% end %> <% end %>