729 Commits

Author SHA1 Message Date
Ek Kato
541aa72f86 Fix missing return from quartz_filter_keypress
(cherry picked from commit 0ae728e242)
2013-08-29 14:13:31 -07:00
Ek Kato
a2149a671a Bug 705750 Quartz input method doesn't work correctly for Chinese characters 2013-08-16 10:25:25 -07:00
Cody Russell
36e26c8a03 Fix a crasher that was introduced by 9ca802161e
due to preedit_str being initialized as an empty string rather than NULL.
2013-08-15 15:11:50 -05:00
Michael Hutchison
5af66c3f0d Bug 705182 Reset Cocoa IME state when immodule is reset
Commits the pre-edit string on receipt of focus_out and reset
commands.
Patch refinements by Cody Russell <bratsche@gnome.org> and
Ek Kato <ek.kato@gmail.com>
2013-08-15 10:06:13 -07:00
John Ralls
12fe6a9a1a Bug Bug 703789 - gtk.immodules still referenced
After switch to immodules.cache
2013-07-28 13:59:55 -07:00
Takuro Ashie
c064e18894 imquartz: Fallback to slave IM context if no NSEvent exists.
When an application translates a key event and drop its native event
before passing to imquartz, it can't recognize the NSEvent. On this
case imquartz doesn't emit any signals such as "commit" signal so
that the application doesn't insert any text. To avoid no response,
at least imquartz should fallback to slave GtkIMContextSimple.

https://bugzilla.gnome.org/show_bug.cgi?id=694273#c27
2013-07-27 13:52:39 -07:00
Marek Kasik
a057ed26dc printing: List Avahi printers
Show printers advertised by avahi on local network. CUPS
backend now looks for _ipps._tcp and _ipp._tcp services
offered by avahi. If it finds such a service (printer)
it requests its attributes through IPP_GET_PRINTER_ATTRIBUTES
ipp request and adds it to the list of printers. Such printer
behaves like a remote printer then.
If an avahi printer is a default printer then it is considered
default by the backend only if there is no local or remote
default printer.
This functionality is enabled when building Gtk+ with CUPS 1.6
or later because it replaces browsing protocol removed in CUPS 1.6.

https://bugzilla.gnome.org/show_bug.cgi?id=702455
2013-06-25 14:43:43 +02:00
Emmanuele Bassi
162430fe5a settings: Move setting property registration in gtksettings.c
Some GtkSettings property are registered by other classes. This leads
to the "interesting" issue that setting GtkSettings:gtk-button-images
requires that the GtkButton class is referenced first - or that a
GtkButton is created.

https://bugzilla.gnome.org/show_bug.cgi?id=632538

This commit is a cherry-pick from master which (sadly) fixed the issue
only after we started the 2.9x work, and I completely forgot to backport
it. This is needed because GTK 2.x started tripping the warning added in
GObject by this bug:

https://bugzilla.gnome.org/show_bug.cgi?id=698614

Cherry-picked-from: 9f9edb662e
Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>
2013-06-10 16:05:27 +01:00
Marek Kasik
7b5e7a72fc printing: Show correct status of a job
"job-state" is IPP_TAG_ENUM not IPP_TAG_INTEGER.
2013-06-06 11:14:21 +02:00
Colin Walters
28ac40f0f9 modules/input: Only build quartz module if we're targeting quartz
Otherwise the build is broken on GNU/Linux and Win32.
2013-05-20 14:06:32 -04:00
E K Kato
21c775a2c8 Bug 694273 - Support for NSTextInputClient in text widgets 2013-05-20 10:03:17 -07:00
Rémi Cardona
8b719abcbb Remove dangling weak-refs to TreeModel object
When a tree view is detroyed, its GailTreeView is destroyed as well but the
weak references are kept and thus point to a freed memory block. A
segfault may arise when the model is destroyed in turn and the weak-ref
mechanism tries to clear the pointers in freed memory.

This patch removes the weak references either when the GailTreeView is
being freed or when a new model is attached to the underlying GtkTreeView.

https://bugzilla.gnome.org/show_bug.cgi?id=694711
2013-05-09 11:55:46 -04:00
Christophe Fergeau
3acacc0384 Sanitize memory handling in cups_request_printer_list_cb
gtk+ was trying to display already freed strings, leaking memory,
...I noticed this because I was getting weird blinking characters
as the status of my cups printers, and valgrind confirmed something
was wrong.

https://bugzilla.gnome.org/show_bug.cgi?id=683072
2013-04-08 11:15:50 +02:00
Jan Rękorajski
85825ebaf2 print dialog: Fix authentication logic
Reset state of CUPS requests correctly during authentization and
check CUPS requests for errors.
Don't initialize variables holding password and username with empty
string (#664640).
2013-01-18 14:29:53 +01:00
Marek Kasik
d9f9925878 printing: Add "Custom." prefix only once to paper size
Check whether "Custom." prefix is already present in the name
of selected paper size. (#679883)
(cherry picked from commit be7752183e)
2012-12-16 19:17:45 +01:00
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
Michael Natterer
c5421263e4 gail: use connect_object() for connecting to GtkTextBuffer signals
because the user_data is the GtkTextView. This used to crash when the
text view got destroyed, and the buffer was used for another view.
Fixes bug #652204.
2012-11-05 03:19:50 +01:00
Cosimo Cecchi
85f2a721cf pixbuf-engine: add a GtkRC option for widget direction
Add a GtkRC option to select for an LTR/RTL widget direction in the
pixbuf engine; this will allow the engine to apply different theming
assets according to the text direction, which is useful when theming
e.g. a spinbutton or a combobox entry.
2012-07-05 10:08:10 -04:00
John Ralls
63f6e92001 modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
Fix up accesses of ipp structures in gtkcupsutils.c
2012-04-23 14:50:01 -07:00
John Ralls
75103b62e5 modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
Having refactored cups_request_printer_list_cb so that the cups
 version-dependent block size is small enough to be handled in a single
 ifdef, make the ifdef HAVE_CUPS_API_1_6 block
2012-04-23 14:49:47 -07:00
John Ralls
7d2725e400 Move some variable declarations into the scopes in which they're used. 2012-04-23 14:49:25 -07:00
John Ralls
b7d59f73db Extract Function cups_create_printer 2012-04-23 14:48:52 -07:00
John Ralls
0d1edac55b Extract function cups_printer_handle_attribute 2012-04-23 14:48:39 -07:00
John Ralls
61dd746d51 Extract printer setup variables into a struct
So that it can be passed as a single parameter to functions as we
extract-function to make cups_request_printer_list_cb more manageable.

Note that not all of the affected variables are changed in this
changeset. Those are in extracted functions and will be addressed in the
next two changes.
2012-04-23 14:48:25 -07:00
John Ralls
399f31021c Create enum PrinterStateLevel
Fixes "magic number" in printer_state_reason_level.
2012-04-23 14:47:33 -07:00
John Ralls
3100279bf1 Extract reasons and reasons_desc arrays to file level
So that they can be used from more than one function. Rename them to
avoid naming conflicts.
2012-04-23 14:47:15 -07:00
John Ralls
0883b09086 modules/printing/cups/gtkprintbackendcups.c won't build with CUPS 1.6
The first, simple changes. Turns off the deprecation warnings and
 substitutes macros and short ifdef blocks where feasible.
2012-04-23 14:46:54 -07:00
Marek Kasik
66c99016d3 printing: Don't crash when printing
This commit fixes crash which occurs in Firefox, Thunderbird and Inkscape
during printing. This crash was caused because of wrong handling of Custom
CUPS options. (#543520)
2012-01-31 12:01:43 +01:00
LRN
fc3cff11b5 win32: Draw arrows as polygons, not as rows of pixels
https://bugzilla.gnome.org/show_bug.cgi?id=665955
2012-01-25 16:51:28 +01:00
Benjamin Berg
85099bf6a6 Strip "Custom." prefix when getting default options from cups. 2012-01-17 20:34:42 +01:00
Benjamin Berg
8170436e61 Set cups Custom print options correctly (bug #543520, patch by Marek Kašík)
This patch fixes the cups print backend to pass Custom options with
the "Custom." prefix to cups if neccessary.
2012-01-06 00:18:37 +01:00
Dieter Verfaillie
81955757bc win32: don't rely on GTK_IS_H* or GTK_IS_V_* macros
But use the orientable interface instead. This has already proven
usefull for GtkVolumeButton widgets (see previous commit) so apply
the same logic all over the place.
2011-12-07 20:01:18 +01:00
Dieter Verfaillie
60d471b2d0 win32: Fix vertical GtkVolumeButton widget rendering.
The trough was being rendered horizontal for vertical
GtkVolumeButton widgets. Not relying on GTK_IS_VSCALE
but using the orientable interface instead fixes this.
2011-12-07 20:01:12 +01:00
Dieter Verfaillie
af309a50af win32: correct the notebook tab gap_side vs tab_pos comment 2011-12-07 20:01:06 +01:00
Dieter Verfaillie
7cfefd6e98 win32: fix expander rendering for horizontal GtkToolItemGroups
Expanders are usually drawn as little triangles and unfortunately
do not support rotated drawing modes. So a hack is applied (see
gtk_tool_item_group_header_expose_event_cb for details) when
drawing a GtkToolItemGroup's header for horizontal GtkToolShells,
forcing the triangle to point in the right direction. Except we
don't draw expanders as triangles on Windows. Usually, expanders
are represented as "+" and "-". It sucks for "+" to become "-" and
the inverse when we don't want to, so reverse the hack here.
2011-12-07 20:01:00 +01:00
Dieter Verfaillie
d9906a9ac4 win32: clean up detail checks
By borrowing the DETAIL macro from clearlooks' clearlooks_style.c
2011-12-07 20:00:55 +01:00
Dieter Verfaillie
980133d732 win32: set msw-button child-displacement-x & y to 0 when XP theme is active
Active buttons have not had their contents (icon & label)
displaced ever since uxtheming became available in Windows XP.

We still care about this displacement for classic themes
though (even on Vista/7 where classic themes are used to
implement High Contrast support).
2011-12-07 20:00:41 +01:00
Dieter Verfaillie
f7354da574 win32: remove unused (and commented out) combo_box_draw_arrow 2011-12-07 20:00:26 +01:00
Dieter Verfaillie
d8c2db3335 win32: plug leak when drawing handles
The cairo context was always created but only ever used
and destroyed(!) in the second if block (!GTK_IS_PANED (widget))
so moving around the gdk_cairo_create call would have
been the obvious fix.

However, said if block is not used at all, so clean
up draw_handle instead.

https://bugzilla.gnome.org/show_bug.cgi?id=663543
2011-11-09 14:51:55 +01:00
Chun-wei Fan
278325f611 msw_style.c: Use G_PI rather than M_PI
M_PI is not universally available...
2011-11-08 12:37:15 +08:00
Alexander Larsson
2090e37ffb win32: Fix ms-windows theme to not create native subwindows
GDK_WINDOW_HWND() calls from outside gdk calls ensure_native_window,
but we really want the HWND of the impl window, so call
the new gdk_win32_window_get_impl_hwnd() instead.
2011-10-28 11:06:59 +02:00
Jerome Lambourg
b85176789b win32: fix themed notebook tab renderering
The ms-windows engine incorrectly displays notebooks: the
tabs are not attached to the body, and look more like
regular buttons than actual notebook tabs. Also, the frame
around the notebooks is also incorrectly drawn.

https://bugzilla.gnome.org/show_bug.cgi?id=650300
2011-10-21 14:45:59 +02:00
Dieter Verfaillie
97a0234370 win32: correctly handle difference between tab_pos and gap_side when drawing an extension (notebook tab) 2011-10-21 14:45:54 +02:00
Dieter Verfaillie
900f39d595 win32: add TODO mentioning GtkButton::child-displacement-x & y should be 0 when XP theme is active 2011-10-21 14:45:50 +02:00
Arnaud Charlet
628093a4e1 win32: fix typo in msw_style.c
https://bugzilla.gnome.org/show_bug.cgi?id=647460
2011-10-21 14:45:42 +02:00
Benjamin Berg
f0726904cb Fix polling for new data in cups print backend (bug #599664) 2011-08-06 10:40:36 +02:00
Javier Jardón
bfe0193eaf gail: Use 'const' instead G_CONST_RETURN 2011-06-15 18:20:17 +01:00