Merge branch 'buttonlists' into 'master'

Buttonlists

See merge request Librem5/squeekboard!145
This commit is contained in:
David Boddie
2019-09-02 14:42:19 +00:00
6 changed files with 83 additions and 57 deletions

View File

@ -1,5 +1,5 @@
#ifndef __KEYBOARD_H
#define __KYBOARD_H
#define __KEYBOARD_H
#include "stdbool.h"
#include "inttypes.h"
@ -19,6 +19,7 @@ uint32_t squeek_key_is_locked(struct squeek_key *key);
void squeek_key_set_locked(struct squeek_key *key, uint32_t pressed);
uint32_t squeek_key_get_keycode(struct squeek_key *key);
void squeek_key_set_keycode(struct squeek_key *key, uint32_t keycode);
uint32_t squeek_key_equal(struct squeek_key* key, struct squeek_key* key1);
struct squeek_symbol *squeek_key_get_symbol(struct squeek_key* key);
const char* squeek_key_to_keymap_entry(const char *key_name, struct squeek_key *key);

View File

@ -47,6 +47,13 @@ pub mod c {
unsafe { key.unwrap() }; // reference dropped
}
/// Compares pointers to the data
#[no_mangle]
pub extern "C"
fn squeek_key_equal(key: CKeyState, key2: CKeyState) -> u32 {
return Rc::ptr_eq(&key.clone_ref(), &key2.clone_ref()) as u32
}
#[no_mangle]
pub extern "C"
fn squeek_key_is_pressed(key: CKeyState) -> u32 {