Make resized() lock platform-dependent

This commit is contained in:
Jack Andersen
2017-02-15 13:13:05 -10:00
parent 5982a3825d
commit f9ed2ba5b8
5 changed files with 14 additions and 9 deletions

View File

@@ -24,12 +24,13 @@ struct DeferredWindowEvents : public IWindowCallback
bool m_hasResize = false;
SWindowRect m_latestResize;
void resized(const SWindowRect& rect)
void resized(const SWindowRect& rect, bool sync)
{
std::unique_lock<std::mutex> lk(m_mt);
m_latestResize = rect;
m_hasResize = true;
m_resizeCv.wait_for(lk, std::chrono::milliseconds(500));
if (sync)
m_resizeCv.wait_for(lk, std::chrono::milliseconds(500));
}
struct Command

View File

@@ -173,7 +173,7 @@ struct ITextInputCallback
class IWindowCallback
{
public:
virtual void resized(const SWindowRect& rect)
virtual void resized(const SWindowRect& rect, bool sync)
{(void)rect;}
virtual void mouseDown(const SWindowCoord& coord, EMouseButton button, EModifierKey mods)
{(void)coord;(void)button;(void)mods;}