git-svn-id: svn+ssh://svn.code.sf.net/p/freeglut/code/trunk/freeglut/freeglut@1651
7f0cb862-5218-0410-a997-
914c9d46530a
{
mtouch_event_t touchEvent;
screen_get_mtouch_event(screenEvent, &touchEvent, 0);
{
mtouch_event_t touchEvent;
screen_get_mtouch_event(screenEvent, &touchEvent, 0);
+ LOGI("fgPlatformProcessSingleEvent: SCREEN_EVENT_MTOUCH_*: Type: 0x%X, X: %d, Y: %d, Contact Id: %d", SLOG2_FA_SIGNED(eventType), SLOG2_FA_SIGNED(touchEvent.x), SLOG2_FA_SIGNED(touchEvent.y), SLOG2_FA_SIGNED(touchEvent.contact_id), SLOG2_FA_END);
if(touchEvent.contact_id == 0) {
int size[2];
screen_get_window_property_iv(window->Window.Handle, SCREEN_PROPERTY_BUFFER_SIZE, size);
if(touchEvent.contact_id == 0) {
int size[2];
screen_get_window_property_iv(window->Window.Handle, SCREEN_PROPERTY_BUFFER_SIZE, size);
int size[2];
screen_get_window_property_iv(window->Window.Handle, SCREEN_PROPERTY_BUFFER_SIZE, size);
int size[2];
screen_get_window_property_iv(window->Window.Handle, SCREEN_PROPERTY_BUFFER_SIZE, size);
+ LOGI("fgPlatformProcessSingleEvent: SCREEN_EVENT_POINTER: Buttons: 0x%X, X: %d, Y: %d, Wheel: %d", SLOG2_FA_SIGNED(buttons), SLOG2_FA_SIGNED(position[0]), SLOG2_FA_SIGNED(position[1]), SLOG2_FA_SIGNED(wheel), SLOG2_FA_END);
+
//XXX Should multitouch be handled?
// Handle left mouse. Interpret as touch if the left mouse event is not consumed.
//XXX Should multitouch be handled?
// Handle left mouse. Interpret as touch if the left mouse event is not consumed.
screen_get_event_property_iv(screenEvent, SCREEN_PROPERTY_KEY_SYM, &value);
LOGI("fgPlatformProcessSingleEvent: SCREEN_EVENT_KEYBOARD. Flags: 0x%X, Sym: 0x%X", SLOG2_FA_SIGNED(flags), SLOG2_FA_SIGNED(value), SLOG2_FA_END);
// Suppress key repeats if desired
screen_get_event_property_iv(screenEvent, SCREEN_PROPERTY_KEY_SYM, &value);
LOGI("fgPlatformProcessSingleEvent: SCREEN_EVENT_KEYBOARD. Flags: 0x%X, Sym: 0x%X", SLOG2_FA_SIGNED(flags), SLOG2_FA_SIGNED(value), SLOG2_FA_END);
// Suppress key repeats if desired
- if (!fgStructure.CurrentWindow->State.IgnoreKeyRepeat && (flags & KEY_REPEAT) == 0) {
+ if ((flags & KEY_REPEAT) == 0 || (fgState.KeyRepeat == GLUT_KEY_REPEAT_ON && !fgStructure.CurrentWindow->State.IgnoreKeyRepeat)) {
unsigned int keypress = 0;
unsigned char ascii = 0;
if ((keypress = key_special(value))) {
unsigned int keypress = 0;
unsigned char ascii = 0;
if ((keypress = key_special(value))) {
+
+ default:
+ LOGW("fgPlatformProcessSingleEvent: unknown screen event: 0x%X", SLOG2_FA_SIGNED(eventType), SLOG2_FA_END);
+ break;
}
} else if (domain == navigator_get_domain()) {
}
} else if (domain == navigator_get_domain()) {
- switch (bps_event_get_code(event)) {
+ int eventType = bps_event_get_code(event);
+ switch (eventType) {
case NAVIGATOR_WINDOW_STATE:
{
case NAVIGATOR_WINDOW_STATE:
{
LOGI("fgPlatformProcessSingleEvent: NAVIGATOR_WINDOW_STATE-NAVIGATOR_WINDOW_THUMBNAIL/NAVIGATOR_WINDOW_INVISIBLE", SLOG2_FA_END);
INVOKE_WCB(*window, AppStatus, (GLUT_APPSTATUS_PAUSE));
break;
LOGI("fgPlatformProcessSingleEvent: NAVIGATOR_WINDOW_STATE-NAVIGATOR_WINDOW_THUMBNAIL/NAVIGATOR_WINDOW_INVISIBLE", SLOG2_FA_END);
INVOKE_WCB(*window, AppStatus, (GLUT_APPSTATUS_PAUSE));
break;
+ default:
+ LOGW("fgPlatformProcessSingleEvent: NAVIGATOR_WINDOW_STATE unknown: 0x%X", SLOG2_FA_SIGNED(state), SLOG2_FA_END);
+ break;
if (window != NULL) {
fgDestroyWindow(window);
} else {
if (window != NULL) {
fgDestroyWindow(window);
} else {
- LOGI("NAVIGATOR_EXIT: No current window", SLOG2_FA_END);
+ LOGW("NAVIGATOR_EXIT: No current window", SLOG2_FA_END);
+
+ default:
+ LOGW("fgPlatformProcessSingleEvent: unknown navigator event: 0x%X", SLOG2_FA_SIGNED(eventType), SLOG2_FA_END);
+ break;
/* Request window events */
screen_request_events(window->Window.pContext.screenContext);
/* Request window events */
screen_request_events(window->Window.pContext.screenContext);
+ /* Save window and set state */
window->Window.Handle = fgDisplay.pDisplay.single_native_window;
window->State.WorkMask |= GLUT_INIT_WORK;
window->Window.Handle = fgDisplay.pDisplay.single_native_window;
window->State.WorkMask |= GLUT_INIT_WORK;
+ window->State.IsFullscreen = GL_TRUE; //XXX Always fullscreen for now
/* Create context */
fghChooseConfig(&window->Window.pContext.egl.Config);
/* Create context */
fghChooseConfig(&window->Window.pContext.egl.Config);