Hi, I've noticed a very weird interaction problem between the pgboard and other application. Please try the following :
- compile and run the apps/pgboard with the keyboard of your choice
- compile and run the attached sample code. This simply opens a menu
when a button is clicked.
Then check that the menu works as expected when used with the mouse,
and with the *physical* keyboard (Tab to get the focus on the button,
then Space to activate)
Now try the same thing with the virtual keyboard : click on tab, then
on space -> the menu is severly broken.
In pgboard, removing the key flashing function call (xorKey) seems to
solve the problem. I suppose that having drawing requests and input
messages at the same time provoke some clashes...
We've seen some other cases of popup corruption, but that are less
reproductible. Maybe they are all related...
[Last Minute Flash] calling xorKey *before* sending the key event
seems to corrupt the keyboard, but not the menu... Don't know if this
is useful for debugging however :-)
Bye,
Fr�d�ric
--
Fr�d�ric Gobry SMARTDATA
--- http://www.smartdata.ch
Software Engineer Lausanne - Switzerland
+41 21 693 84 98
#include <picogui.h>
int
handler(struct pgEvent *evt)
{
int selected = pgMenuFromString( "Contrast|Theme|Orientation|Calibration|Factory
settings" );
printf ("selected: %d\n", selected);
return 0;
}
int
main (int argc, char * argv [])
{
pgInit (argc, argv);
pgRegisterApp (PG_APP_TOOLBAR,"Toolbar",
PG_APPSPEC_SIDE,PG_S_BOTTOM,
0);
pgNewWidget(PG_WIDGET_BUTTON, 0, 0);
pgSetWidget(PGDEFAULT,
PG_WP_SIDE,PG_S_LEFT,
PG_WP_TEXT,pgNewString("Prefs"),
0);
pgBind(PGDEFAULT,PG_WE_ACTIVATE, & handler,NULL);
pgEventLoop ();
}
msg00621/pgp00000.pgp
Description: PGP signature
