在一个浮动Area,一个tabpage,两个Panel的场景下。点击面板的最大化按钮,应该相当于点击Area的最大化按钮
This commit is contained in:
@@ -236,7 +236,18 @@ const onMaximize = (event) => {
|
|||||||
const panelId = event.panelId;
|
const panelId = event.panelId;
|
||||||
const areaId = event.areaId;
|
const areaId = event.areaId;
|
||||||
|
|
||||||
if (shouldOperateAreaInsteadOfPanel(areaId)) {
|
// 检查是否应该操作区域而非面板
|
||||||
|
// 1. 只有一个面板时,操作区域
|
||||||
|
// 2. 有一个TabPage和多个Panel时,也操作区域
|
||||||
|
const shouldOperateArea = shouldOperateAreaInsteadOfPanelFromData(event);
|
||||||
|
|
||||||
|
// 从AreaHandler获取区域状态,检查是否有一个TabPage和多个Panel
|
||||||
|
const areaState = areaHandler.getAreaState(areaId);
|
||||||
|
const hasOneTabPageWithMultiplePanels = areaState?.children?.type === 'TabPage' &&
|
||||||
|
Array.isArray(areaState.children.children) &&
|
||||||
|
areaState.children.children.length > 1;
|
||||||
|
|
||||||
|
if (shouldOperateArea || hasOneTabPageWithMultiplePanels) {
|
||||||
areaActions.toggleMaximize(areaId);
|
areaActions.toggleMaximize(areaId);
|
||||||
} else {
|
} else {
|
||||||
panelActions.maximize(panelId);
|
panelActions.maximize(panelId);
|
||||||
|
|||||||
Reference in New Issue
Block a user