Commit Graph

144 Commits

Author SHA1 Message Date
Chun-wei Fan
2d57ddd6ef gtkimcontexttime.c: Check context_ime->client_window is not NULL
Be a bit more careful in get_pango_attr_list() and
get_utf8_preedit_string() to ensure that the client_window is properly
created before proceeding, to avoid access violation/segfault crashes on
Windows with IME installed, especially when running the pickers demo.

https://bugzilla.gnome.org/show_bug.cgi?id=682919
(cherry picked from commit a866ed7378)
2012-11-26 16:31:44 +01:00
Michael Natterer
f357151cc6 Bug 668239 - texts disappear when notebook switch page at zh_CN locate
In gtkimcontextime.c, use gdk_win32_window_get_impl_hwnd() to get to
the impl's existing native window instead of GDK_WINDOW_HWND() which
implicitly ensures a native window for the widget itself. This seems
to work around whatever GDK problem with native subwindows and fixes
the bug.
2012-11-23 15:42:13 +01:00
Kazuki Iwamoto
2a24ee0756 Avoid a crash in gtk_im_context_ime_reset
When GTK+ runs with inputim-ime.dll module, there is NULL
pointer reference. Because "context_ime->client_window" may
be NULL in gtk_im_context_ime_reset.

https://bugzilla.gnome.org/show_bug.cgi?id=644906
(cherry picked from commit 74f57ee04d)
2012-11-20 12:32:37 +01:00
Matthias Clasen
53f3e5ee94 Avoid infinite recursion in the ime input module 2012-11-19 09:31:59 -05:00
Jürg Billeter
4773148f1a Use more gdk_window_ accessors instead of gdk_drawable_ accessors
This fixes compile-time warnings and crashes on 64-bit systems.
2010-11-10 09:09:38 -05:00
Benjamin Otte
3cbdc7ac89 imcontextxim: Draw with Cairo 2010-08-07 15:35:49 +02:00
Matthias Clasen
cb29d27707 Make GTK+ build against an external gdk-pixbuf 2010-06-26 02:29:29 -04:00
Christian Dywan
bb1824c131 Deprecate flag macros for toplevel, state, no window and composite child
Deprecate widget flag macros GTK_WIDGET_STATE, GTK_WIDGET_SAVED_STATE,
GTK_WIDGET_FLAGS, GTK_WIDGET_TOPLEVEL, GTK_WIDGET_NO_WINDOW and
GTK_WIDGET_COMPOSITE_CHILD.

Also deprecate the type macros GTK_WIDGET_TYPE, GTK_OBJECT_TYPE_NAME and
GTK_OBJECT_TYPE which have become redundant.

Instances of GTK_WIDGET_TOPLEVEL are replaced with gtk_widget_is_toplevel,
GTK_WIDGET_TYPE is replaced with G_OBJECT_TYPE, GTK_WIDGET_COMPOSITE_CHILD
is replaced with use of the "composite-child" property and uses of
GTK_WIDGET_NO_WINDOW are adjusted to use gtk_widget_get_has_window.

Uses of GTK_WIDGET_SAVED_STATE and GTK_WIDGET_FLAGS inside GtkWidget are
changed to direct flag usage.

Documentation is updated to refer to gtk_widget_set_has_window and
gtk_widget_get_has_window.

Gail and tests are updated as well.

Fixes: https://bugzilla.gnome.org/show_bug.cgi?id=69872
2010-01-04 07:57:05 +01:00
Nicola Fontana
1e1131c959 Do not use static GTypeInfo and GInterfaceInfo
Either g_type_register_static_simple (used by G_DEFINE_TYPE_EXTENDED)
and G_IMPLEMENT_INTERFACE use automatic variables for GTypeInfo and
GInterfaceInfo structs, while tutorials and source code often use
static variables. This commit consistently adopts the former method.

https://bugzilla.gnome.org/show_bug.cgi?id=600158
2009-11-06 01:21:09 +01:00
Behdad Esfahbod
a398c840be Add git.mk to generate .gitignore files
Add four new doc templates that were not in repository.
2009-05-04 14:29:21 -04:00
Theppitak Karoonboonyanan
34461fe7df Bug 457086 - numpad does not work when the Thai-Lao input method is used
2009-03-02  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	Bug 457086 - numpad does not work when the Thai-Lao input method is
	used

	* modules/input/gtkimcontextthai.c (is_context_lost_key): Do not count
	character-generating keypads as context-lost keys. (patch recommitted
	after approval)


svn path=/trunk/; revision=22437
2009-03-02 04:17:28 +00:00
Theppitak Karoonboonyanan
20b78ae6e6 Revert the unapproved patch for bug 457086.
2009-02-19  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	* modules/input/gtkimcontextthai.c (is_context_lost_key): Revert the
	unapproved patch for bug 457086.


svn path=/trunk/; revision=22371
2009-02-19 02:05:07 +00:00
Theppitak Karoonboonyanan
a99a91fd22 Bug 457086 - numpad does not work when the Thai-Lao input method is used
2009-02-18  Theppitak Karoonboonyanan  <thep@linux.thai.net>

	Bug 457086 - numpad does not work when the Thai-Lao input method is
	used

	* modules/input/gtkimcontextthai.c (is_context_lost_key): Do not count
	character-generating keypads as context-lost keys.


svn path=/trunk/; revision=22354
2009-02-18 15:19:30 +00:00
Daniel Elstner
47aae53285 Remove the namespace prefix from functions defined locally only. Clean up
* modules/input/gtkimcontextmultipress.[ch]: Remove the namespace
prefix from functions defined locally only.  Clean up the code and
change indentation to match the GTK+ coding style.
(_GtkImContextMultipress::key_sequences): Replace array of pointers
by GHashTable.  Adapt the implementation accordingly.
(passthrough_enabled_for_window): Remove.  The passthrough hack is
no longer necessary thanks to the recently introduced "im-module"
property of GtkEntry and GtkTextView.
(load_config): Rework to implement an improved configuration file
format.  Just fetch all keys of the group instead of expecting the
keys to be named a certain way.  This also allows interpreting the
config key itself as the GDK key name to bind the character sequence
to, thereby making it independent of the sequence itself.

* modules/input/im-multipress.conf: New example configuration using
the new syntax.  The example sequences are now bound to the numeric
keypad and imitate the behavior of a standard mobile phone.

svn path=/trunk/; revision=22125
2009-01-16 15:02:06 +00:00
Daniel Elstner
3c5a7c3b70 Maintenance of Multipress input method by Openismus GmbH:
* modules/input/gtkimcontextmultipress.[ch]: Clean up the code
a bit to follow the GTK+ coding style more closely.  Fix the code
to emit "preedit-start" and "preedit-end", too, rather than only
"preedit-changed".
(GTK_IM_CONTEXT_MULTIPRESS*): Rename incorrectly spelled macros
gtk_im_context_multipress*. Shouldn't break API or ABI as it's
only used internally.
* modules/input/immultipress.c: More cleanup,
* modules/input/README.multipress: ditto.

svn path=/trunk/; revision=21864
2008-12-10 11:58:37 +00:00
Matthias Clasen
3f8d98b94d Bug 339367 – Incorrect spotlocation
2008-09-27  Matthias Clasen  <mclasen@redhat.com>

        Bug 339367 – Incorrect spotlocation

        * modules/input/gtkimcontextxim.c: Correct the spot location
        for on-the-spot style.

svn path=/trunk/; revision=21537
2008-09-28 03:21:15 +00:00
Michael Natterer
e0d30ee141 define -DGDK_PIXBUF_DISABLE_DEPRECATED in the global CFLAGS.
2008-08-12  Michael Natterer  <mitch@imendio.com>

	* configure.in: define -DGDK_PIXBUF_DISABLE_DEPRECATED in the
	global CFLAGS.

	* gdk-pixbuf/Makefile.am: make the contents gdk-pixbuf-marshal.h
	visible for GDK_PIXBUF_COMPILATION.

	* contrib/gdk-pixbuf-xlib/Makefile.am
	* demos/Makefile.am
	* demos/gtk-demo/Makefile.am
	* gdk-pixbuf/pixops/Makefile.am
	* gdk/Makefile.am
	* gdk/x11/Makefile.am
	* gtk/Makefile.am
	* gtk/tests/Makefile.am
	* gtk/theme-bits/Makefile.am
	* modules/engines/ms-windows/Makefile.am
	* modules/engines/pixbuf/Makefile.am
	* modules/input/Makefile.am
	* perf/Makefile.am
	* tests/Makefile.am: remove -DDGDK_PIXBUF_DISABLE_DEPRECATED here.


svn path=/trunk/; revision=21096
2008-08-12 15:04:55 +00:00
Sven Neumann
e3e126ae9e modules/input/gtkimcontextime.c modules/input/gtkimcontextmultipress.c use
2008-08-11  Sven Neumann  <sven@gimp.org>

	* modules/input/gtkimcontextime.c
	* modules/input/gtkimcontextmultipress.c
	* modules/input/gtkimcontextxim.c: use canonical signal names.


svn path=/trunk/; revision=21070
2008-08-11 14:55:31 +00:00
Matthias Clasen
c04c884f35 Use a second-granularity timer.
svn path=/trunk/; revision=20922
2008-07-31 22:27:02 +00:00
Cody Russell
57223c9a05 Revert name change
svn path=/trunk/; revision=20724
2008-07-01 22:57:50 +00:00
Cody Russell
fce9c8b7d4 Practically everything changed.
2008-06-30  Cody Russell  <bratsche@gnome.org>

        * Practically everything changed.

        Change	all references	of GIMP	Toolkit	(and variations	of it)
        to GTK+	Toolkit, showing no mercy at all to our	beloved
	ancestry. (#540529)


svn path=/trunk/; revision=20709
2008-06-30 23:01:56 +00:00
Johan Dahlin
d97cdbdf53 Include "config.h" instead of <config.h> Command used: find -name
2008-06-21  Johan Dahlin  <jdahlin@async.com.br>

    * *.[ch]: Include "config.h" instead of <config.h>
    Command used:
    find -name \*.[ch]|xargs perl -p -i -e 's/^#include <config.h>/#include "config.h"/g'
    Rubberstamped by Mitch and Tim


svn path=/trunk/; revision=20669
2008-06-22 14:28:52 +00:00
Tor Lillqvist
7ff875bb1a Don't use the deprecated GTK_* GtkType macros.
2008-06-17  Tor Lillqvist  <tml@novell.com>

	* modules/input/gtkimcontextime.h: Don't use the deprecated GTK_*
	GtkType macros.


svn path=/trunk/; revision=20434
2008-06-17 19:11:54 +00:00
Michael Natterer
0b9ee4a431 modules/input/gtkimcontextmultipress.h modules/input/gtkimcontextthai.h
2008-06-17  Michael Natterer  <mitch@imendio.com>

	* modules/input/gtkimcontextmultipress.h
	* modules/input/gtkimcontextthai.h
	* modules/input/gtkimcontextxim.h: use G_TYPE instead of GTK_CHECK
	type checking macros.


svn path=/trunk/; revision=20430
2008-06-17 14:58:10 +00:00
Michael Natterer
d6ef4416f5 modules/input/gtkimcontextime.h modules/input/gtkimcontextmultipress.h
2008-05-28  Michael Natterer  <mitch@imendio.com>

	* modules/input/gtkimcontextime.h
	* modules/input/gtkimcontextmultipress.h
	* modules/input/gtkimcontextthai.h
	* modules/input/gtkimcontextxim.h: include <gtk/gtk.h> instead of
	individual files.

	* modules/input/gtkimcontextime.c
	* modules/input/gtkimcontextmultipress.c
	* modules/input/gtkimcontextxim.c
	* modules/input/imam-et.c
	* modules/input/imcedilla.c
	* modules/input/imcyrillic-translit.c
	* modules/input/iminuktitut.c
	* modules/input/imipa.c
	* modules/input/imti-er.c
	* modules/input/imti-et.c
	* modules/input/imviqr.c: ditto. Some minor cleanups like moving
	"gtk/gtkintl.h" to the end of includes.


svn path=/trunk/; revision=20200
2008-05-27 23:55:28 +00:00
Michael Natterer
a21f711c67 examples/gtkdial/gtkdial.h use G_BEGIN/END_DECLS.
2008-05-26  Michael Natterer  <mitch@imendio.com>

	* examples/gtkdial/gtkdial.h
	* modules/input/gtkimcontextthai.h: use G_BEGIN/END_DECLS.


svn path=/trunk/; revision=20179
2008-05-26 14:34:24 +00:00
Michael Natterer
c56943d3cd use GETTEXT_PACKAGE instead of "gtk20".
2008-05-02  Michael Natterer  <mitch@imendio.com>

	* modules/input/imthai.c: use GETTEXT_PACKAGE instead of "gtk20".


svn path=/trunk/; revision=20066
2008-05-02 10:54:56 +00:00
Matthias Clasen
1c12277966 Register the right translation domain.
* modules/imput/imthai.c: Register the right translation domain.


svn path=/trunk/; revision=20060
2008-05-01 14:03:35 +00:00
Michael Natterer
53dd05475b include <pango/pango.h> instead of <pango/pango-layout.h>.
2008-04-25  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkprintcontext.h: include <pango/pango.h> instead of
	<pango/pango-layout.h>.

	* gtk/gtkiconfactory.c
	* gtk/gtkimmodule.c
	* gtk/gtkmain.c
	* gtk/gtkmodules.c
	* gtk/queryimmodules.c: remove inclusion of single files from
	pango, none of them was actually needed.

	* modules/input/gtkimcontextime.c: include <pango/pango.h> instead of
	<pango/pango-utils.h>.


svn path=/trunk/; revision=20042
2008-04-25 15:18:07 +00:00
Michael Natterer
9f1bc132a2 gtk/gtkicontheme.h include <gdk/gdk.h> instead of <gdk/gdkscreen.h>.
2008-04-18  Michael Natterer  <mitch@imendio.com>

	* gtk/gtkicontheme.h
	* gtk/gtkrecentmanager.h: include <gdk/gdk.h> instead of
	<gdk/gdkscreen.h>.

	* gtk/gtkbuilderparser.c
	* gtk/gtklinkbutton.c
	* gtk/gtkpreview.c
	* gtk/gtkrecentchooserdefault.c
	* gtk/gtkrecentchoosermenu.c
	* modules/input/gtkimcontextthai.c: remove inclusion of single
	files from gdk, none of the includes was actually needed.


svn path=/trunk/; revision=20023
2008-04-18 14:56:23 +00:00
Tor Lillqvist
2dce0b35a5 Bug 523225 - modules/input/im*.c: MODULE_ENTRY macros make illegal code
2008-03-18  Tor Lillqvist  <tml@novell.com>

	Bug 523225 - modules/input/im*.c: MODULE_ENTRY macros make illegal code
	
	* modules/input/im*.c: Modify the MODULE_ENTRY macro so the
	G_MODULE_ENTRY decoration can be put in a more correct place.


svn path=/trunk/; revision=19902
2008-03-18 21:29:00 +00:00
Tor Lillqvist
6ce7b71f9c Bug 99192 - Add --with-include-input-modules
2008-03-18  Tor Lillqvist  <tml@novell.com>

	Bug 99192 - Add --with-include-input-modules

	* configure.in: Add --with-included-immodules switch. Handled in a
	similar way as the --with-included-loaders switch. For each input
	method module foo: Collect the list of input modules to be built
	into libgtk into INCLUDED_IMMODULE_OBJ. Collect a list of
	-DINCLUDE_IM_foo definitions into INCLUDED_IMMODULE_DEFINE.
	Define Automake conditionals INCLUDE_IM_FOO.

	* modules/input/Makefile.am: For modules to be included in libgtk,
	build a static library.
	
	* modules/input/im*.c: Use MODULE_ENTRY macros much like in
	gdk-pixbuf to get unique names for the functions called by libgtk
	in the included case. Use G_MODULE_EXPORT in the non-included case
	so that we don't unnecessarily export unneeded random global
	symbols on Windows.

	* gtk/Makefile.am: Build the included modules and link them into libgtk.

	* gtk/gtkimmodule.c: Handle the built-in modules. Remove
	copy/paste leftover mentions of "themes" in comments.


svn path=/trunk/; revision=19896
2008-03-17 23:53:18 +00:00
Michael Natterer
64c73a61b7 Remove all .cvsignore files.
svn path=/trunk/; revision=19169
2007-12-13 11:18:45 +00:00
15:39:40 Tim Janik
2dc08ada49 call g_test_init() from gtk_test_init().
2007-11-22 15:39:40  Tim Janik  <timj@imendio.com>

        * gtk/gtktestutils.c: call g_test_init() from gtk_test_init().

        * gtk/tests/testing.c: use g_test_add_func() to register tests and use
	g_test_run() to run the tests to integrate with the testing framework.

        * gtk/tests/Makefile.am: removed exemplary testing rules.

        * Makefile.am, gtk/tests/Makefile.am, gtk/Makefile.am:
        * gtk/xdgmime/Makefile.am, gtk/theme-bits/Makefile.am:
        * tests/Makefile.am, docs/reference/gdk-pixbuf/Makefile.am:
        * docs/reference/gdk/Makefile.am, docs/reference/gtk/Makefile.am:
        * docs/reference/Makefile.am, docs/tools/Makefile.am:
        * docs/tutorial/Makefile.am, docs/faq/Makefile.am, docs/Makefile.am:
        * gdk-pixbuf/pixops/Makefile.am, gdk-pixbuf/Makefile.am:
        * demos/gtk-demo/Makefile.am, demos/Makefile.am:
        * modules/input/Makefile.am, modules/printbackends/file/Makefile.am:
        * modules/printbackends/test/Makefile.am, modules/printbackends/Makefile.am:
        * modules/printbackends/cups/Makefile.am, modules/printbackends/lpr/Makefile.am:
        * modules/engines/ms-windows/Theme/gtk-2.0/Makefile.am:
        * modules/engines/ms-windows/Theme/Makefile.am:
        * modules/engines/ms-windows/Makefile.am:
        * modules/engines/Makefile.am,  modules/engines/pixbuf/Makefile.am:
        * modules/Makefile.am, m4macros/Makefile.am, perf/Makefile.am:
        * contrib/Makefile.am, contrib/gdk-pixbuf-xlib/Makefile.am:
        * gdk/directfb/Makefile.am, gdk/linux-fb/Makefile.am:
        * gdk/quartz/Makefile.am, gdk/win32/rc/Makefile.am:
        * gdk/win32/Makefile.am, gdk/x11/Makefile.am, gdk/Makefile.am:
	include $(top_srcdir)/Makefile.decl, adapted EXTRA_DIST assignments.



svn path=/trunk/; revision=19033
2007-11-22 14:38:26 +00:00
Matthias Clasen
35dc88e778 Fix some live cycle issues
svn path=/trunk/; revision=18888
2007-10-07 18:17:41 +00:00
Daniel Elstner
d5fef5c60f Change input method behavior to act on key presses instead of key
* modules/input/gtkimcontextmultipress.c (vfunc_filter_keypress):
Change input method behavior to act on key presses instead of
key releases, matching normal text input behavior.  This change
alleviates the need to take special action for control keys not
handled by the input module itself.

svn path=/trunk/; revision=18169
2007-06-17 09:48:28 +00:00
Matthias Clasen
fc9a5caba2 Fix broken DESTDIR support
svn path=/trunk/; revision=17907
2007-05-24 19:43:05 +00:00
Behdad Esfahbod
e2f8c663e2 Fix check for modifier keys. (#438261, Theppitak Karoonboonyanan)
2007-05-14  Behdad Esfahbod  <behdad@gnome.org>

        * modules/input/gtkimcontextthai.c
        (gtk_im_context_thai_filter_keypress):
        Fix check for modifier keys. (#438261, Theppitak Karoonboonyanan)


svn path=/trunk/; revision=17842
2007-05-14 10:10:46 +00:00
Tor Lillqvist
800c1392c0 Use LDADDS for im-multipress.la, too:
2007-03-27  Tor Lillqvist  <tml@novell.com>

	* modules/input/Makefile.am: Use LDADDS for im-multipress.la, too: 


svn path=/trunk/; revision=17565
2007-03-27 22:11:38 +00:00
Matthias Clasen
f326c1e9ec Add the multipress input method. (#417446, Johannes Schmid, Murray
2007-03-18  Matthias Clasen <mclasen@redhat.com> 

        * modules/input/gtkimcontextmultipress.[hc]:
        * modules/input/im-multipress.conf:
        * modules/input/immultipress.c:
        * modules/input/README.multipress: Add the multipress input
        method.  (#417446, Johannes Schmid, Murray Cumming)

        * modules/input/Makefile.am: Glue



svn path=/trunk/; revision=17541
2007-03-18 05:34:24 +00:00
Matthias Clasen
455bc10de5 Don't commit modifier-adorned characters. (#331369, #335796, Lin Ma and
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * modules/input/gtkimcontextxim.c 
        (gtk_im_context_xim_filter_keypress): Don't commit
        modifier-adorned characters.  (#331369, #335796, Lin Ma
        and others)



svn path=/trunk/; revision=17446
2007-03-09 23:36:55 +00:00
Matthias Clasen
82ce59cd0f Remove unnecessary NULL checks before g_free(). (#369666, Morten Welinder,
2007-03-09  Matthias Clasen <mclasen@redhat.com>

        * Everywhere: Remove unnecessary NULL checks before
        g_free().  (#369666, Morten Welinder, Djihed Afifi)

        * configure.in: Check for ftw.h



svn path=/trunk/; revision=17444
2007-03-09 21:57:37 +00:00
Michael Natterer
ff560c934e destroy the XIM only if it exists. While the code does look safe in
2007-01-26  Michael Natterer  <mitch@imendio.com>

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize):
	destroy the XIM only if it exists. While the code does look safe
	in general, there can be corner cases where the "reconnecting"
	boolean being FALSE does not correspond to the XIM being
	allocated (fix taken from maemo-gtk).


svn path=/trunk/; revision=17218
2007-01-26 13:31:35 +00:00
Matthias Clasen
c851a85dc3 Be careful to not override GTK+ translations with the translations of the
2006-12-23  Matthias Clasen  <mclasen@redhat.com>

        * gtk/gtkimmulticontext.c: Be careful to not override
        GTK+ translations with the translations of the input
        method.  (#317080, Tor Lillqvist)

        * modules/input/imcedilla.c: Use standard macros
        for translation domain and locale dir.
2006-12-23 21:25:16 +00:00
Behdad Esfahbod
cbfd2b96b8 Remove the broken Thai input method and add a functional Thai and Lao
2006-11-28  Behdad Esfahbod  <behdad@gnome.org>

        Remove the broken Thai input method and add a functional Thai and Lao
        input method by Theppitak Karoonboonyanan. (#81031)

        * modules/input/imthai.c:
        * modules/input/gtkimcontextthai.c:
        * modules/input/gtkimcontextthai.h:
        * modules/input/thai-charprop.c:
        * modules/input/thai-charprop.h:
        Added.

        * modules/input/imthai-broken.c:
        Removed.

        * modules/input/Makefile.am:
        Updated.
2006-11-29 01:14:04 +00:00
Matthias Clasen
241ff0b6bd Cleanups 2006-10-08 05:32:07 +00:00
Behdad Esfahbod
6a66c972ca If major.minor of required and available glib versions are the same, add
2006-01-28  Behdad Esfahbod  <behdad@gnome.org>

        * configure.in: If major.minor of required and available glib versions
        are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)

        * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
2006-01-29 04:00:45 +00:00
Tor Lillqvist
2f4eb8fdf4 Include <config.h>. (#317444, Kazuki Iwamoto)
2005-09-28  Tor Lillqvist  <tml@novell.com>

	* modules/input/imime.c: Include <config.h>. (#317444, Kazuki
	Iwamoto)
2005-09-28 16:03:11 +00:00
Matthias Clasen
2c9125dace Add copyright and license information 2005-07-12 04:05:26 +00:00
Matthias Clasen
2b6ec82856 Fix includes 2005-07-06 00:31:45 +00:00