From a613bc43febcf4a56ebcc0ed6eb04398a55a1201 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Yago=20Gonz=C3=A1lez?= Date: Tue, 10 Jan 2017 16:21:02 +0000 Subject: [PATCH] frontend: Keep showing hover menu after opening popovers. Fixes: #3172 --- static/js/popovers.js | 3 +++ static/styles/zulip.css | 12 ++++++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/static/js/popovers.js b/static/js/popovers.js index 9f66a896a2..c999cd0ea0 100644 --- a/static/js/popovers.js +++ b/static/js/popovers.js @@ -47,6 +47,7 @@ function show_message_info_popover(element, id) { exports.toggle_reactions_popover = function (element, id) { var last_popover_elem = current_message_reactions_popover_elem; popovers.hide_all(); + $(element).closest('.message_row').toggleClass('has_popover has_reactions_popover'); if (last_popover_elem !== undefined && last_popover_elem.get()[0] === element) { // We want it to be the case that a user can dismiss a popover @@ -119,6 +120,7 @@ exports.toggle_reactions_popover = function (element, id) { exports.toggle_actions_popover = function (element, id) { var last_popover_elem = current_actions_popover_elem; popovers.hide_all(); + $(element).closest('.message_row').toggleClass('has_popover has_actions_popover'); if (last_popover_elem !== undefined && last_popover_elem.get()[0] === element) { // We want it to be the case that a user can dismiss a popover @@ -833,6 +835,7 @@ exports.any_active = function () { }; exports.hide_all = function () { + $('.has_popover').removeClass('has_popover has_actions_popover has_reactions_popover'); popovers.hide_actions_popover(); popovers.hide_message_info_popover(); popovers.hide_reactions_popover(); diff --git a/static/styles/zulip.css b/static/styles/zulip.css index 0e19269389..54c4ea1079 100644 --- a/static/styles/zulip.css +++ b/static/styles/zulip.css @@ -595,7 +595,8 @@ td.pointer { margin-bottom: 10px; } -.message_list .message_row:hover .message_time { +.message_list .message_row:hover .message_time, +.message_list .has_popover .message_time { display: none; } @@ -1028,7 +1029,7 @@ a.message_label_clickable:hover { width: 0px; height: 0px; color: #bbb; - opacity: 0; + visibility: hidden; } .reactions_hover i { @@ -1040,9 +1041,11 @@ a.message_label_clickable:hover { padding: 1px 2px; } -.message_hovered .reactions_hover { +.message_hovered .reactions_hover, +.has_reactions_popover .reactions_hover + { cursor: pointer; - opacity: 1.0; + visibility: visible; } /* Brighten text because of the dark background */ @@ -1084,6 +1087,7 @@ a.dark_background:hover, } .message_hovered .info, +.has_actions_popover .info, .message_hovered .empty-star { visibility: visible; }