Merge pull request #6090 from matrix-org/t3chguy/fix/17257

Close creation menu when expanding space panel via expand hierarchy
pull/21833/head
Michael Telatynski 2021-05-27 11:41:55 +01:00 committed by GitHub
commit 526bde4d9e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 9 additions and 6 deletions

View File

@ -14,7 +14,7 @@ See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
*/ */
import React, {useState} from "react"; import React, { useEffect, useState } from "react";
import classNames from "classnames"; import classNames from "classnames";
import {Room} from "matrix-js-sdk/src/models/room"; import {Room} from "matrix-js-sdk/src/models/room";
@ -127,6 +127,12 @@ const SpacePanel = () => {
const [invites, spaces, activeSpace] = useSpaces(); const [invites, spaces, activeSpace] = useSpaces();
const [isPanelCollapsed, setPanelCollapsed] = useState(true); const [isPanelCollapsed, setPanelCollapsed] = useState(true);
useEffect(() => {
if (!isPanelCollapsed && menuDisplayed) {
closeMenu();
}
}, [isPanelCollapsed]); // eslint-disable-line react-hooks/exhaustive-deps
const newClasses = classNames("mx_SpaceButton_new", { const newClasses = classNames("mx_SpaceButton_new", {
mx_SpaceButton_newCancel: menuDisplayed, mx_SpaceButton_newCancel: menuDisplayed,
}); });
@ -235,18 +241,15 @@ const SpacePanel = () => {
className={newClasses} className={newClasses}
tooltip={menuDisplayed ? _t("Cancel") : _t("Create a space")} tooltip={menuDisplayed ? _t("Cancel") : _t("Create a space")}
onClick={menuDisplayed ? closeMenu : () => { onClick={menuDisplayed ? closeMenu : () => {
openMenu();
if (!isPanelCollapsed) setPanelCollapsed(true); if (!isPanelCollapsed) setPanelCollapsed(true);
openMenu();
}} }}
isNarrow={isPanelCollapsed} isNarrow={isPanelCollapsed}
/> />
</AutoHideScrollbar> </AutoHideScrollbar>
<AccessibleTooltipButton <AccessibleTooltipButton
className={classNames("mx_SpacePanel_toggleCollapse", {expanded: !isPanelCollapsed})} className={classNames("mx_SpacePanel_toggleCollapse", {expanded: !isPanelCollapsed})}
onClick={() => { onClick={() => setPanelCollapsed(!isPanelCollapsed)}
setPanelCollapsed(!isPanelCollapsed);
if (menuDisplayed) closeMenu();
}}
title={expandCollapseButtonTitle} title={expandCollapseButtonTitle}
/> />
{ contextMenu } { contextMenu }