1e0dac50fSopenharmony_ci/* 2e0dac50fSopenharmony_ci * Copyright (c) 2021 Huawei Device Co., Ltd. 3e0dac50fSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License"); 4e0dac50fSopenharmony_ci * you may not use this file except in compliance with the License. 5e0dac50fSopenharmony_ci * You may obtain a copy of the License at 6e0dac50fSopenharmony_ci * 7e0dac50fSopenharmony_ci * http://www.apache.org/licenses/LICENSE-2.0 8e0dac50fSopenharmony_ci * 9e0dac50fSopenharmony_ci * Unless required by applicable law or agreed to in writing, software 10e0dac50fSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS, 11e0dac50fSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12e0dac50fSopenharmony_ci * See the License for the specific language governing permissions and 13e0dac50fSopenharmony_ci * limitations under the License. 14e0dac50fSopenharmony_ci */ 15e0dac50fSopenharmony_ci 16e0dac50fSopenharmony_ci#ifndef OHOS_WINDOW_MANAGER_AGENT_H 17e0dac50fSopenharmony_ci#define OHOS_WINDOW_MANAGER_AGENT_H 18e0dac50fSopenharmony_ci 19e0dac50fSopenharmony_ci#include "window_manager.h" 20e0dac50fSopenharmony_ci#include "zidl/window_manager_agent_stub.h" 21e0dac50fSopenharmony_ci 22e0dac50fSopenharmony_cinamespace OHOS { 23e0dac50fSopenharmony_cinamespace Rosen { 24e0dac50fSopenharmony_ciclass WindowManagerAgent : public WindowManagerAgentStub { 25e0dac50fSopenharmony_cipublic: 26e0dac50fSopenharmony_ci WindowManagerAgent() = default; 27e0dac50fSopenharmony_ci ~WindowManagerAgent() = default; 28e0dac50fSopenharmony_ci 29e0dac50fSopenharmony_ci void UpdateFocusChangeInfo(const sptr<FocusChangeInfo>& focusChangeInfo, bool focused) override; 30e0dac50fSopenharmony_ci void UpdateSystemBarRegionTints(DisplayId displayId, const SystemBarRegionTints& props) override; 31e0dac50fSopenharmony_ci void NotifyAccessibilityWindowInfo(const std::vector<sptr<AccessibilityWindowInfo>>& infos, 32e0dac50fSopenharmony_ci WindowUpdateType type) override; 33e0dac50fSopenharmony_ci void UpdateWindowVisibilityInfo(const std::vector<sptr<WindowVisibilityInfo>>& visibilityInfos) override; 34e0dac50fSopenharmony_ci void UpdateWindowModeTypeInfo(WindowModeType type) override; 35e0dac50fSopenharmony_ci void UpdateWindowDrawingContentInfo( 36e0dac50fSopenharmony_ci const std::vector<sptr<WindowDrawingContentInfo>>& windowDrawingContentInfos) override; 37e0dac50fSopenharmony_ci void UpdateCameraFloatWindowStatus(uint32_t accessTokenId, bool isShowing) override; 38e0dac50fSopenharmony_ci void NotifyWaterMarkFlagChangedResult(bool showWaterMark) override; 39e0dac50fSopenharmony_ci void UpdateVisibleWindowNum(const std::vector<VisibleWindowNumInfo>& visibleWindowNumInfo) override; 40e0dac50fSopenharmony_ci void NotifyGestureNavigationEnabledResult(bool enable) override; 41e0dac50fSopenharmony_ci void UpdateCameraWindowStatus(uint32_t accessTokenId, bool isShowing) override {}; 42e0dac50fSopenharmony_ci void NotifyWindowStyleChange(WindowStyleType type) override; 43e0dac50fSopenharmony_ci void NotifyWindowPidVisibilityChanged(const sptr<WindowPidVisibilityInfo>& info) override; 44e0dac50fSopenharmony_ci void UpdatePiPWindowStateChanged(const std::string& bundleName, bool isForeground) override {} 45e0dac50fSopenharmony_ci}; 46e0dac50fSopenharmony_ci} // namespace Rosen 47e0dac50fSopenharmony_ci} // namespace OHOS 48e0dac50fSopenharmony_ci#endif // OHOS_WINDOW_MANAGER_AGENT_H 49