mirror of
https://github.com/DreamMaoMao/maomaowm.git
synced 2025-11-22 06:59:52 -05:00
opt: optimzie text-input
This commit is contained in:
parent
ac05b63718
commit
6fb1807db7
2 changed files with 5 additions and 6 deletions
|
|
@ -33,7 +33,7 @@ libm = cc.find_library('m')
|
||||||
xcb = dependency('xcb', required : get_option('xwayland'))
|
xcb = dependency('xcb', required : get_option('xwayland'))
|
||||||
xlibs = dependency('xcb-icccm', required : get_option('xwayland'))
|
xlibs = dependency('xcb-icccm', required : get_option('xwayland'))
|
||||||
wayland_server_dep = dependency('wayland-server')
|
wayland_server_dep = dependency('wayland-server')
|
||||||
wlroots_dep = dependency('wlroots-0.19',version: '>=0.19.0')
|
wlroots_dep = dependency('wlroots-0.20',version: '>=0.19.0')
|
||||||
xkbcommon_dep = dependency('xkbcommon')
|
xkbcommon_dep = dependency('xkbcommon')
|
||||||
libinput_dep = dependency('libinput')
|
libinput_dep = dependency('libinput')
|
||||||
libwayland_client_dep = dependency('wayland-client')
|
libwayland_client_dep = dependency('wayland-client')
|
||||||
|
|
|
||||||
|
|
@ -301,9 +301,8 @@ static void handle_input_method_commit(struct wl_listener *listener,
|
||||||
void *data) {
|
void *data) {
|
||||||
struct dwl_input_method_relay *relay =
|
struct dwl_input_method_relay *relay =
|
||||||
wl_container_of(listener, relay, input_method_commit);
|
wl_container_of(listener, relay, input_method_commit);
|
||||||
struct wlr_input_method_v2 *input_method = data;
|
|
||||||
struct text_input *text_input;
|
struct text_input *text_input;
|
||||||
assert(relay->input_method == input_method);
|
struct wlr_input_method_v2 *input_method = relay->input_method;
|
||||||
|
|
||||||
text_input = relay->active_text_input;
|
text_input = relay->active_text_input;
|
||||||
if (!text_input) {
|
if (!text_input) {
|
||||||
|
|
@ -333,7 +332,8 @@ static void handle_keyboard_grab_destroy(struct wl_listener *listener,
|
||||||
void *data) {
|
void *data) {
|
||||||
struct dwl_input_method_relay *relay =
|
struct dwl_input_method_relay *relay =
|
||||||
wl_container_of(listener, relay, keyboard_grab_destroy);
|
wl_container_of(listener, relay, keyboard_grab_destroy);
|
||||||
struct wlr_input_method_keyboard_grab_v2 *keyboard_grab = data;
|
struct wlr_input_method_keyboard_grab_v2 *keyboard_grab =
|
||||||
|
relay->input_method->keyboard_grab;
|
||||||
wl_list_remove(&relay->keyboard_grab_destroy.link);
|
wl_list_remove(&relay->keyboard_grab_destroy.link);
|
||||||
|
|
||||||
if (keyboard_grab->keyboard) {
|
if (keyboard_grab->keyboard) {
|
||||||
|
|
@ -365,7 +365,6 @@ static void handle_input_method_destroy(struct wl_listener *listener,
|
||||||
void *data) {
|
void *data) {
|
||||||
struct dwl_input_method_relay *relay =
|
struct dwl_input_method_relay *relay =
|
||||||
wl_container_of(listener, relay, input_method_destroy);
|
wl_container_of(listener, relay, input_method_destroy);
|
||||||
assert(relay->input_method == data);
|
|
||||||
wl_list_remove(&relay->input_method_commit.link);
|
wl_list_remove(&relay->input_method_commit.link);
|
||||||
wl_list_remove(&relay->input_method_grab_keyboard.link);
|
wl_list_remove(&relay->input_method_grab_keyboard.link);
|
||||||
wl_list_remove(&relay->input_method_new_popup_surface.link);
|
wl_list_remove(&relay->input_method_new_popup_surface.link);
|
||||||
|
|
@ -570,7 +569,7 @@ struct dwl_input_method_relay *dwl_im_relay_create() {
|
||||||
relay->popup_tree = wlr_scene_tree_create(&scene->tree);
|
relay->popup_tree = wlr_scene_tree_create(&scene->tree);
|
||||||
|
|
||||||
relay->new_text_input.notify = handle_new_text_input;
|
relay->new_text_input.notify = handle_new_text_input;
|
||||||
wl_signal_add(&text_input_manager->events.text_input,
|
wl_signal_add(&text_input_manager->events.new_text_input,
|
||||||
&relay->new_text_input);
|
&relay->new_text_input);
|
||||||
|
|
||||||
relay->new_input_method.notify = handle_new_input_method;
|
relay->new_input_method.notify = handle_new_input_method;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue