mirror of
				https://github.com/zulip/zulip.git
				synced 2025-11-03 21:43:21 +00:00 
			
		
		
		
	right_sidebar_ui: Extract new module.
This UI is not actually a popover, and so there is no need for it to live in popovers.js.
This commit is contained in:
		@@ -154,6 +154,7 @@ EXEMPT_FILES = make_set(
 | 
			
		||||
        "web/src/reload.js",
 | 
			
		||||
        "web/src/reminder.js",
 | 
			
		||||
        "web/src/resize.js",
 | 
			
		||||
        "web/src/right_sidebar_ui.js",
 | 
			
		||||
        "web/src/rows.js",
 | 
			
		||||
        "web/src/scheduled_messages.js",
 | 
			
		||||
        "web/src/scheduled_messages_overlay_ui.js",
 | 
			
		||||
 
 | 
			
		||||
@@ -30,6 +30,7 @@ import * as pm_list from "./pm_list";
 | 
			
		||||
import * as popovers from "./popovers";
 | 
			
		||||
import * as reactions from "./reactions";
 | 
			
		||||
import * as recent_view_ui from "./recent_view_ui";
 | 
			
		||||
import * as right_sidebar_ui from "./right_sidebar_ui";
 | 
			
		||||
import * as rows from "./rows";
 | 
			
		||||
import * as server_events from "./server_events";
 | 
			
		||||
import * as settings_display from "./settings_display";
 | 
			
		||||
@@ -495,7 +496,7 @@ export function initialize() {
 | 
			
		||||
        const sidebarHidden = !$(".app-main .column-right").hasClass("expanded");
 | 
			
		||||
        popovers.hide_all();
 | 
			
		||||
        if (sidebarHidden) {
 | 
			
		||||
            popovers.show_userlist_sidebar();
 | 
			
		||||
            right_sidebar_ui.show_userlist_sidebar();
 | 
			
		||||
        }
 | 
			
		||||
    });
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -6,7 +6,7 @@ import * as emoji_picker from "./emoji_picker";
 | 
			
		||||
import * as overlays from "./overlays";
 | 
			
		||||
import * as playground_links_popover from "./playground_links_popover";
 | 
			
		||||
import * as popover_menus from "./popover_menus";
 | 
			
		||||
import * as resize from "./resize";
 | 
			
		||||
import * as right_sidebar_ui from "./right_sidebar_ui";
 | 
			
		||||
import * as stream_popover from "./stream_popover";
 | 
			
		||||
import * as user_card_popover from "./user_card_popover";
 | 
			
		||||
import * as user_group_popover from "./user_group_popover";
 | 
			
		||||
@@ -110,15 +110,6 @@ export function focus_first_action_popover_item() {
 | 
			
		||||
    focus_first_popover_item($items);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function hide_userlist_sidebar() {
 | 
			
		||||
    $(".app-main .column-right").removeClass("expanded");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function show_userlist_sidebar() {
 | 
			
		||||
    $(".app-main .column-right").addClass("expanded");
 | 
			
		||||
    resize.resize_page_components();
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
// On mobile web, opening the keyboard can trigger a resize event
 | 
			
		||||
// (which in turn can trigger a scroll event).  This will have the
 | 
			
		||||
// side effect of closing popovers, which we don't want.  So we
 | 
			
		||||
@@ -198,7 +189,7 @@ export function hide_all_except_sidebars(opts) {
 | 
			
		||||
// This function will hide all the popovers, including the mobile web
 | 
			
		||||
// or narrow window sidebars.
 | 
			
		||||
export function hide_all(not_hide_tippy_instances) {
 | 
			
		||||
    hide_userlist_sidebar();
 | 
			
		||||
    right_sidebar_ui.hide_userlist_sidebar();
 | 
			
		||||
    stream_popover.hide_streamlist_sidebar();
 | 
			
		||||
    hide_all_except_sidebars({
 | 
			
		||||
        not_hide_tippy_instances,
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										12
									
								
								web/src/right_sidebar_ui.js
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								web/src/right_sidebar_ui.js
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
			
		||||
import $ from "jquery";
 | 
			
		||||
 | 
			
		||||
import * as resize from "./resize";
 | 
			
		||||
 | 
			
		||||
export function hide_userlist_sidebar() {
 | 
			
		||||
    $(".app-main .column-right").removeClass("expanded");
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
export function show_userlist_sidebar() {
 | 
			
		||||
    $(".app-main .column-right").addClass("expanded");
 | 
			
		||||
    resize.resize_page_components();
 | 
			
		||||
}
 | 
			
		||||
@@ -24,13 +24,13 @@ import * as overlays from "./overlays";
 | 
			
		||||
import {page_params} from "./page_params";
 | 
			
		||||
import * as people from "./people";
 | 
			
		||||
import * as popover_menus from "./popover_menus";
 | 
			
		||||
import * as popovers from "./popovers";
 | 
			
		||||
import {
 | 
			
		||||
    focus_first_popover_item,
 | 
			
		||||
    hide_all,
 | 
			
		||||
    hide_all_except_sidebars,
 | 
			
		||||
    popover_items_handle_keyboard,
 | 
			
		||||
} from "./popovers";
 | 
			
		||||
import * as right_sidebar_ui from "./right_sidebar_ui";
 | 
			
		||||
import * as rows from "./rows";
 | 
			
		||||
import * as settings_config from "./settings_config";
 | 
			
		||||
import * as settings_users from "./settings_users";
 | 
			
		||||
@@ -659,7 +659,7 @@ function register_click_handlers() {
 | 
			
		||||
        const mention = people.get_mention_syntax(name, user_id);
 | 
			
		||||
        compose_ui.insert_syntax_and_focus(mention);
 | 
			
		||||
        user_sidebar.hide();
 | 
			
		||||
        popovers.hide_userlist_sidebar();
 | 
			
		||||
        right_sidebar_ui.hide_userlist_sidebar();
 | 
			
		||||
        e.stopPropagation();
 | 
			
		||||
        e.preventDefault();
 | 
			
		||||
    });
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,7 @@ import $ from "jquery";
 | 
			
		||||
 | 
			
		||||
import * as popovers from "./popovers";
 | 
			
		||||
import * as resize from "./resize";
 | 
			
		||||
import * as right_sidebar_ui from "./right_sidebar_ui";
 | 
			
		||||
import * as stream_popover from "./stream_popover";
 | 
			
		||||
 | 
			
		||||
export class UserSearch {
 | 
			
		||||
@@ -99,7 +100,7 @@ export class UserSearch {
 | 
			
		||||
            if ($column.hasClass("column-left")) {
 | 
			
		||||
                stream_popover.show_streamlist_sidebar();
 | 
			
		||||
            } else if ($column.hasClass("column-right")) {
 | 
			
		||||
                popovers.show_userlist_sidebar();
 | 
			
		||||
                right_sidebar_ui.show_userlist_sidebar();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 
 | 
			
		||||
@@ -25,6 +25,7 @@ const padded_widget = mock_esm("../src/padded_widget");
 | 
			
		||||
const pm_list = mock_esm("../src/pm_list");
 | 
			
		||||
const popovers = mock_esm("../src/popovers");
 | 
			
		||||
const resize = mock_esm("../src/resize");
 | 
			
		||||
const right_sidebar_ui = mock_esm("../src/right_sidebar_ui");
 | 
			
		||||
const scroll_util = mock_esm("../src/scroll_util");
 | 
			
		||||
const watchdog = mock_esm("../src/watchdog");
 | 
			
		||||
 | 
			
		||||
@@ -280,7 +281,7 @@ test("handlers", ({override, mock_template}) => {
 | 
			
		||||
    override(padded_widget, "update_padding", () => {});
 | 
			
		||||
    override(popovers, "hide_all", () => {});
 | 
			
		||||
    override(popovers, "hide_all_except_sidebars", () => {});
 | 
			
		||||
    override(popovers, "show_userlist_sidebar", () => {});
 | 
			
		||||
    override(right_sidebar_ui, "show_userlist_sidebar", () => {});
 | 
			
		||||
    override(resize, "resize_sidebars", () => {});
 | 
			
		||||
 | 
			
		||||
    // This is kind of weak coverage; we are mostly making sure that
 | 
			
		||||
 
 | 
			
		||||
@@ -29,6 +29,7 @@ const popovers = mock_esm("../src/popovers");
 | 
			
		||||
const presence = mock_esm("../src/presence");
 | 
			
		||||
const stream_popover = mock_esm("../src/stream_popover");
 | 
			
		||||
const resize = mock_esm("../src/resize");
 | 
			
		||||
const right_sidebar_ui = mock_esm("../src/right_sidebar_ui");
 | 
			
		||||
 | 
			
		||||
set_global("document", _document);
 | 
			
		||||
 | 
			
		||||
@@ -106,7 +107,7 @@ test("escape_search", ({override}) => {
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
test("blur search right", ({override}) => {
 | 
			
		||||
    override(popovers, "show_userlist_sidebar", () => {});
 | 
			
		||||
    override(right_sidebar_ui, "show_userlist_sidebar", () => {});
 | 
			
		||||
    override(popovers, "hide_all", () => {});
 | 
			
		||||
    override(popovers, "hide_all_except_sidebars", () => {});
 | 
			
		||||
    override(resize, "resize_sidebars", () => {});
 | 
			
		||||
@@ -198,7 +199,7 @@ test("click on user header to toggle display", ({override}) => {
 | 
			
		||||
 | 
			
		||||
    override(popovers, "hide_all", () => {});
 | 
			
		||||
    override(popovers, "hide_all_except_sidebars", () => {});
 | 
			
		||||
    override(popovers, "show_userlist_sidebar", () => {});
 | 
			
		||||
    override(right_sidebar_ui, "show_userlist_sidebar", () => {});
 | 
			
		||||
    override(resize, "resize_sidebars", () => {});
 | 
			
		||||
 | 
			
		||||
    page_params.realm_presence_disabled = true;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user