modify split mode can not controll dock window

Signed-off-by: leafly2021 <figo.yefei@huawei.com>
Change-Id: I7b992fae598d99783a220108562cabb8e6e398d3
This commit is contained in:
leafly2021
2022-06-13 14:53:16 +08:00
parent 6b9c92ce29
commit a250484b2f
2 changed files with 8 additions and 4 deletions
+5
View File
@@ -64,6 +64,11 @@ public:
return ((IsMainWindow(type)) && (mode == WindowMode::WINDOW_MODE_FULLSCREEN));
}
static inline bool IsMainNotFloatingWindow(WindowType type, WindowMode mode)
{
return ((IsMainWindow(type)) && (mode != WindowMode::WINDOW_MODE_FLOATING));
}
static inline bool IsFloatintWindow(WindowMode mode)
{
return mode == WindowMode::WINDOW_MODE_FLOATING;
+3 -4
View File
@@ -260,7 +260,6 @@ WMError WindowNodeContainer::RemoveWindowNode(sptr<WindowNode>& node)
WLOGFE("window node or surface node is nullptr, invalid");
return WMError::WM_ERROR_DESTROYED_OBJECT;
}
if (node->parent_ == nullptr) {
WLOGFW("can't find parent of this node");
} else {
@@ -280,7 +279,6 @@ WMError WindowNodeContainer::RemoveWindowNode(sptr<WindowNode>& node)
child->GetCallingUid(), false, child->GetWindowType()));
}
}
// Remove node from RSTree
for (auto& displayId : node->GetShowingDisplays()) {
UpdateRSTree(node, displayId, false, node->isPlayAnimationHide_);
@@ -291,13 +289,14 @@ WMError WindowNodeContainer::RemoveWindowNode(sptr<WindowNode>& node)
displayGroupController_->UpdateDisplayGroupWindowTree();
layoutPolicy_->RemoveWindowNode(node);
WindowMode lastMode = node->GetWindowMode();
if (HandleRemoveWindow(node) != WMError::WM_OK) {
return WMError::WM_ERROR_NULLPTR;
}
NotifyIfAvoidAreaChanged(node, AvoidControlType::AVOID_NODE_REMOVE);
if (WindowHelper::IsMainFullScreenWindow(node->GetWindowType(), node->GetWindowMode())) {
if (WindowHelper::IsMainNotFloatingWindow(node->GetWindowType(), lastMode)) {
NotifyDockWindowStateChanged(node, true);
}
NotifyIfAvoidAreaChanged(node, AvoidControlType::AVOID_NODE_REMOVE);
UpdateWindowVisibilityInfos(infos);
DumpScreenWindowTree();
NotifyAccessibilityWindowInfo(node, WindowUpdateType::WINDOW_UPDATE_REMOVED);