Web file system implementation + fixes

This commit is contained in:
elasota
2021-04-19 01:02:10 -04:00
parent f15a87041a
commit 84a4d16aed
30 changed files with 373 additions and 81 deletions

View File

@@ -155,7 +155,7 @@ namespace PortabilityLayer
bool FindMenuShortcut(uint16_t &menuID, uint16_t &itemID, uint8_t shortcutChar) override;
void MenuSelect(const Vec2i &initialPoint, int16_t *outMenu, uint16_t *outItem) GP_ASYNCIFY_PARANOID_OVERRIDE;
void PopupMenuSelect(const THandle<Menu> &menu, const Vec2i &popupMenuPos, const Vec2i &initialPoint, size_t initialItem, uint16_t *outItem) override;
void PopupMenuSelect(const THandle<Menu> &menu, const Vec2i &popupMenuPos, const Vec2i &initialPoint, size_t initialItem, uint16_t *outItem) GP_ASYNCIFY_PARANOID_OVERRIDE;
void DrawMenuBar() override;
void SetMenuVisible(bool isVisible) override;
@@ -776,7 +776,14 @@ namespace PortabilityLayer
bool canDismiss = false;
while (!canDismiss)
{
if (WaitForEvent(&evt, 1))
bool haveEvent = false;
{
PL_ASYNCIFY_PARANOID_DISARM_FOR_SCOPE();
haveEvent = WaitForEvent(&evt, 1);
}
if (haveEvent)
{
if (evt.m_vosEvent.m_eventType == GpVOSEventTypes::kMouseInput)
{
@@ -1589,5 +1596,10 @@ namespace PortabilityLayer
{
static_cast<MenuManagerImpl*>(this)->MenuSelect(initialPoint, outMenu, outItem);
}
void MenuManager::PopupMenuSelect(const THandle<Menu> &menu, const Vec2i &popupMenuPos, const Vec2i &initialPoint, size_t initialItem, uint16_t *outItem)
{
static_cast<MenuManagerImpl*>(this)->PopupMenuSelect(menu, popupMenuPos, initialPoint, initialItem, outItem);
}
#endif
}