Merge branch 'fixes' into 'master'
Fixes See merge request Librem5/squeekboard!129
This commit is contained in:
		@ -46,8 +46,6 @@ enum {
 | 
				
			|||||||
    LAST_SIGNAL
 | 
					    LAST_SIGNAL
 | 
				
			||||||
};
 | 
					};
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static guint signals[LAST_SIGNAL] = { 0, };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
typedef struct _EekElementPrivate
 | 
					typedef struct _EekElementPrivate
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    gchar *name;
 | 
					    gchar *name;
 | 
				
			||||||
 | 
				
			|||||||
@ -222,7 +222,7 @@ void eek_keyboard_press_key(LevelKeyboard *keyboard, EekKey *key, guint32 timest
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    guint keycode = eek_key_get_keycode (key);
 | 
					    guint keycode = eek_key_get_keycode (key);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    emit_key_activated(keyboard->manager, keyboard, keycode, 0, TRUE, timestamp);
 | 
					    emit_key_activated(keyboard->manager, keyboard, keycode, TRUE, timestamp);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void eek_keyboard_release_key(LevelKeyboard *keyboard,
 | 
					void eek_keyboard_release_key(LevelKeyboard *keyboard,
 | 
				
			||||||
@ -247,7 +247,7 @@ void eek_keyboard_release_key(LevelKeyboard *keyboard,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    guint keycode = eek_key_get_keycode (key);
 | 
					    guint keycode = eek_key_get_keycode (key);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    emit_key_activated(keyboard->manager, keyboard, keycode, 0, FALSE, timestamp);
 | 
					    emit_key_activated(keyboard->manager, keyboard, keycode, FALSE, timestamp);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
static void
 | 
					static void
 | 
				
			||||||
 | 
				
			|||||||
@ -459,8 +459,6 @@ keysizer(EekElement *element, gpointer user_data)
 | 
				
			|||||||
static void
 | 
					static void
 | 
				
			||||||
keycounter (EekElement *element, gpointer user_data)
 | 
					keycounter (EekElement *element, gpointer user_data)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    EekKey *key = EEK_KEY(element);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    struct keys_info *data = user_data;
 | 
					    struct keys_info *data = user_data;
 | 
				
			||||||
    data->count++;
 | 
					    data->count++;
 | 
				
			||||||
    EekBounds key_bounds = {0};
 | 
					    EekBounds key_bounds = {0};
 | 
				
			||||||
@ -474,8 +472,6 @@ keycounter (EekElement *element, gpointer user_data)
 | 
				
			|||||||
static void
 | 
					static void
 | 
				
			||||||
keyplacer(EekElement *element, gpointer user_data)
 | 
					keyplacer(EekElement *element, gpointer user_data)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    EekKey *key = EEK_KEY(element);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    double *current_offset = user_data;
 | 
					    double *current_offset = user_data;
 | 
				
			||||||
    EekBounds key_bounds = {0};
 | 
					    EekBounds key_bounds = {0};
 | 
				
			||||||
    eek_element_get_bounds(element, &key_bounds);
 | 
					    eek_element_get_bounds(element, &key_bounds);
 | 
				
			||||||
 | 
				
			|||||||
@ -87,27 +87,21 @@ static void
 | 
				
			|||||||
send_fake_key (SeatEmitter *emitter,
 | 
					send_fake_key (SeatEmitter *emitter,
 | 
				
			||||||
               LevelKeyboard *keyboard,
 | 
					               LevelKeyboard *keyboard,
 | 
				
			||||||
               guint    keycode,
 | 
					               guint    keycode,
 | 
				
			||||||
               guint    keyboard_modifiers,
 | 
					 | 
				
			||||||
               gboolean pressed,
 | 
					               gboolean pressed,
 | 
				
			||||||
               uint32_t timestamp)
 | 
					               uint32_t timestamp)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
    uint32_t proto_modifiers = 0;
 | 
					 | 
				
			||||||
    guint level = keyboard->level;
 | 
					    guint level = keyboard->level;
 | 
				
			||||||
    uint32_t group = (level / 2);
 | 
					    uint32_t group = (level / 2);
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    if (keyboard_modifiers & EEK_SHIFT_MASK)
 | 
					    zwp_virtual_keyboard_v1_modifiers(emitter->virtual_keyboard, 0, 0, 0, group);
 | 
				
			||||||
        proto_modifiers |= 1<<MOD_IDX_SHIFT;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    zwp_virtual_keyboard_v1_modifiers(emitter->virtual_keyboard, proto_modifiers, 0, 0, group);
 | 
					 | 
				
			||||||
    send_virtual_keyboard_key (emitter->virtual_keyboard, keycode - 8, (unsigned)pressed, timestamp);
 | 
					    send_virtual_keyboard_key (emitter->virtual_keyboard, keycode - 8, (unsigned)pressed, timestamp);
 | 
				
			||||||
    zwp_virtual_keyboard_v1_modifiers(emitter->virtual_keyboard, proto_modifiers, 0, 0, group);
 | 
					    zwp_virtual_keyboard_v1_modifiers(emitter->virtual_keyboard, 0, 0, 0, group);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
void
 | 
					void
 | 
				
			||||||
emit_key_activated (EekboardContextService *manager,
 | 
					emit_key_activated (EekboardContextService *manager,
 | 
				
			||||||
                    LevelKeyboard     *keyboard,
 | 
					                    LevelKeyboard     *keyboard,
 | 
				
			||||||
                    guint            keycode,
 | 
					                    guint            keycode,
 | 
				
			||||||
                    EekModifierType  modifiers,
 | 
					 | 
				
			||||||
                    gboolean pressed,
 | 
					                    gboolean pressed,
 | 
				
			||||||
                    uint32_t timestamp)
 | 
					                    uint32_t timestamp)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
@ -142,5 +136,5 @@ emit_key_activated (EekboardContextService *manager,
 | 
				
			|||||||
    emitter.virtual_keyboard = manager->virtual_keyboard;
 | 
					    emitter.virtual_keyboard = manager->virtual_keyboard;
 | 
				
			||||||
    emitter.keymap = keyboard->keymap;
 | 
					    emitter.keymap = keyboard->keymap;
 | 
				
			||||||
    update_modifier_info (&emitter);
 | 
					    update_modifier_info (&emitter);
 | 
				
			||||||
    send_fake_key (&emitter, keyboard, keycode, modifiers, pressed, timestamp);
 | 
					    send_fake_key (&emitter, keyboard, keycode, pressed, timestamp);
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
				
			|||||||
@ -41,6 +41,5 @@ enum mod_indices {
 | 
				
			|||||||
void
 | 
					void
 | 
				
			||||||
emit_key_activated (EekboardContextService *manager, LevelKeyboard *keyboard,
 | 
					emit_key_activated (EekboardContextService *manager, LevelKeyboard *keyboard,
 | 
				
			||||||
                    guint            keycode,
 | 
					                    guint            keycode,
 | 
				
			||||||
                    guint            modifiers,
 | 
					 | 
				
			||||||
                    gboolean pressed, uint32_t timestamp);
 | 
					                    gboolean pressed, uint32_t timestamp);
 | 
				
			||||||
#endif // KEYEMITTER_H
 | 
					#endif // KEYEMITTER_H
 | 
				
			||||||
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user