[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[MiNT] Workaround for the WM_TOOLBAR ghost event issue



Hi,

I noticed that the "ghost" event is only generated when - and only when - graf_mkstate() detects a pressed mouse button in the WM_TOOLBAR handler. If it does, a ghost event will be generated.

Example:

bool workaround_flag = false;

void wm_toolbar_handler(int16_t* msg)
{
int16_t mx, my, mb, ks;


graf_mkstate( &mx, &my, &mb, &ks );


if(!mb && workaround_flag)
{
workaround_flag = false;
return;
}

/* your toolbar handler code here */


if(mb)
t->workaround_flag = true;
}

This is not pretty, but it seems to take care of the problem. Naturally this workaround should only be enabled on setups which suffer from the problem.

-- PeP