!1293 UpdateProperty接口整改,默认同步

Merge pull request !1293 from liuqi/lq_0802
This commit is contained in:
openharmony_ci
2022-08-03 03:19:49 +00:00
committed by Gitee
7 changed files with 29 additions and 11 deletions
+2 -1
View File
@@ -97,7 +97,8 @@ public:
void MinimizeAllAppWindows(DisplayId displayId) override;
WMError ToggleShownStateForAllAppWindows() override;
WMError SetWindowLayoutMode(WindowLayoutMode mode) override;
WMError UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action) override;
WMError UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action,
bool isAsyncTask = false) override;
WMError GetAccessibilityWindowInfo(sptr<AccessibilityWindowInfo>& windowInfo) override;
void RegisterWindowManagerAgent(WindowManagerAgentType type,
@@ -78,7 +78,8 @@ public:
virtual void MinimizeAllAppWindows(DisplayId displayId) = 0;
virtual WMError ToggleShownStateForAllAppWindows() = 0;
virtual WMError SetWindowLayoutMode(WindowLayoutMode mode) = 0;
virtual WMError UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action) = 0;
virtual WMError UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action,
bool isAsyncTask = false) = 0;
virtual void RegisterWindowManagerAgent(WindowManagerAgentType type,
const sptr<IWindowManagerAgent>& windowManagerAgent) = 0;
virtual void UnregisterWindowManagerAgent(WindowManagerAgentType type,
+2 -2
View File
@@ -44,8 +44,8 @@ public:
void MinimizeAllAppWindows(DisplayId displayId) override;
WMError ToggleShownStateForAllAppWindows() override;
WMError SetWindowLayoutMode(WindowLayoutMode mode) override;
WMError UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action) override;
WMError UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action,
bool isAsyncTask = false) override;
void RegisterWindowManagerAgent(WindowManagerAgentType type,
const sptr<IWindowManagerAgent>& windowManagerAgent) override;
void UnregisterWindowManagerAgent(WindowManagerAgentType type,
+2 -2
View File
@@ -329,7 +329,7 @@ void MoveDragController::HandleDragEvent(int32_t posX, int32_t posY, int32_t poi
windowProperty_->SetRequestRect(newRect);
windowProperty_->SetWindowSizeChangeReason(WindowSizeChangeReason::DRAG);
windowProperty_->SetDragType(moveDragProperty_->dragType_);
WindowManagerService::GetInstance().UpdateProperty(windowProperty_, PropertyChangeAction::ACTION_UPDATE_RECT);
WindowManagerService::GetInstance().UpdateProperty(windowProperty_, PropertyChangeAction::ACTION_UPDATE_RECT, true);
}
void MoveDragController::HandleMoveEvent(int32_t posX, int32_t posY, int32_t pointId)
@@ -349,7 +349,7 @@ void MoveDragController::HandleMoveEvent(int32_t posX, int32_t posY, int32_t poi
windowProperty_->GetWindowId(), newRect.posX_, newRect.posY_, newRect.width_, newRect.height_);
windowProperty_->SetRequestRect(newRect);
windowProperty_->SetWindowSizeChangeReason(WindowSizeChangeReason::MOVE);
WindowManagerService::GetInstance().UpdateProperty(windowProperty_, PropertyChangeAction::ACTION_UPDATE_RECT);
WindowManagerService::GetInstance().UpdateProperty(windowProperty_, PropertyChangeAction::ACTION_UPDATE_RECT, true);
}
void MoveDragController::HandlePointerEvent(const std::shared_ptr<MMI::PointerEvent>& pointerEvent)
+1 -1
View File
@@ -949,7 +949,7 @@ WMError WindowController::UpdateProperty(sptr<WindowProperty>& property, Propert
case PropertyChangeAction::ACTION_UPDATE_TOUCH_HOT_AREA: {
std::vector<Rect> rects;
property->GetTouchHotAreas(rects);
UpdateTouchHotAreas(node, rects);
ret = UpdateTouchHotAreas(node, rects);
break;
}
case PropertyChangeAction::ACTION_UPDATE_ANIMATION_FLAG: {
+18 -3
View File
@@ -787,27 +787,42 @@ WMError WindowManagerService::SetWindowLayoutMode(WindowLayoutMode mode)
});
}
WMError WindowManagerService::UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action)
WMError WindowManagerService::UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action,
bool isAsyncTask)
{
if (windowProperty == nullptr) {
WLOGFE("windowProperty is nullptr");
return WMError::WM_ERROR_NULLPTR;
}
if (action == PropertyChangeAction::ACTION_UPDATE_TRANSFORM_PROPERTY) {
PostAsyncTask([this, windowProperty, action]() mutable {
windowController_->UpdateProperty(windowProperty, action);
});
return WMError::WM_OK;
}
PostAsyncTask([this, windowProperty, action]() mutable {
if (isAsyncTask) {
PostAsyncTask([this, windowProperty, action]() mutable {
HITRACE_METER_FMT(HITRACE_TAG_WINDOW_MANAGER, "wms:UpdateProperty");
WMError res = windowController_->UpdateProperty(windowProperty, action);
if (action == PropertyChangeAction::ACTION_UPDATE_RECT && res == WMError::WM_OK &&
windowProperty->GetWindowSizeChangeReason() == WindowSizeChangeReason::MOVE) {
dragController_->UpdateDragInfo(windowProperty->GetWindowId());
}
});
return WMError::WM_OK;
}
return PostSyncTask([this, &windowProperty, action]() {
HITRACE_METER_FMT(HITRACE_TAG_WINDOW_MANAGER, "wms:UpdateProperty");
WMError res = windowController_->UpdateProperty(windowProperty, action);
if (action == PropertyChangeAction::ACTION_UPDATE_RECT && res == WMError::WM_OK &&
windowProperty->GetWindowSizeChangeReason() == WindowSizeChangeReason::MOVE) {
dragController_->UpdateDragInfo(windowProperty->GetWindowId());
}
return res;
});
return WMError::WM_OK;
}
WMError WindowManagerService::GetAccessibilityWindowInfo(sptr<AccessibilityWindowInfo>& windowInfo)
+2 -1
View File
@@ -390,7 +390,8 @@ WMError WindowManagerProxy::SetWindowLayoutMode(WindowLayoutMode mode)
return static_cast<WMError>(ret);
}
WMError WindowManagerProxy::UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action)
WMError WindowManagerProxy::UpdateProperty(sptr<WindowProperty>& windowProperty, PropertyChangeAction action,
bool isAsyncTask)
{
MessageParcel data;
MessageParcel reply;