/* Pure Gtk+-3 communication module. -*- coding: utf-8 -*-
Copyright (C) 1989, 1993-1994, 2005-2006, 2008-2018 Free Software
Foundation, Inc.
This file is part of GNU Emacs.
GNU Emacs is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or (at
your option) any later version.
GNU Emacs is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with GNU Emacs. If not, see . */
/* This should be the first include, as it may set up #defines affecting
interpretation of even the system includes. */
#include
#include
#ifndef __PGTKIM_H
#define __PGTKIM_H
#include "pgtkterm.h"
void pgtk_im_focus_in (struct frame *f);
void pgtk_im_focus_out (struct frame *f);
#ifndef HAVE_GTK4
bool pgtk_im_filter_keypress (struct frame *f, GdkEventKey *ev);
#else
bool pgtk_im_filter_keypress (struct frame *f, GdkEvent *ev);
#endif
void im_context_preedit_changed_cb (GtkIMContext *imc, gpointer user_data);
void im_context_preedit_end_cb (GtkIMContext *imc, gpointer user_data);
void im_context_preedit_start_cb (GtkIMContext *imc, gpointer user_data);
void im_context_commit_cb (GtkIMContext *imc, gchar *str, gpointer user_data);
gboolean im_context_retrieve_surrounding_cb (GtkIMContext *imc,
gpointer user_data);
gboolean im_context_delete_surrounding_cb (GtkIMContext *imc, int offset,
int n_chars, gpointer user_data);
#endif /* __PGTKIM_H */