From 3ae313fd1dc8b811482668344cf2f863bbc97ecc Mon Sep 17 00:00:00 2001 From: Anton Khorev Date: Thu, 8 Aug 2024 06:48:13 +0300 Subject: [PATCH] Set min preview height when switching away from edit tab Previously it was set when switching to a preview tab. Now that won't work correctly because we have one extra tab. --- app/assets/javascripts/richtext.js | 16 +++++++++++++--- 1 file changed, 13 insertions(+), 3 deletions(-) diff --git a/app/assets/javascripts/richtext.js b/app/assets/javascripts/richtext.js index 0ff25bc0a..1576656ee 100644 --- a/app/assets/javascripts/richtext.js +++ b/app/assets/javascripts/richtext.js @@ -10,6 +10,19 @@ $(document).ready(function () { container.find(".tab-pane[id$='_preview']").empty(); }); + /* + * Install a handler to set the minimum preview pane height + * when switching away from an edit pane + */ + $(".richtext_container button[data-bs-target$='_edit']").on("hide.bs.tab", function () { + var container = $(this).closest(".richtext_container"); + var editor = container.find("textarea"); + var preview = container.find(".tab-pane[id$='_preview']"); + var minHeight = editor.outerHeight() - preview.outerHeight() + preview.height(); + + preview.css("min-height", minHeight + "px"); + }); + /* * Install a handler to switch to preview mode */ @@ -17,7 +30,6 @@ $(document).ready(function () { var container = $(this).closest(".richtext_container"); var editor = container.find("textarea"); var preview = container.find(".tab-pane[id$='_preview']"); - var minHeight = editor.outerHeight() - preview.outerHeight() + preview.height(); if (preview.contents().length === 0) { preview.oneTime(500, "loading", function () { @@ -29,8 +41,6 @@ $(document).ready(function () { preview.removeClass("loading"); }); } - - preview.css("min-height", minHeight + "px"); }); var updateHelp = function () { -- 2.39.5