mirror of
https://github.com/davatorium/rofi.git
synced 2024-11-11 13:50:48 -05:00
gitmodules: Update libnkutils
Signed-off-by: Quentin Glidic <sardemff7+git@sardemff7.net>
This commit is contained in:
parent
ac8868f3b1
commit
52aac6d3b6
5 changed files with 20 additions and 17 deletions
|
@ -40,6 +40,7 @@ struct xkb_stuff
|
||||||
/** Keyboard device id */
|
/** Keyboard device id */
|
||||||
int32_t device_id;
|
int32_t device_id;
|
||||||
NkBindings *bindings;
|
NkBindings *bindings;
|
||||||
|
NkBindingsSeat *bindings_seat;
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -140,7 +140,7 @@ void setup_abe ( void )
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean binding_trigger_action ( guint scope, gpointer user_data )
|
static gboolean binding_trigger_action ( guint64 scope, gpointer user_data )
|
||||||
{
|
{
|
||||||
return rofi_view_trigger_action ( rofi_view_get_active (), scope, GPOINTER_TO_UINT ( user_data ) );
|
return rofi_view_trigger_action ( rofi_view_get_active (), scope, GPOINTER_TO_UINT ( user_data ) );
|
||||||
}
|
}
|
||||||
|
|
|
@ -91,6 +91,7 @@ void rofi_add_error_message ( GString *str )
|
||||||
struct xkb_stuff xkb = {
|
struct xkb_stuff xkb = {
|
||||||
.xcb_connection = NULL,
|
.xcb_connection = NULL,
|
||||||
.bindings = NULL,
|
.bindings = NULL,
|
||||||
|
.bindings_seat = NULL,
|
||||||
};
|
};
|
||||||
|
|
||||||
/** Path to the configuration file */
|
/** Path to the configuration file */
|
||||||
|
@ -667,9 +668,9 @@ static gboolean main_loop_x11_event_handler ( xcb_generic_event_t *ev, G_GNUC_UN
|
||||||
{
|
{
|
||||||
case XCB_XKB_MAP_NOTIFY:
|
case XCB_XKB_MAP_NOTIFY:
|
||||||
{
|
{
|
||||||
struct xkb_keymap *keymap = xkb_x11_keymap_new_from_device ( nk_bindings_get_context ( xkb.bindings ), xcb->connection, xkb.device_id, 0 );
|
struct xkb_keymap *keymap = xkb_x11_keymap_new_from_device ( nk_bindings_seat_get_context ( xkb.bindings_seat ), xcb->connection, xkb.device_id, 0 );
|
||||||
struct xkb_state *state = xkb_x11_state_new_from_device ( keymap, xcb->connection, xkb.device_id );
|
struct xkb_state *state = xkb_x11_state_new_from_device ( keymap, xcb->connection, xkb.device_id );
|
||||||
nk_bindings_update_keymap ( xkb.bindings, keymap, state );
|
nk_bindings_seat_update_keymap ( xkb.bindings_seat, keymap, state );
|
||||||
xkb_keymap_unref ( keymap );
|
xkb_keymap_unref ( keymap );
|
||||||
xkb_state_unref ( state );
|
xkb_state_unref ( state );
|
||||||
break;
|
break;
|
||||||
|
@ -677,7 +678,7 @@ static gboolean main_loop_x11_event_handler ( xcb_generic_event_t *ev, G_GNUC_UN
|
||||||
case XCB_XKB_STATE_NOTIFY:
|
case XCB_XKB_STATE_NOTIFY:
|
||||||
{
|
{
|
||||||
xcb_xkb_state_notify_event_t *ksne = (xcb_xkb_state_notify_event_t *) ev;
|
xcb_xkb_state_notify_event_t *ksne = (xcb_xkb_state_notify_event_t *) ev;
|
||||||
nk_bindings_update_mask ( xkb.bindings,
|
nk_bindings_seat_update_mask ( xkb.bindings_seat,
|
||||||
ksne->baseMods,
|
ksne->baseMods,
|
||||||
ksne->latchedMods,
|
ksne->latchedMods,
|
||||||
ksne->lockedMods,
|
ksne->lockedMods,
|
||||||
|
@ -1063,7 +1064,8 @@ int main ( int argc, char *argv[] )
|
||||||
return EXIT_FAILURE;
|
return EXIT_FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
xkb.bindings = nk_bindings_new ( xkb_context, keymap, state );
|
xkb.bindings = nk_bindings_new ();
|
||||||
|
xkb.bindings_seat = nk_bindings_seat_new ( xkb.bindings, xkb_context, keymap, state );
|
||||||
|
|
||||||
if ( xcb_connection_has_error ( xcb->connection ) ) {
|
if ( xcb_connection_has_error ( xcb->connection ) ) {
|
||||||
g_warning ( "Connection has error" );
|
g_warning ( "Connection has error" );
|
||||||
|
|
|
@ -1438,13 +1438,13 @@ void rofi_view_itterrate ( RofiViewState *state, xcb_generic_event_t *event, xkb
|
||||||
xcb_button_press_event_t *bpe = (xcb_button_press_event_t *) event;
|
xcb_button_press_event_t *bpe = (xcb_button_press_event_t *) event;
|
||||||
state->mouse.x = bpe->event_x;
|
state->mouse.x = bpe->event_x;
|
||||||
state->mouse.y = bpe->event_y;
|
state->mouse.y = bpe->event_y;
|
||||||
nk_bindings_handle_button ( xkb->bindings, bpe->detail, NK_BINDINGS_BUTTON_STATE_PRESS, bpe->time );
|
nk_bindings_seat_handle_button ( xkb->bindings_seat, bpe->detail, NK_BINDINGS_BUTTON_STATE_PRESS, bpe->time );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case XCB_BUTTON_RELEASE:
|
case XCB_BUTTON_RELEASE:
|
||||||
{
|
{
|
||||||
xcb_button_release_event_t *bre = (xcb_button_release_event_t *) event;
|
xcb_button_release_event_t *bre = (xcb_button_release_event_t *) event;
|
||||||
nk_bindings_handle_button ( xkb->bindings, bre->detail, NK_BINDINGS_BUTTON_STATE_RELEASE, bre->time );
|
nk_bindings_seat_handle_button ( xkb->bindings_seat, bre->detail, NK_BINDINGS_BUTTON_STATE_RELEASE, bre->time );
|
||||||
if ( config.click_to_exit == TRUE ) {
|
if ( config.click_to_exit == TRUE ) {
|
||||||
if ( ( CacheState.flags & MENU_NORMAL_WINDOW ) == 0 ) {
|
if ( ( CacheState.flags & MENU_NORMAL_WINDOW ) == 0 ) {
|
||||||
if ( ( state->mouse_seen == FALSE ) && ( bre->event != CacheState.main_window ) ) {
|
if ( ( state->mouse_seen == FALSE ) && ( bre->event != CacheState.main_window ) ) {
|
||||||
|
@ -1467,7 +1467,7 @@ void rofi_view_itterrate ( RofiViewState *state, xcb_generic_event_t *event, xkb
|
||||||
for ( gint8 bi = 0; bi < 7; ++bi ) {
|
for ( gint8 bi = 0; bi < 7; ++bi ) {
|
||||||
if ( kne->keys[by] & ( 1 << bi ) ) {
|
if ( kne->keys[by] & ( 1 << bi ) ) {
|
||||||
// X11 keycodes starts at 8
|
// X11 keycodes starts at 8
|
||||||
nk_bindings_handle_key ( xkb->bindings, ( 8 * by + bi ) + 8, NK_BINDINGS_KEY_STATE_PRESSED );
|
nk_bindings_seat_handle_key ( xkb->bindings_seat, ( 8 * by + bi ) + 8, NK_BINDINGS_KEY_STATE_PRESSED );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -1478,7 +1478,7 @@ void rofi_view_itterrate ( RofiViewState *state, xcb_generic_event_t *event, xkb
|
||||||
xcb_key_press_event_t *xkpe = (xcb_key_press_event_t *) event;
|
xcb_key_press_event_t *xkpe = (xcb_key_press_event_t *) event;
|
||||||
gchar *text;
|
gchar *text;
|
||||||
|
|
||||||
text = nk_bindings_handle_key ( xkb->bindings, xkpe->detail, NK_BINDINGS_KEY_STATE_PRESS );
|
text = nk_bindings_seat_handle_key ( xkb->bindings_seat, xkpe->detail, NK_BINDINGS_KEY_STATE_PRESS );
|
||||||
if ( ( text != NULL ) && ( textbox_append_char ( state->text, text, strlen ( text ) ) ) ) {
|
if ( ( text != NULL ) && ( textbox_append_char ( state->text, text, strlen ( text ) ) ) ) {
|
||||||
state->refilter = TRUE;
|
state->refilter = TRUE;
|
||||||
}
|
}
|
||||||
|
@ -1487,7 +1487,7 @@ void rofi_view_itterrate ( RofiViewState *state, xcb_generic_event_t *event, xkb
|
||||||
case XCB_KEY_RELEASE:
|
case XCB_KEY_RELEASE:
|
||||||
{
|
{
|
||||||
xcb_key_release_event_t *xkre = (xcb_key_release_event_t *) event;
|
xcb_key_release_event_t *xkre = (xcb_key_release_event_t *) event;
|
||||||
nk_bindings_handle_key ( xkb->bindings, xkre->detail, NK_BINDINGS_KEY_STATE_RELEASE );
|
nk_bindings_seat_handle_key ( xkb->bindings_seat, xkre->detail, NK_BINDINGS_KEY_STATE_RELEASE );
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
|
|
|
@ -1 +1 @@
|
||||||
Subproject commit a997ea9ef7c8805f928ea325b0463931284afa17
|
Subproject commit e468a6a24c97b595ed65f5d638dfea94a718c88c
|
Loading…
Reference in a new issue