]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
No point in using a mem chunk for window groups, buttons, labels.
[~andy/gtk] / ChangeLog.pre-2-10
1 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtklabel.c (gtk_label_get_type): 
4         * gtk/gtkbutton.c (gtk_button_get_type): 
5         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
6         using a mem chunk for window groups, buttons, labels.
7
8         * gtk/updateiconcache.c (foreach_remove_func): Fix
9         a use-after-free bug.  (#316256, Alexander Nedotsukov)
10
11 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
12
13         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
14
15         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
16         
17 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
18
19         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
20         Let GDK_Return pass through in some more cases.
21
22         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
23         activating the entry. 
24
25         * gtk/gtkiconview.c (gtk_icon_view_class_init):
26         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
27         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
28
29         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
30         (#316001, Guillaume Cottenceau)
31
32         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
33         mistake in the docs.  (#315993, Guillaume Cottenceau)
34
35         * tests/testentrycompletion.c (create_simple_completion_model): Add
36         some strings containing multibyte characters.
37
38         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
39         Fix prefix insertion for multibyte characters.  (#316095,
40         Tommi Komulainen)
41
42         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
43         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
44         return NULL if the widget is not realized.  (#316023,
45         Guillaume Cottenceau)
46
47 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
48
49         * gdk/gdk.symbols: 
50         * gdk/gdkproperty.h: 
51         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
52         New function to avoid pointless strdups when creating atoms
53         from static strings.  
54
55         * gdk/x11/*.c:
56         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
57         appropriate.
58
59 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
60
61         * gtk/gtkcellrendererkeys.h: 
62         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
63         and editing accelerators, a port of EggCellRendererKeys .
64
65         * gtk/gtk.symbols:
66         * gtk/gtk.h:
67         * gtk/Makefile.am: Add the keys cell renderer.
68
69         * tests/Makefile.am: 
70         * tests/testkeys.c: Test GtkCellRendererKeys
71
72 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
73
74         Make it possible to determine if a key event is for a
75         modifier key:
76         
77         * gdk/x11/gdkprivate-x11.h: 
78         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
79         New function to determine if a keycode is mapped to a modifier.
80         (get_xkb): Get the modmap.
81
82         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
83         is_modifier bit by calling _gdk_keymap_key_is_modifier().
84
85         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
86         bit.
87
88 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
89
90         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
91         unused variable, noticed by Kjartan Maraas.
92
93 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
94
95         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
96         Make drag reordering work properly for columns other than the
97         first.  (#315054, Dan Winship)
98         
99         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
100         invalid fontnames better. (#136926, Michael R. Walton)
101         
102         Stop cursor blinking in non-editable regions of a text view.
103         (#311508, Torbjörn Andersson)
104         
105         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
106         (cursor_blinks): Take editability into account when deciding
107         whether the cursor blinks.
108         (gtk_text_view_button_release_event): 
109         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
110
111         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
112         Use connect_after to connect to the focus_out event. This
113         ensures that the entry has already stopped blinking by the time
114         we emit the edited signal.  (#315229, Thomas Leonard)
115
116         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
117
118         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
119         unsigned ints to -1.  (#315481, Kjartan Maraas)
120
121         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
122         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
123         (#314473, Stanislav Brabec)
124
125 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
126
127         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
128         memory handling.  (#314975, Torsten Schoenfeld)
129
130         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
131         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
132         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
133         * gtk/gtklabel.c (gtk_label_class_init): 
134         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
135         Stylistic improvements and clarifications for some blurbs. 
136         (#315520, Clytie Siddall)
137
138 2005-09-09  Tor Lillqvist  <tml@novell.com>
139
140         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
141         display name. There is only one GdkDisplay on Win32, and
142         constructing the display name isn't entirely trivial, so cacheing
143         is probably worth it. For instance GIMP calls this function a lot.
144         (gdk_display_open): Call gdk_display_get_name() to prime the
145         cached name.
146         (gdk_display_get_n_screens, gdk_display_get_screen,
147         gdk_display_get_default_screen): Verify parameter correctness like
148         the X11 backend does.
149
150         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
151         Return a freshly allocated string, as the API specifies. Fixes a
152         heap corruption problem that caused random errors and crashes in
153         GIMP, for instance.
154
155 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
156
157         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
158         Make C-u commit and restart hex input if we are already in a
159         hex sequence.
160
161 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
162
163         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
164         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
165         if they are mapped to the same modifier.
166
167         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
168         to gtkstatusicon.c and gtktrayicon-x11.c
169
170         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
171         default accel mod mask.
172
173         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
174         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
175         Don't use GDK_ALT_MASK.
176
177         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
178
179 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
180
181         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
182         
183         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
184         modifiers.
185
186         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
187         Mod2 - Mod5 and against Super, Hyper, Meta.
188
189         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
190         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
191         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
192
193         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
194         modmap to maintain the information which X modifiers map to
195         virtual modifiers.
196         (get_xkb): Set up the modmap from the XKB tables.
197         (update_keymaps): Set up the modmap from the information returned
198         by XGetModifierMapping in the non-XKB case.
199
200         * gdk/x11/gdkprivate-x11.h: 
201         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
202         function to set the virtual modifiers in the state.
203
204         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
205         _gdk_keymap_add_virtual_modifiers here.
206
207         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
208         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
209         for GDK_MOD1_MASK.
210
211 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
212
213         * gtk/gtkaction.c (connect_proxy): Set the label of a button
214         if it has no child.  (#315253, John Finlay)
215
216 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
217
218         * gtkimcontextsimple.h: Add a modifiers_dropped bit
219
220 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
221
222         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
223         on destroy to avoid problems when they are called on a destroyed
224         widget.  (#315135, John Cupitt)
225         
226         * gtk/gtkentry.c (gtk_entry_class_init):
227         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
228         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
229
230         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
231         code. Now we only steal a single key combination, Ctrl-Shift-U,
232         instead of sixteen. 
233         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
234         by a sequence of hex digits entered with Ctrl-Shift still held.
235         Releasing one of the modifiers or pressing space while the modifiers
236         are still held commits the character. It is possible to erase
237         digits using backspace.
238         As an extension to the above, we also allow to start the sequence
239         with Ctrl-Shift-U, then release the modifiers before typing any
240         digits, and enter the digits without modifiers.
241         (#82011, Owen Taylor)
242         
243 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
244
245         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
246         we still need to deliver the destroy event.  (#314980, Chris Lahey)
247
248         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
249         im context before committing \n or \t.
250
251 2005-09-02  Alexander Larsson  <alexl@redhat.com>
252
253         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
254         (shortcuts_activate_volume):
255         Handle base_path being null in the rest of the cases (#310270)
256
257 2005-09-02  Tor Lillqvist  <tml@novell.com>
258
259         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
260         cursor position also in root window coordinates. Prune out
261         superfluous WM_MOUSEMOVE events even earlier, based on root window
262         coordinates. Windows sends WM_MOUSEMOVE messages after a new
263         window has ben mapped below the cursor even if the mouse doesn't
264         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
265         confused at least gtk_menu_motion_notify(). (#314995)
266
267         * gtk/gtkintl.h: No need to include config.h here. It caused
268         warnings about GTK_LOCALEDIR being redefined on Win32 when
269         compiling files where gtkintl.h is included after gtkprivate.h
270         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
271
272         * gtk/gtkplug.c: Include config.h.
273
274 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
275
276         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
277         xdg_mime_get_mime_type_for_file() where possible, to avoid
278         useless re-stating.  
279         
280         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
281         typo.  (#314921, Guillaume Cottenceau)
282
283         * gdk/*.c: Intern some more strings.
284         * gtk/gtkintl.h: 
285         * gtk/*.c: Define an I_() macro and use it instead of the 
286         bulky g_intern_static_string().
287
288 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
289
290         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
291         instead of copying it.
292
293         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
294
295         * gtk/*.c: Also intern static strings passed to 
296         g_object_set_data().
297
298         * gdk/Makefile.am: 
299         * gtk/Makefile.am: Intern type names in code generated by 
300         glib-mkenums, too.
301
302         * gtk/*.c: 
303         * gdk/x11/*.c: 
304         * gdk/*.c: Intern type names before registering the type to avoid 
305         unnecessary copies.
306
307         * configure.in: Require GLib 2.9.0
308
309 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
310
311         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
312         and add icon-size and icon-size-set properties.  (#314172)      
313
314         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
315         groups across transient parents.  (#312918, Christian Persch)
316
317         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
318         Guillaume Cottenceau)
319
320         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
321         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
322
323 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
324
325         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
326         make C-/ select all and C-\ unselect all.  (#309301,
327         Kathy Fernandez)
328
329         * gtk/gtkimcontextsimple.c: Change the compose sequence for
330         soft hyphen to be multi_key-minus-minus-space, and add
331         compose sequences multi_key-minus-minus-period and 
332         multi_key-minus-minus-minus for en dash and em dash.
333         (#172653, Christian Lohmaier)
334
335         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
336         code.  (#313946, Christian Persch)
337
338         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
339         fix for the default value of the "ui" property.
340
341 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
342
343         * gtk/gtk.symbols: 
344         * gtk/gtkselection.h:
345         * gtk/gtkselection.c: Add functions which look for text, image
346         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
347
348         * gtk/gtk.symbols: 
349         * gtk/gtkselection.h:
350         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
351         Add a function to check wether targets include uri.  
352         (#314092, Mark Wielaard)
353         
354         * gtk/gtk.symbols: 
355         * gtk/gtkwindow.h: 
356         * gtk/gtkwindow.c: Add a deletable property with getter
357         and setter, to control the close button in the window 
358         frame.  (#59718, Havoc Pennington)
359
360 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
361
362         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
363         to the arrow keys for menu navigation.  (#162825, Carl Worth)
364
365         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
366
367         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
368
369         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
370         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
371         refer to nonexisting stock ids.
372
373         * gtk/gtktextview.c (popup_targets_received): 
374         * gtk/gtkentry.c (popup_targets_received): Construct
375         the "Select All" menuitem from stock.
376
377         * gtk/stock-icons/stock_select_all_{16,24}.png:
378         * gtk/stock-icons/Makefile.am: 
379         * gtk/gtkiconfactory.c:
380         * gtk/gtkstock.h: 
381         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
382         Calum Benson)
383
384         * gtk/gtktrayicon.c: Add a pointer to the spec.
385
386         * gtk/gtkstatusicon-x11.c: Add docs.
387
388         * gtk/gtkstatusicon.h: Fix a typo.
389
390         Add a cross-platform "tray icon" API, by
391         porting EggStatusIcon/EggTrayIcon (#105101)
392         
393         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
394         displays an icon in a notification area.
395
396         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
397         X11, using GtkTrayIcon.
398
399         * gtk/gtktrayicon.h: 
400         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
401         system tray specification, not public API.
402
403         * gtk/gtk.symbols: Add new exported functions.
404
405         * gtk/gtk.h: Include gtkstatusicon.h.
406
407         * gtk/Makefile.am: Add new files.
408
409         * tests/Makefile.am:
410         * tests/teststatusicon.c: Test for GtkStatusIcon.
411
412 2005-08-29  Christopher Aillon  <caillon@redhat.com>
413
414         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
415         and GTK_STOCK_DISCONNECT
416         
417 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
418
419         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
420         Use XFixesChangeSaveSet if available.  (#314682)
421
422         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
423         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
424
425 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
426
427         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
428         accidentally leftover duplicate pixbuf creation.  (#314700,
429         Kjartan Maraas)
430
431         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
432         leak the cursor theme name.  (#314693, Kjartan Maraas)
433
434         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
435         state.children in all cases.  (#313862, Kjartan Maraas)
436
437 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
438
439         * po/POTFILES.in, po-properties/POTFILES.in:
440         Add gdk/gdkscreen.c
441
442 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
443
444         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
445         value of the ui property. (#314532, Yong Wang)
446
447         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
448         when G_MAXLONG is passed as length.  
449
450 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
451
452         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
453         to avoid overloading --force.  (JP Rosevaar)
454
455 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
456
457         * configure.in: Bump version to 2.9.0
458
459         * gdk/gdk.symbols: 
460         * gdk/gdkscreen.h: 
461         * gdk/gdkscreen.c: Make the GdkScreen font options api
462         public, and add properties GdkScreen::font-options and
463         GdkScreen::resolution.  (#314004)
464
465         * gdk/gdkpango.c:
466         * gtk/gtksettings.c:
467         * gtk/gtkwidget.c: Adjust all callers.
468         
469         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
470         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
471         * gdk/gdkscreen.c: Include gdkintl.h.
472
473         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
474         variable warning, pointed out by Colin Walters. (#314585)
475
476 2005-08-26  Tor Lillqvist  <tml@novell.com>
477
478         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
479         printouts.
480         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
481
482 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
483
484         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
485         of week_start.  (#314473, JP Rosevaar)
486
487 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
488
489         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
490         lock.  (#314533, Thomas Fitzsimmons)
491
492 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
493
494         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
495         NULL gracefully.  (#314523, Ed Catmur)
496
497 2005-08-25  Owen Taylor  <otaylor@redhat.com>
498
499         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
500         Handle theme == NULL.
501
502 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
503
504         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
505         y offset into account when positioning the popup.  (#314470,
506         Christian Persch)
507
508 2005-08-25  Owen Taylor  <otaylor@redhat.com>
509
510         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
511         as instance_init, not base_init! (#314452, Fix from Frederic
512         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
513         rather than 1 for a negative flag value.
514
515 2005-08-24  Owen Taylor  <otaylor@redhat.com>
516
517         * gdk/gdkpango.c (draw_error_underline): Add a note about
518         cut-and-paste between here and Pango.
519
520 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
521
522         * === Released 2.8.2 ===
523
524         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
525         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
526         Wielaard)
527
528         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
529         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
530         Sebastien Bacher)
531         
532         * NEWS: Updates
533
534         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
535         and cursor settings get propagated down to the screen initially.
536         Pointed out by Frederic Crozat.
537
538         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
539         message if the screen is NULL. Noticed by Kjartan Maraas.
540
541 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
542
543         * Bump version
544
545         * === Released 2.8.1 ===
546
547         * NEWS: Updates
548         
549 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
550
551         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
552         against lazy filterers which return values other than TRUE or
553         FALSE from their visible func.  (#314335)
554
555 2005-08-23  Owen Taylor  <otaylor@redhat.com>
556
557         Fix for #314004, reported by Michael Reinsch:
558
559         * gdk/gdk.symbols:
560         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
561         Add gdk_screen_get/set_resolution_libgtk_only()
562
563         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
564         the options for the screen on the newly created context.
565
566         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
567         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
568         the font options on the screen.
569
570         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
571         the font options from the screen and set them on the context.
572
573 2005-08-23  Kristian Rietveld  <kris@gtk.org>
574
575         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
576         bother inserting new rows in a level with a zero refcount and
577         immediately free the level. (Fixes #312350, reported by Markku Vire).
578
579 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
580
581         * gtk/updateiconcache.c: Complain when there is no index.theme file
582         in the specified directory, unless --force is used. Also add an
583         --index-only option to create caches without image data.
584
585         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
586         C99ism.  (#314262, Robert Jeff Mitchell)
587         
588 2005-08-22  Manish Singh  <yosh@gimp.org>
589
590         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
591
592         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
593
594 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
595
596         * gtk/gtkwindow.c (gtk_window_client_event): 
597         * gtk/gtkicontheme.c (ensure_valid_themes) 
598         (_gtk_icon_theme_check_reload): Implement a clientmessage based
599         scheme for makeing sure that all GTK+ applications notice if an
600         icon theme has been updated. This should prevent multiple versions
601         of an icon theme cache to be mapped in memory at the same time,
602         which can cause excessive memory consumption.  (#313156, Chris 
603         Lahey)
604
605 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
606
607         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
608         regarding icon theme changes.
609
610         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
611         pixbufs which are backed by the mmapped memory of an icon cache,
612         increase the refcount of the icon cache, so that the memory is not
613         munmapped away underneath the pixbuf upon icon theme changes.  
614         (#314170, Kjartan Maraas)
615
616         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
617         to link against Xext.  (#314062)
618
619         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
620         overruns.  (#314081, Hans Breuer)
621
622 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
623
624         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
625         returned layout must not be modified.
626
627 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
628
629         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
630         scroll_to_path if the model changes.
631
632         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
633         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
634         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
635         we're realized, #312798
636         (gtk_icon_view_set_model): clear scroll_to_path if the model
637         changes.
638
639 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
640
641         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
642         (gtk_range_adjustment_value_changed):  Don't queue a draw
643         if the layout has not changed.  (#313991, Benjamin Berg)
644
645 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
646
647         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
648         Benoit Carpentier)
649
650         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
651         Fix a typo. 
652
653         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
654         (model_add_special, model_add_special, model_add_volumes):
655         Handle pixbuf being NULL without warnings. Also, don't
656         leak pixbuf references when the icon theme is changed.
657
658         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
659         the user data on destroyed windows, since at best
660         it can be a stale pointer.  (#313953, Robin Green)      
661
662 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
663
664         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
665         (#313900, Sebastien Bacher)
666
667         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
668         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
669
670         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
671         (xdnd_read_actions, get_client_window_at_coords_recurse): 
672         Free data returned from XGetWindowProperty. 
673
674         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
675         Free data returned from XGetWindowProperty.  (313867, Kjartan
676         Maraas)
677         
678         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
679         children in all cases.  (#313862, Kjartan Maraas)
680
681         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
682         in the per-directory hash, even if they come from the icon cache. 
683         We tried to avoid that before, but as a result leaked icon data
684         structs.  (#313852, Kjartan Maraas)
685
686 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
687
688         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
689         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
690
691 2005-08-15  Owen Taylor  <otaylor@redhat.com>
692
693         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
694         files for x11/xext. (Jonas Bonn)
695
696 2005-08-15  Tor Lillqvist  <tml@novell.com>
697
698         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
699         inside GTK_NOTE.
700
701 2005-08-15  Owen Taylor  <otaylor@redhat.com>
702
703         * configure.in: Fix have_base_pc / have_base_x_pc typo.
704
705         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
706         (#313417, James Andrewartha)
707
708         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
709         FcNameConstant(). (More of #313417)
710
711 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
712
713         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
714         modal dialogs, make sure to inherit the window group from 
715         the parent, since we don't inherit window groups across
716         transient parents currently.  (#312918, Christian Persch)
717
718         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
719         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
720
721         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
722         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
723         gracefully.  (#312796, Jonathan Blandford)
724
725         * tests/testtoolbar.c: Add some more tests for menu placement.
726
727         * gtk/gtkmenutoolbutton.c (menu_position_func): 
728         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
729         of toolbutton menus and of the overflow menu.  (#312937, 
730         #153870, Christian Persch, Paolo Borelli)
731
732 2005-08-15  Tor Lillqvist  <tml@novell.com>
733
734         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
735         the nonportable <libgen.h> and dirname().
736
737 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
738
739         * gtk/gtksizegroup.c: Use object data to mark widgets and
740         groups as visited, so that we avoid constant extra list
741         traversals. Also allocate quarks in class_init.  (#311618,
742         Michael Natterer)
743
744         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
745         download location for the hicolor icon theme. (#313475, Olexiy 
746         Avramchenko)
747
748         * gtk/gtkicontheme.c: Remove debug spew. 
749
750 2005-08-15  Owen Taylor  <otaylor@redhat.com>
751
752         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
753         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
754         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
755         Handle pixmap == NULL when checking for a colormap.
756         (Allin Cottrell).
757
758 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
759
760         * gtk/updateiconcache.c: Store only one copy of the pixel data
761         for symlinked icons. To achieve this, maintain a hashtable 
762         mapping pathnames to pixel data, and share the pixel data for
763         all symlinks resolving to the same pathname. When writing out
764         the image data, write out the pixel data only the first time
765         it is met, and store the offset pointing to the first copy
766         for use in all later cases.
767         This reduces the size of the Bluecurve icon cache from 40
768         to 13MB. (#312972)
769