Expose certain methods to be used for Mac menu items

This commit is contained in:
Phil Marell
2021-07-24 16:30:17 +10:00
parent 00488c6fea
commit 90943d945b
3 changed files with 7 additions and 1 deletions

View File

@@ -186,6 +186,7 @@ namespace PortabilityLayer
void SetWindowTitle(Window *window, const PLPasStr &title) override;
Rect2i GetWindowFullRect(Window *window) const override;
bool GetWindowChromeInteractionZone(Window *window, const Vec2i &point, RegionID_t &outRegion) const override;
bool IsExclusiveWindowVisible() override;
void SwapExclusiveWindow(Window *& windowRef) override;
void FlickerWindowIn(Window *window, int32_t velocity) GP_ASYNCIFY_PARANOID_OVERRIDE;
@@ -1322,6 +1323,10 @@ namespace PortabilityLayer
return static_cast<WindowImpl*>(window)->GetChromeInteractionZone(point, outRegion);
}
bool WindowManagerImpl::IsExclusiveWindowVisible() {
return m_exclusiveWindow != nullptr;
}
void WindowManagerImpl::SwapExclusiveWindow(Window *& windowRef)
{
const bool hadExclusiveWindow = (m_exclusiveWindow != nullptr);

View File

@@ -38,6 +38,7 @@ namespace PortabilityLayer
virtual void SetWindowTitle(Window *window, const PLPasStr &title) = 0;
virtual Rect2i GetWindowFullRect(Window *window) const = 0;
virtual bool GetWindowChromeInteractionZone(Window *window, const Vec2i &point, RegionID_t &outRegion) const = 0;
virtual bool IsExclusiveWindowVisible() = 0;
virtual void SwapExclusiveWindow(Window *& windowRef) = 0;
GP_ASYNCIFY_PARANOID_VIRTUAL void FlickerWindowIn(Window *window, int32_t velocity) GP_ASYNCIFY_PARANOID_PURE;