]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
New file with a set of tests for GtkCellRendererText. The idea is to run a
[~andy/gtk] / ChangeLog.pre-2-10
1 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
2
3         * tests/testcellrenderertext.c: New file with a set of tests for
4         GtkCellRendererText.  The idea is to run a text renderer through
5         most of its interesting property values to see that it works
6         correctly.
7
8         * tests/Makefile.am: Added testcellrenderertext.
9
10         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
11         entry/exit of this function for profiling.
12         (gtk_file_chooser_default_style_set): Mark the start/end of the
13         calls to the parent class and the the signal emission for profiling.
14
15 2005-09-29  Tor Lillqvist  <tml@novell.com>
16
17         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
18         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
19         system codepage using g_win32_locale_filename_from_utf8().
20         (#317457, Kazuki Iwamoto)
21
22 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
23
24         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
25         here. (#317039, Paolo Borelli)
26
27         * gtk/gtktexttag.h: 
28         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
29         to make this function work as boxed copy function.  (#317455,
30         Gustavo Carneiro)
31
32         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
33         NULL.  (#316828, Tor Lillqvist)
34
35 2005-09-28  Tor Lillqvist  <tml@novell.com>
36
37         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
38         Iwamoto)
39
40 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
41
42         Don't reload the current folder unnecessarily on ::map().
43
44         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
45         the reloading state.
46         (struct _GtkFileChooserDefault): Added a "reload_state" field.
47
48         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
49         Initialize impl->reload_state.
50         (gtk_file_chooser_default_map): Check the impl->reload_state; load
51         a default folder if no folder has been set, or reload the current
52         one only if we had been unmapped first.
53         (gtk_file_chooser_default_update_current_folder): Set the
54         reload_state to RELOAD_HAS_FOLDER.
55         (gtk_file_chooser_default_unmap): Implement, and set the
56         reload_state to RELOAD_WAS_UNMAPPED.
57         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
58         here; they'll get (re)loaded on ::map() anyway.
59
60         * gtk/gtkfilechooserwidget.c
61         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
62
63         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
64         a dialog; build it ourselves.
65         (test_reload): New test to ensure that we don't load the default
66         folder more than once, and that we reload it when
67         unmapping/remapping.
68         (get_impl_from_dialog): New utility function.
69         (test_widgets_for_current_action): Use get_impl_from_dialog().
70
71 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
72
73         * gtk/gtkfilechooserdefault.c
74         (gtk_file_chooser_default_constructor): Mark the entry/exit of
75         this function for profiling.
76         (check_icon_theme): Likewise.
77         (change_icon_theme): Likewise.
78         (settings_notify_cb): Likewise.
79         (gtk_file_chooser_default_screen_changed): Likewise.
80         (update_chooser_entry): If the selection is empty, clear the file
81         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
82         nothing will be selected when the user starts typeahead in the
83         treeview, and we don't want to clear the file name entry in that
84         case --- the user could be typing-ahead to look for a folder name.
85         Fixes bug #308332, patch by Jürg Billeter.
86
87 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
88
89         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
90         Pop below the entry if there's more free space below the entry
91         than above.  (#316948, Tommi Komulainen)
92
93 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
94
95         Do not create the save mode-specific widgets in the open modes, so
96         that we don't carry their baggage around.
97
98         * gtk/gtkfilechooserdefault.c
99         (gtk_file_chooser_default_constructor): Don't create the
100         save_widgets here.
101         (save_widgets_create): Set the impl->save_widgets directly here,
102         instead of passing the widgets back to the caller.  Also, pack
103         them into the impl's box.
104         (update_appearance): Create or destroy the save widgets as
105         appropriate.  Set the action of the save_file_name_entry here.
106         (shortcuts_add_current_folder): Set the active item in the
107         save_folder_combo only if it exists.
108         (gtk_file_chooser_default_set_property): Don't set the action of
109         the save_file_name_entry here.
110         (gtk_file_chooser_default_update_current_folder): Set the base
111         folder of the save_file_name_entry only if the entry exists.
112         (shortcuts_drag_data_received_cb): Cast the selection_data->data
113         to (const char *) since that's what shortcuts_drop_uris() expects.
114         (file_list_drag_data_received_cb): Likewise, for
115         g_uri_list_extract_uris().
116
117 2005-09-26  Tor Lillqvist  <tml@novell.com>
118
119         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
120         the shaped flag here, too. (#316871)
121         (gdk_window_shape_combine_region): Currently unimplemented, so
122         don't do anything to the shaped flag here.
123
124 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
125
126         Fix #316871, reported by Dan Winship:
127         
128         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
129
130         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
131         (gdk_window_shape_combine_region): Set it here.
132
133         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
134         remove the child area for shaped windows.
135
136 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
137
138         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
139         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
140
141 2005-09-22  Michael Natterer  <mitch@imendio.com>
142
143         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
144         consistent with GTK+ terminology:
145
146         * gtk/gtkcellrendererkeys.[ch]
147         * tests/testkeys.c: removed...
148
149         * gtk/gtkcellrendereraccel.[ch]
150         * tests/testaccel.c: ...and added.
151
152         * gtk/Makefile.am
153         * gtk/gtk.h
154         * gtk/gtk.symbols
155         * tests/Makefile.am: changed accordingly.
156
157 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
158
159         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
160         for the grab-broken-event signal, noticed by Damon Chaplin.
161
162 2005-09-21  Tor Lillqvist  <tml@novell.com>
163
164         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
165         gdk_text_property_to_text_list_for_display,
166         gdk_text_property_to_utf8_list_for_display,
167         gdk_win32_selection_add_targets,
168         _gdk_win32_selection_convert_to_dib): Free return value from
169         gdk_atom_name().
170         (gdk_text_property_to_text_list_for_display): Drop GError variable
171         that isn't actually used after being set.
172
173 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
174
175         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
176         documentation.
177
178 2005-09-20  Tor Lillqvist  <tml@novell.com>
179
180         * gdk/win32/gdkselection-win32.c
181         (gdk_selection_owner_get_for_display): Do return the correct owner
182         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
183         a window GDK knows about). The reason to return NULL seems to have
184         gone when in the fix for bug #163702 the artificial
185         GDK_SELECTION_CLEAR event generation was removed from
186         gdk_selection_send_notify_for_display(). Fixes bug #316552.
187
188 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
189
190         Avoid unnecessary XkbGetState() calls and XkbStateNotify
191         events.  (#151555, Søren Sandmann)
192
193         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
194         XkbSelectEventDetails() to select XkbStateNotify events
195         for only the state we care about.
196
197         * gdk/x11/gdkprivate-x11.h:
198         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
199         the event into the function and update the keymap state from
200         the state information contained in the event. Adjust all callers.
201         
202 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
203
204         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
205         in multiple places to avoid segfaults if the index is out of range.  
206         (#316422, Guillaume Cottenceau)
207         (gtk_icon_view_set_drag_dest_item): 
208         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
209         #316424, Guillaume Cottenceau)
210
211 2005-09-18  Hans Breuer  <hans@breuer.org>
212
213         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
214         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
215
216 2005-09-18  Hans Breuer  <hans@breuer.org>
217
218         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
219         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
220         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
221         the icon and is blinking with teststatusicon. More to come ...
222
223 2005-09-18  Hans Breuer  <hans@breuer.org>
224
225         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
226         cause gtkprogressbar.c has #include <config.h> conditionally; less
227         noise from generated gtk.def
228         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
229         
230         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
231         For me it works as well as the *NIX implemenation, that is not at all.
232
233         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
234
235         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
236         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
237         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
238         again - if compiled properly.
239
240         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
241         already coming with Gtk+. Makes it compile on win32.
242
243 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
244
245         * README.cvs-commits: fixed some tiny typos
246
247 2005-09-16  Tor Lillqvist  <tml@novell.com>
248
249         * modules/engines/ms-windows/msw_style.c (draw_extension,
250         draw_box_gap): Check whether the widget actually is a GtkNotebook
251         before treating it as such. Drop some unneeded local variables,
252         use parameter with same information instead. (#316412)
253
254 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
255
256         * tests/autotestfilechooser.c: Start a set of automated tests for
257         the file chooser.  The only test in there right now doesn't pass
258         yet.  It specifies the intended behavior of the first optimization
259         of a series which I'll do on the file chooser (see
260         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
261         details of this optimization).
262
263         * tests/Makefile.am: Added autotestfilechooser.c.
264
265         * gtk/gtkfilechooserprivate.h (struct
266         _GtkFileChooserDialogPrivate): Move all the file chooser's private
267         structures to here, so that they can be accessed by
268         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
269         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
270
271         * gtk/gtkfilechooserdialog.c: See above.
272
273         * gtk/gtkfilechooserwidget.c: See above.
274
275         * gtk/gtkfilechooserdefault.c: See above.
276
277 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
278
279         * gtk/gtkwindow.c: 
280         gtk_window_map_event(): new function to work around lost unmap requests.
281         fixes bug #316180.
282
283 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
284
285         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
286         an easy-to-find profiling marker when starting to create a file
287         chooser.
288         (browse_files_model_finished_loading_cb): Likewise, for when the
289         chooser is finished loading.
290
291 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
292
293         * gtk/gtkcolorbutton.c: Check "color" argument in gtk_color_button_set_color ()
294
295 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
296
297         * gtk/gtklabel.c (gtk_label_get_type): 
298         * gtk/gtkbutton.c (gtk_button_get_type): 
299         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
300         using a mem chunk for window groups, buttons, labels.
301
302         * gtk/updateiconcache.c (foreach_remove_func): Fix
303         a use-after-free bug.  (#316256, Alexander Nedotsukov)
304
305 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
306
307         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
308
309         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
310         
311 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
312
313         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
314         Let GDK_Return pass through in some more cases.
315
316         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
317         activating the entry. 
318
319         * gtk/gtkiconview.c (gtk_icon_view_class_init):
320         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
321         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
322
323         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
324         (#316001, Guillaume Cottenceau)
325
326         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
327         mistake in the docs.  (#315993, Guillaume Cottenceau)
328
329         * tests/testentrycompletion.c (create_simple_completion_model): Add
330         some strings containing multibyte characters.
331
332         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
333         Fix prefix insertion for multibyte characters.  (#316095,
334         Tommi Komulainen)
335
336         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
337         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
338         return NULL if the widget is not realized.  (#316023,
339         Guillaume Cottenceau)
340
341 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
342
343         * gdk/gdk.symbols: 
344         * gdk/gdkproperty.h: 
345         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
346         New function to avoid pointless strdups when creating atoms
347         from static strings.  
348
349         * gdk/x11/*.c:
350         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
351         appropriate.
352
353 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
354
355         * gtk/gtkcellrendererkeys.h: 
356         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
357         and editing accelerators, a port of EggCellRendererKeys .
358
359         * gtk/gtk.symbols:
360         * gtk/gtk.h:
361         * gtk/Makefile.am: Add the keys cell renderer.
362
363         * tests/Makefile.am: 
364         * tests/testkeys.c: Test GtkCellRendererKeys
365
366 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
367
368         Make it possible to determine if a key event is for a
369         modifier key:
370         
371         * gdk/x11/gdkprivate-x11.h: 
372         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
373         New function to determine if a keycode is mapped to a modifier.
374         (get_xkb): Get the modmap.
375
376         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
377         is_modifier bit by calling _gdk_keymap_key_is_modifier().
378
379         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
380         bit.
381
382 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
383
384         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
385         unused variable, noticed by Kjartan Maraas.
386
387 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
388
389         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
390         Make drag reordering work properly for columns other than the
391         first.  (#315054, Dan Winship)
392         
393         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
394         invalid fontnames better. (#136926, Michael R. Walton)
395         
396         Stop cursor blinking in non-editable regions of a text view.
397         (#311508, Torbjörn Andersson)
398         
399         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
400         (cursor_blinks): Take editability into account when deciding
401         whether the cursor blinks.
402         (gtk_text_view_button_release_event): 
403         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
404
405         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
406         Use connect_after to connect to the focus_out event. This
407         ensures that the entry has already stopped blinking by the time
408         we emit the edited signal.  (#315229, Thomas Leonard)
409
410         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
411
412         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
413         unsigned ints to -1.  (#315481, Kjartan Maraas)
414
415         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
416         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
417         (#314473, Stanislav Brabec)
418
419 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
420
421         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
422         memory handling.  (#314975, Torsten Schoenfeld)
423
424         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
425         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
426         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
427         * gtk/gtklabel.c (gtk_label_class_init): 
428         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
429         Stylistic improvements and clarifications for some blurbs. 
430         (#315520, Clytie Siddall)
431
432 2005-09-09  Tor Lillqvist  <tml@novell.com>
433
434         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
435         display name. There is only one GdkDisplay on Win32, and
436         constructing the display name isn't entirely trivial, so cacheing
437         is probably worth it. For instance GIMP calls this function a lot.
438         (gdk_display_open): Call gdk_display_get_name() to prime the
439         cached name.
440         (gdk_display_get_n_screens, gdk_display_get_screen,
441         gdk_display_get_default_screen): Verify parameter correctness like
442         the X11 backend does.
443
444         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
445         Return a freshly allocated string, as the API specifies. Fixes a
446         heap corruption problem that caused random errors and crashes in
447         GIMP, for instance.
448
449 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
450
451         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
452         Make C-u commit and restart hex input if we are already in a
453         hex sequence.
454
455 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
456
457         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
458         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
459         if they are mapped to the same modifier.
460
461         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
462         to gtkstatusicon.c and gtktrayicon-x11.c
463
464         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
465         default accel mod mask.
466
467         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
468         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
469         Don't use GDK_ALT_MASK.
470
471         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
472
473 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
474
475         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
476         
477         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
478         modifiers.
479
480         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
481         Mod2 - Mod5 and against Super, Hyper, Meta.
482
483         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
484         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
485         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
486
487         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
488         modmap to maintain the information which X modifiers map to
489         virtual modifiers.
490         (get_xkb): Set up the modmap from the XKB tables.
491         (update_keymaps): Set up the modmap from the information returned
492         by XGetModifierMapping in the non-XKB case.
493
494         * gdk/x11/gdkprivate-x11.h: 
495         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
496         function to set the virtual modifiers in the state.
497
498         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
499         _gdk_keymap_add_virtual_modifiers here.
500
501         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
502         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
503         for GDK_MOD1_MASK.
504
505 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
506
507         * gtk/gtkaction.c (connect_proxy): Set the label of a button
508         if it has no child.  (#315253, John Finlay)
509
510 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
511
512         * gtkimcontextsimple.h: Add a modifiers_dropped bit
513
514 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
515
516         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
517         on destroy to avoid problems when they are called on a destroyed
518         widget.  (#315135, John Cupitt)
519         
520         * gtk/gtkentry.c (gtk_entry_class_init):
521         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
522         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
523
524         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
525         code. Now we only steal a single key combination, Ctrl-Shift-U,
526         instead of sixteen. 
527         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
528         by a sequence of hex digits entered with Ctrl-Shift still held.
529         Releasing one of the modifiers or pressing space while the modifiers
530         are still held commits the character. It is possible to erase
531         digits using backspace.
532         As an extension to the above, we also allow to start the sequence
533         with Ctrl-Shift-U, then release the modifiers before typing any
534         digits, and enter the digits without modifiers.
535         (#82011, Owen Taylor)
536         
537 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
538
539         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
540         we still need to deliver the destroy event.  (#314980, Chris Lahey)
541
542         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
543         im context before committing \n or \t.
544
545 2005-09-02  Alexander Larsson  <alexl@redhat.com>
546
547         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
548         (shortcuts_activate_volume):
549         Handle base_path being null in the rest of the cases (#310270)
550
551 2005-09-02  Tor Lillqvist  <tml@novell.com>
552
553         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
554         cursor position also in root window coordinates. Prune out
555         superfluous WM_MOUSEMOVE events even earlier, based on root window
556         coordinates. Windows sends WM_MOUSEMOVE messages after a new
557         window has ben mapped below the cursor even if the mouse doesn't
558         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
559         confused at least gtk_menu_motion_notify(). (#314995)
560
561         * gtk/gtkintl.h: No need to include config.h here. It caused
562         warnings about GTK_LOCALEDIR being redefined on Win32 when
563         compiling files where gtkintl.h is included after gtkprivate.h
564         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
565
566         * gtk/gtkplug.c: Include config.h.
567
568 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
569
570         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
571         xdg_mime_get_mime_type_for_file() where possible, to avoid
572         useless re-stating.  
573         
574         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
575         typo.  (#314921, Guillaume Cottenceau)
576
577         * gdk/*.c: Intern some more strings.
578         * gtk/gtkintl.h: 
579         * gtk/*.c: Define an I_() macro and use it instead of the 
580         bulky g_intern_static_string().
581
582 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
583
584         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
585         instead of copying it.
586
587         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
588
589         * gtk/*.c: Also intern static strings passed to 
590         g_object_set_data().
591
592         * gdk/Makefile.am: 
593         * gtk/Makefile.am: Intern type names in code generated by 
594         glib-mkenums, too.
595
596         * gtk/*.c: 
597         * gdk/x11/*.c: 
598         * gdk/*.c: Intern type names before registering the type to avoid 
599         unnecessary copies.
600
601         * configure.in: Require GLib 2.9.0
602
603 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
604
605         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
606         and add icon-size and icon-size-set properties.  (#314172)      
607
608         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
609         groups across transient parents.  (#312918, Christian Persch)
610
611         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
612         Guillaume Cottenceau)
613
614         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
615         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
616
617 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
618
619         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
620         make C-/ select all and C-\ unselect all.  (#309301,
621         Kathy Fernandez)
622
623         * gtk/gtkimcontextsimple.c: Change the compose sequence for
624         soft hyphen to be multi_key-minus-minus-space, and add
625         compose sequences multi_key-minus-minus-period and 
626         multi_key-minus-minus-minus for en dash and em dash.
627         (#172653, Christian Lohmaier)
628
629         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
630         code.  (#313946, Christian Persch)
631
632         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
633         fix for the default value of the "ui" property.
634
635 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
636
637         * gtk/gtk.symbols: 
638         * gtk/gtkselection.h:
639         * gtk/gtkselection.c: Add functions which look for text, image
640         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
641
642         * gtk/gtk.symbols: 
643         * gtk/gtkselection.h:
644         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
645         Add a function to check wether targets include uri.  
646         (#314092, Mark Wielaard)
647         
648         * gtk/gtk.symbols: 
649         * gtk/gtkwindow.h: 
650         * gtk/gtkwindow.c: Add a deletable property with getter
651         and setter, to control the close button in the window 
652         frame.  (#59718, Havoc Pennington)
653
654 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
655
656         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
657         to the arrow keys for menu navigation.  (#162825, Carl Worth)
658
659         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
660
661         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
662
663         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
664         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
665         refer to nonexisting stock ids.
666
667         * gtk/gtktextview.c (popup_targets_received): 
668         * gtk/gtkentry.c (popup_targets_received): Construct
669         the "Select All" menuitem from stock.
670
671         * gtk/stock-icons/stock_select_all_{16,24}.png:
672         * gtk/stock-icons/Makefile.am: 
673         * gtk/gtkiconfactory.c:
674         * gtk/gtkstock.h: 
675         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
676         Calum Benson)
677
678         * gtk/gtktrayicon.c: Add a pointer to the spec.
679
680         * gtk/gtkstatusicon-x11.c: Add docs.
681
682         * gtk/gtkstatusicon.h: Fix a typo.
683
684         Add a cross-platform "tray icon" API, by
685         porting EggStatusIcon/EggTrayIcon (#105101)
686         
687         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
688         displays an icon in a notification area.
689
690         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
691         X11, using GtkTrayIcon.
692
693         * gtk/gtktrayicon.h: 
694         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
695         system tray specification, not public API.
696
697         * gtk/gtk.symbols: Add new exported functions.
698
699         * gtk/gtk.h: Include gtkstatusicon.h.
700
701         * gtk/Makefile.am: Add new files.
702
703         * tests/Makefile.am:
704         * tests/teststatusicon.c: Test for GtkStatusIcon.
705
706 2005-08-29  Christopher Aillon  <caillon@redhat.com>
707
708         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
709         and GTK_STOCK_DISCONNECT
710         
711 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
712
713         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
714         Use XFixesChangeSaveSet if available.  (#314682)
715
716         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
717         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
718
719 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
720
721         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
722         accidentally leftover duplicate pixbuf creation.  (#314700,
723         Kjartan Maraas)
724
725         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
726         leak the cursor theme name.  (#314693, Kjartan Maraas)
727
728         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
729         state.children in all cases.  (#313862, Kjartan Maraas)
730
731 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
732
733         * po/POTFILES.in, po-properties/POTFILES.in:
734         Add gdk/gdkscreen.c
735
736 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
737
738         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
739         value of the ui property. (#314532, Yong Wang)
740
741         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
742         when G_MAXLONG is passed as length.  
743
744 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
745
746         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
747         to avoid overloading --force.  (JP Rosevaar)
748
749 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
750
751         * configure.in: Bump version to 2.9.0
752
753         * gdk/gdk.symbols: 
754         * gdk/gdkscreen.h: 
755         * gdk/gdkscreen.c: Make the GdkScreen font options api
756         public, and add properties GdkScreen::font-options and
757         GdkScreen::resolution.  (#314004)
758
759         * gdk/gdkpango.c:
760         * gtk/gtksettings.c:
761         * gtk/gtkwidget.c: Adjust all callers.
762         
763         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
764         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
765         * gdk/gdkscreen.c: Include gdkintl.h.
766
767         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
768         variable warning, pointed out by Colin Walters. (#314585)
769
770 2005-08-26  Tor Lillqvist  <tml@novell.com>
771
772         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
773         printouts.
774         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
775
776 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
777
778         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
779         of week_start.  (#314473, JP Rosevaar)
780
781 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
782
783         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
784         lock.  (#314533, Thomas Fitzsimmons)
785
786 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
787
788         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
789         NULL gracefully.  (#314523, Ed Catmur)
790
791 2005-08-25  Owen Taylor  <otaylor@redhat.com>
792
793         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
794         Handle theme == NULL.
795
796 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
797
798         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
799         y offset into account when positioning the popup.  (#314470,
800         Christian Persch)
801
802 2005-08-25  Owen Taylor  <otaylor@redhat.com>
803
804         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
805         as instance_init, not base_init! (#314452, Fix from Frederic
806         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
807         rather than 1 for a negative flag value.
808
809 2005-08-24  Owen Taylor  <otaylor@redhat.com>
810
811         * gdk/gdkpango.c (draw_error_underline): Add a note about
812         cut-and-paste between here and Pango.
813
814 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
815
816         * === Released 2.8.2 ===
817
818         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
819         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
820         Wielaard)
821
822         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
823         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
824         Sebastien Bacher)
825         
826         * NEWS: Updates
827
828         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
829         and cursor settings get propagated down to the screen initially.
830         Pointed out by Frederic Crozat.
831
832         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
833         message if the screen is NULL. Noticed by Kjartan Maraas.
834
835 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
836
837         * Bump version
838
839         * === Released 2.8.1 ===
840
841         * NEWS: Updates
842         
843 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
844
845         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
846         against lazy filterers which return values other than TRUE or
847         FALSE from their visible func.  (#314335)
848
849 2005-08-23  Owen Taylor  <otaylor@redhat.com>
850
851         Fix for #314004, reported by Michael Reinsch:
852
853         * gdk/gdk.symbols:
854         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
855         Add gdk_screen_get/set_resolution_libgtk_only()
856
857         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
858         the options for the screen on the newly created context.
859
860         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
861         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
862         the font options on the screen.
863
864         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
865         the font options from the screen and set them on the context.
866
867 2005-08-23  Kristian Rietveld  <kris@gtk.org>
868
869         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
870         bother inserting new rows in a level with a zero refcount and
871         immediately free the level. (Fixes #312350, reported by Markku Vire).
872
873 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
874
875         * gtk/updateiconcache.c: Complain when there is no index.theme file
876         in the specified directory, unless --force is used. Also add an
877         --index-only option to create caches without image data.
878
879         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
880         C99ism.  (#314262, Robert Jeff Mitchell)
881         
882 2005-08-22  Manish Singh  <yosh@gimp.org>
883
884         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
885
886         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
887
888 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
889
890         * gtk/gtkwindow.c (gtk_window_client_event): 
891         * gtk/gtkicontheme.c (ensure_valid_themes) 
892         (_gtk_icon_theme_check_reload): Implement a clientmessage based
893         scheme for makeing sure that all GTK+ applications notice if an
894         icon theme has been updated. This should prevent multiple versions
895         of an icon theme cache to be mapped in memory at the same time,
896         which can cause excessive memory consumption.  (#313156, Chris 
897         Lahey)
898
899 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
900
901         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
902         regarding icon theme changes.
903
904         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
905         pixbufs which are backed by the mmapped memory of an icon cache,
906         increase the refcount of the icon cache, so that the memory is not
907         munmapped away underneath the pixbuf upon icon theme changes.  
908         (#314170, Kjartan Maraas)
909
910         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
911         to link against Xext.  (#314062)
912
913         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
914         overruns.  (#314081, Hans Breuer)
915
916 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
917
918         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
919         returned layout must not be modified.
920
921 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
922
923         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
924         scroll_to_path if the model changes.
925
926         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
927         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
928         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
929         we're realized, #312798
930         (gtk_icon_view_set_model): clear scroll_to_path if the model
931         changes.
932
933 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
934
935         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
936         (gtk_range_adjustment_value_changed):  Don't queue a draw
937         if the layout has not changed.  (#313991, Benjamin Berg)
938
939 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
940
941         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
942         Benoit Carpentier)
943
944         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
945         Fix a typo. 
946
947         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
948         (model_add_special, model_add_special, model_add_volumes):
949         Handle pixbuf being NULL without warnings. Also, don't
950         leak pixbuf references when the icon theme is changed.
951
952         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
953         the user data on destroyed windows, since at best
954         it can be a stale pointer.  (#313953, Robin Green)      
955
956 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
957
958         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
959         (#313900, Sebastien Bacher)
960
961         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
962         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
963
964         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
965         (xdnd_read_actions, get_client_window_at_coords_recurse): 
966         Free data returned from XGetWindowProperty. 
967
968         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
969         Free data returned from XGetWindowProperty.  (313867, Kjartan
970         Maraas)
971         
972         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
973         children in all cases.  (#313862, Kjartan Maraas)
974
975         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
976         in the per-directory hash, even if they come from the icon cache. 
977         We tried to avoid that before, but as a result leaked icon data
978         structs.  (#313852, Kjartan Maraas)
979
980 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
981
982         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
983         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
984
985 2005-08-15  Owen Taylor  <otaylor@redhat.com>
986
987         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
988         files for x11/xext. (Jonas Bonn)
989
990 2005-08-15  Tor Lillqvist  <tml@novell.com>
991
992         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
993         inside GTK_NOTE.
994
995 2005-08-15  Owen Taylor  <otaylor@redhat.com>
996
997         * configure.in: Fix have_base_pc / have_base_x_pc typo.
998
999         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
1000         (#313417, James Andrewartha)
1001
1002         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
1003         FcNameConstant(). (More of #313417)
1004
1005 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1006
1007         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
1008         modal dialogs, make sure to inherit the window group from 
1009         the parent, since we don't inherit window groups across
1010         transient parents currently.  (#312918, Christian Persch)
1011
1012         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
1013         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
1014
1015         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
1016         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
1017         gracefully.  (#312796, Jonathan Blandford)
1018
1019         * tests/testtoolbar.c: Add some more tests for menu placement.
1020
1021         * gtk/gtkmenutoolbutton.c (menu_position_func): 
1022         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
1023         of toolbutton menus and of the overflow menu.  (#312937, 
1024         #153870, Christian Persch, Paolo Borelli)
1025
1026 2005-08-15  Tor Lillqvist  <tml@novell.com>
1027
1028         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
1029         the nonportable <libgen.h> and dirname().
1030
1031 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1032
1033         * gtk/gtksizegroup.c: Use object data to mark widgets and
1034         groups as visited, so that we avoid constant extra list
1035         traversals. Also allocate quarks in class_init.  (#311618,
1036         Michael Natterer)
1037
1038         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
1039         download location for the hicolor icon theme. (#313475, Olexiy 
1040         Avramchenko)
1041
1042         * gtk/gtkicontheme.c: Remove debug spew. 
1043
1044 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1045
1046         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
1047         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
1048         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
1049         Handle pixmap == NULL when checking for a colormap.
1050         (Allin Cottrell).
1051
1052 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
1053
1054         * gtk/updateiconcache.c: Store only one copy of the pixel data
1055         for symlinked icons. To achieve this, maintain a hashtable 
1056         mapping pathnames to pixel data, and share the pixel data for
1057         all symlinks resolving to the same pathname. When writing out
1058         the image data, write out the pixel data only the first time
1059         it is met, and store the offset pointing to the first copy
1060         for use in all later cases.
1061         This reduces the size of the Bluecurve icon cache from 40
1062         to 13MB. (#312972)
1063