1328 |
if (form->deactivated && event != FL_DRAW) |
if (form->deactivated && event != FL_DRAW) |
1329 |
return; |
return; |
1330 |
|
|
1331 |
if (form->parent_obj && form->parent_obj->active == DEACTIVATED && |
if (form->parent_obj && form->parent_obj->active == DEACTIVATED && |
1332 |
event != FL_DRAW) |
event != FL_DRAW) |
1333 |
return; |
return; |
1334 |
|
|
1551 |
|
|
1552 |
kbuflen = fl_XLookupString((XKeyEvent *) xev, (char *) keybuf, |
kbuflen = fl_XLookupString((XKeyEvent *) xev, (char *) keybuf, |
1553 |
sizeof(keybuf), &keysym); |
sizeof(keybuf), &keysym); |
1554 |
|
|
1555 |
if (kbuflen < 0) { |
if (kbuflen < 0) { |
1556 |
|
|
1557 |
if ( kbuflen != INT_MIN ) { |
if ( kbuflen != INT_MIN ) { |
1558 |
|
|
1559 |
/* buffer overflow, should not happen */ |
/* buffer overflow, should not happen */ |
1560 |
M_err("DoKeyBoard", "keyboad buffer overflow ?"); |
M_err("DoKeyBoard", "keyboad buffer overflow ?"); |
1561 |
|
|
1562 |
} else { |
} else { |
1563 |
|
|
1564 |
M_err("DoKeyBoard", "fl_XLookupString failed ?"); |
M_err("DoKeyBoard", "fl_XLookupString failed ?"); |
1565 |
|
|
1566 |
} |
} |
1567 |
|
|
1568 |
} else { |
} else { |
1569 |
|
|
1570 |
/* ignore modifier keys as they don't cause action and are |
/* ignore modifier keys as they don't cause action and are |
1571 |
taken care of by the lookupstring routine */ |
taken care of by the lookupstring routine */ |
1572 |
|
|
1573 |
if (IsModifierKey(keysym)) |
if (IsModifierKey(keysym)) |
1574 |
; |
; |
1575 |
else if (IsTab(keysym)) { |
else if (IsTab(keysym)) { |
1576 |
|
|
1577 |
/* fake a tab key. */ |
/* fake a tab key. */ |
1578 |
/* some system shift+tab does not generate tab */ |
/* some system shift+tab does not generate tab */ |
1579 |
|
|
1580 |
fl_handle_form(keyform, formevent, 9, xev); |
fl_handle_form(keyform, formevent, 9, xev); |
1581 |
|
|
1582 |
} |
} |
1584 |
else if (keysym == XK_F10) /* && controlkey_down(fl_keymask)) */ |
else if (keysym == XK_F10) /* && controlkey_down(fl_keymask)) */ |
1585 |
hack_test(); |
hack_test(); |
1586 |
#endif |
#endif |
1587 |
|
|
1588 |
/* pass all keys to the handler */ |
/* pass all keys to the handler */ |
1589 |
else if (IsCursorKey(keysym) || kbuflen == 0) |
else if (IsCursorKey(keysym) || kbuflen == 0) |
1590 |
fl_handle_form(keyform, formevent, keysym, xev); |
fl_handle_form(keyform, formevent, keysym, xev); |
1598 |
fl_handle_form(keyform, formevent, *ch, xev); |
fl_handle_form(keyform, formevent, *ch, xev); |
1599 |
|
|
1600 |
} |
} |
1601 |
|
|
1602 |
} |
} |
1603 |
|
|
1604 |
} |
} |
1788 |
{ |
{ |
1789 |
fl_get_form_mouse(mouseform, &fl_mousex, &fl_mousey, &fl_keymask); |
fl_get_form_mouse(mouseform, &fl_mousex, &fl_mousey, &fl_keymask); |
1790 |
st_xev.xany.window = mouseform ? mouseform->window : 0; |
st_xev.xany.window = mouseform ? mouseform->window : 0; |
1791 |
st_xev.xany.send_event = 1; /* indicating synthetic event |
st_xev.xany.send_event = 1; /* indicating synthetic event |
1792 |
*/ |
*/ |
1793 |
st_xev.xmotion.state = fl_keymask; |
st_xev.xmotion.state = fl_keymask; |
1794 |
st_xev.xmotion.x = fl_mousex; |
st_xev.xmotion.x = fl_mousex; |
2482 |
if (has_event || do_x_only) |
if (has_event || do_x_only) |
2483 |
return has_event; |
return has_event; |
2484 |
|
|
2485 |
/* if incoming XEvent has already being pumped from the socket, |
/* if incoming XEvent has already being pumped from the socket, |
2486 |
watch_io() will time out, causing a bad delay in handling xevent. |
watch_io() will time out, causing a bad delay in handling xevent. |
2487 |
Make sure there is no event in the X event queue before we go into |
Make sure there is no event in the X event queue before we go into |
2488 |
watch_io() */ |
watch_io() */ |
2489 |
if ((dox % 11) && XEventsQueued(flx->display, QueuedAfterFlush)) |
if ((dox % 11) && XEventsQueued(flx->display, QueuedAfterFlush)) |
2682 |
ob->boxtype != FL_NO_BOX && |
ob->boxtype != FL_NO_BOX && |
2683 |
(ob->boxtype != FL_FLAT_BOX || ob->objclass == FL_MENU)) |
(ob->boxtype != FL_FLAT_BOX || ob->objclass == FL_MENU)) |
2684 |
{ |
{ |
2685 |
fl_get_string_dimension(ob->lstyle, ob->lsize, ob->label, |
fl_get_string_dimension(ob->lstyle, ob->lsize, ob->label, |
2686 |
strlen(ob->label), &sw, &sh); |
strlen(ob->label), &sw, &sh); |
2687 |
|
|
2688 |
bw = (ob->boxtype == FL_UP_BOX || ob->boxtype == FL_DOWN_BOX) ? |
bw = (ob->boxtype == FL_UP_BOX || ob->boxtype == FL_DOWN_BOX) ? |