forked from enlightenment/enlightenment
parent
7728f47f3f
commit
6980eb0bc7
|
@ -523,6 +523,7 @@ PKG_CHECK_MODULES(E_INIT, [
|
||||||
PKG_CHECK_MODULES(E_ALERT, [
|
PKG_CHECK_MODULES(E_ALERT, [
|
||||||
xcb
|
xcb
|
||||||
xcb-shape
|
xcb-shape
|
||||||
|
xcb-keysyms
|
||||||
eina >= ${efl_version}
|
eina >= ${efl_version}
|
||||||
ecore >= ${efl_version}
|
ecore >= ${efl_version}
|
||||||
ecore-ipc >= ${efl_version}
|
ecore-ipc >= ${efl_version}
|
||||||
|
|
|
@ -12,7 +12,9 @@
|
||||||
#include <Ecore.h>
|
#include <Ecore.h>
|
||||||
#include <Ecore_Ipc.h>
|
#include <Ecore_Ipc.h>
|
||||||
#include <xcb/xcb.h>
|
#include <xcb/xcb.h>
|
||||||
|
#include <xcb/xcb_keysyms.h>
|
||||||
#include <xcb/shape.h>
|
#include <xcb/shape.h>
|
||||||
|
#include <X11/keysym.h>
|
||||||
|
|
||||||
#define WINDOW_WIDTH 320
|
#define WINDOW_WIDTH 320
|
||||||
#define WINDOW_HEIGHT 240
|
#define WINDOW_HEIGHT 240
|
||||||
|
@ -93,7 +95,7 @@ main(int argc, char **argv)
|
||||||
|
|
||||||
title = "Enlightenment Error";
|
title = "Enlightenment Error";
|
||||||
str1 = "(F1) Recover";
|
str1 = "(F1) Recover";
|
||||||
str2 = "(F2) Exit";
|
str2 = "(F12) Logout";
|
||||||
|
|
||||||
_e_alert_create();
|
_e_alert_create();
|
||||||
_e_alert_display();
|
_e_alert_display();
|
||||||
|
@ -422,15 +424,23 @@ _e_alert_draw(void)
|
||||||
static int
|
static int
|
||||||
_e_alert_handle_key_press(xcb_generic_event_t *event)
|
_e_alert_handle_key_press(xcb_generic_event_t *event)
|
||||||
{
|
{
|
||||||
|
xcb_key_symbols_t *symbols;
|
||||||
xcb_key_press_event_t *ev;
|
xcb_key_press_event_t *ev;
|
||||||
|
xcb_keysym_t key;
|
||||||
|
int r = 0;
|
||||||
|
|
||||||
ev = (xcb_key_press_event_t *)event;
|
ev = (xcb_key_press_event_t *)event;
|
||||||
if (ev->detail == 67) // F1
|
symbols = xcb_key_symbols_alloc(conn);
|
||||||
return 1;
|
key = xcb_key_symbols_get_keysym(symbols, ev->detail, 0);
|
||||||
else if (ev->detail == 68) // F2
|
|
||||||
return 2;
|
if (key == XK_F1)
|
||||||
else
|
r = 1;
|
||||||
return 0;
|
else if (key == XK_F12)
|
||||||
|
r = 2;
|
||||||
|
|
||||||
|
xcb_key_symbols_free(symbols);
|
||||||
|
|
||||||
|
return r;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int
|
static int
|
||||||
|
|
Loading…
Reference in New Issue