]> Pileus Git - ~andy/gtk/blob - ChangeLog
Call ::initial_focus() on the child before calling ::map() on our parent
[~andy/gtk] / ChangeLog
1 2006-02-16  Federico Mena Quintero  <federico@novell.com>
2
3         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_map): Call
4         ::initial_focus() on the child before calling ::map() on our
5         parent class.  This will prevent the shortcuts treeview from
6         highlighting its first row as a result of getting assigned focus
7         by gtk_dialog_map().
8
9 2006-02-14  Matthias Clasen  <mclasen@redhat.com>
10
11         * gtk/gtkwidget.c (gtk_widget_send_expose): Remove redundant
12         check.  Pointed out by Bodo-Merle Sandor.
13
14         * gtk/gtkcolorbutton.c (gtk_color_button_[un]realize):
15         Remove unnecessary checks.  
16
17 2006-02-12  Matthias Clasen  <mclasen@redhat.com>
18
19         * gtk/gtkicontheme.c (gtk_icon_theme_list_icons): Give working
20         examples in the docs.  (#330944, John Spray)
21
22 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
23         
24         * gtk/gtkiconview.c (gtk_icon_view_get_item_at_coords): Fix
25         row_spacing/column_spacing confusion.  (#330732, Donald Straney)
26
27 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
28
29         * gtk/gtkstyle.c: Add some docs. (#330073, Mart Raudsepp)
30
31         * gtk/gtkentrycompletion.c (gtk_entry_completion_match_selected): 
32         Guard against NULL.  (#330177, Raphael Slinckx)
33
34 2006-02-10  Murray Cumming  <murrayc@murrayc.com>
35
36         * docs/reference/gtk/tmpl/gtkcomboboxentry.sgml: Mention that 
37         the changed signal is emitted when typing - not just when 
38         selecting from the list. Suggest use of GtkEntry::action to 
39         etect end of typing.
40          gtk/gtkcombobox.c: (gtk_combo_box_class_init): changed signal 
41         ocumentation: Mention that the GtkComboBoxEntry emits it when 
42         he users types, not just when he selects from the list.
43
44 2006-02-10  Murray Cumming  <murrayc@murrayc.com
45
46         * gtk/gtkassistant.h: Correct the declaration of the prepare 
47         default signal handler to match its registration and use.
48
49 2006-02-09  Ross Burton  <ross@burtonini.com>
50
51         * gtk/gtkfontbutton.c:
52         Work out the font size in floating point, and display the font
53         size with %g instead of %d (#317590)
54
55 2006-02-09  Tor Lillqvist  <tml@novell.com>
56
57         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
58         <WM_MOUSELEAVE>: If we don't know where we went, and have
59         generated a leave event, set current_window to the root
60         window. This assures we will generate proper enter and leave
61         events for popup windows. (#325521)
62
63 2006-02-08  John Ehresman  <jpe@wingware.com>
64
65         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
66         <WM_MOUSEACTIVATE>
67         * gdk/win32/gdkwindow-win32.c (show_window_internal)
68         (gdk_window_raise): Call SetWindowPos() instead of
69         SetForegroundWindow() or BringWindowToTop() if the window
70         shouldn't accept focus. (#327375)
71         
72 2006-02-08  John Ehresman  <jpe@wingware.com>
73
74         * gdk/win32/gdkwindow-win32.c: Let gdk_window_set_decorations()
75         take precedence over anything derived from hints. Restructure
76         related code and logic, add some new helper functions. (#327217)
77
78 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
79
80         * gtk/gtkfilechooserbutton.c: Don't put relevant callss
81         in g_assert().  (#329876, Kristian Rietveld)
82
83 2006-02-08  Tor Lillqvist  <tml@novell.com>
84
85         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab)
86         (gdk_display_pointer_ungrab, gdk_keyboard_grab)
87         (gdk_display_keyboard_ungrab): Consistenly use assign_object()
88         when assigning GdkWindow pointers so that the ref counting doesn't
89         get off whack.
90
91         (handle_stuff_while_moving_or_resizing): Don't use deprecated API.
92
93         (gdk_event_translate) <WM_MOUSEMOVE>: When the pointer is grabbed
94         with owner_events FALSE, generate enter and leave events only for
95         the grab window. (#321054)
96
97 2006-02-08  Kristian Rietveld  <kris@imendio.com>
98
99         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
100         (gtk_tree_model_filter_unref_path): free temporary paths after
101         usage (patch from maemo-gtk),
102         (gtk_tree_model_filter_clear_cache): fix little typo in the docs
103         (patch from maemo-gtk).
104
105         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
106         stale FIXME.
107
108 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
109
110         * gtk/gtkfilesystem.c (gtk_file_info_copy): Copy the display_key
111         as well.  (#330389, Markku Vire)
112
113 2006-02-08  Tor Lillqvist  <tml@novell.com>
114
115         * gtk-zip.sh.in: Drop the timestamp from the zipfile names.
116
117 2006-02-07  Sven Neumann  <sven@gimp.org>
118
119         * gdk/directfb/AUTHORS: updated mine and Dok's email address.
120
121 2006-02-06  Kristian Rietveld  <kris@gtk.org>
122
123         * gtk/gtktreeview.c (gtk_tree_view_get_search_entry): fix compiler
124         warning.
125
126 2006-02-05  Dom Lachowicz <cinamod@hotmail.com>
127
128         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Bug #330022
129         Wrong pixel values are computed when color = 0xFF and alpha = 0xFF
130         
131 2006-02-04  Michael Emmel  <mike.emmel@gmail.com>
132         Added new directfb backend located in gdk/directfb
133         plus patches to compile new backend
134         compile with --with-gdktarget=directfb
135
136 2006-02-03  Federico Mena Quintero  <federico@ximian.com>
137
138         Work around https://bugs.freedesktop.org/show_bug.cgi?id=4320,
139         which used to be our own
140         http://bugzilla.gnome.org/show_bug.cgi?id=314616.  If one uses a
141         pixmap for a pattern in Cairo, and sets the pattern to
142         CAIRO_EXTEND_REPEAT; and if the destination surface is also a
143         pixmap, Cairo does a slow copy instead of using XCopyArea().  So,
144         we use the same code that we used in GTK+ 2.6 (pre-cairo), by
145         filling the double-buffer pixmap with a tiled GC and
146         XFillRectangle().
147
148         * gdk/gdkwindow.c (BackingRectMethod): New structure with a
149         cairo_t and a GdkGC field.  Depending on which of these fields
150         gets filled in, we'll use Cairo or GDK to clear the double-buffer
151         pixmap when painting a window.
152         (setup_backing_rect_method): Fill a BackingRectMethod as
153         appropriate, depending on the window's configuration and our
154         knowledge of whether Cairo is fast or slow when doing repeating
155         patterns.
156         (gdk_window_clear_backing_rect): Call
157         setup_backing_rect_method().  Depending on what it returns, use
158         Cairo to clear the double-buffer pixmap, or plain GDK.
159
160 2006-02-03  Matthias Clasen  <mclasen@redhat.com>
161
162         * gtk/gtklabel.c (get_layout_location): Fix handling
163         of padding in RTL.  (#329099, Hooman Mesgary) 
164
165 2006-02-02  Matthias Clasen  <mclasen@redhat.com>
166
167         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
168         Make drops on the root window work again.  (#145243, Andrew S. Dixon)
169
170 2006-02-01  Matthias Clasen  <mclasen@redhat.com>
171
172         * gtk/gtkwidget.c (gtk_widget_class_init): Wrap dnd signal
173         docs to 80 columns.
174
175 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
176
177         * autogen.sh: Touch README and INSTALL here to pacify 
178         automake.  (#329124, Kjartan Maraas, Tim Janik)
179
180 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
181
182         * gtk/gtk.symbols:
183         * gtk/gtkassistant.h: 
184         * gtk/gtkassistant.c: Actually implement visibility handling,
185         and add gtk_assistant_update_buttons_state.
186
187         * tests/testassistant.c: Test visibility handling.
188
189 2006-01-31  Kristian Rietveld  <kris@imendio.com>
190
191         * gtk/gtkstyle.c (gtk_default_draw_flat_box): Add support for row
192         hinting for the selected state.
193
194 2006-01-30  Matthias Clasen  <mclasen@redhat.com>
195
196         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
197         Make sure the tree view is realized, since we grab the
198         focus to it.  (#329144, Wouter Bolsterlee)
199
200         * gtk/gtkspinbutton.h: 
201         * gtk/gtkspinbutton.c: Add a wrapped signal.  (#322933,
202         Carlos Garnacho Parro)
203
204         * gtk/gtkassistant.c: More generous spacing. (#328082,
205         Christian Persch, patch by Carlos Garnacho)
206         
207         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property): 
208         Use the setter for active.  (#329208, Guillaume Cottenceau)
209
210         * docs/tools/widgets.c (get_all_widgets): Add GtkLinkButton
211
212         * gtk/gtkassistant.c (gtk_assistant_init): Move the
213         last button to the left where it does not affect
214         the positioning of forward/back.
215
216 2006-01-29  Matthias Clasen  <mclasen@redhat.com>
217
218         More GtkAssistant work, by Carlos Garnacho.
219         
220         * tests/testassistant.c: Additions.
221
222         * gtk/gtkassistant.c: Handle page visibility, other 
223         small fixes.
224
225         * docs/tools/widgets.c: Add GtkAssistant.
226
227 2006-01-28  Behdad Esfahbod  <behdad@gnome.org>
228
229         * configure.in: If major.minor of required and available glib versions
230         are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
231
232         * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
233
234 2006-01-28  Dom Lachowicz <cinamod@hotmail.com>
235
236         * modules/engines/ms-windows/msw-style.c: Re-sync with gtk-wimp
237         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
238         
239 2006-01-28  Matthias Clasen  <mclasen@redhat.com>
240
241         * gtk/gtk.symbols: 
242         * gtk/gtklinkbutton.h: 
243         * gtk/gtklinkbutton.c: Allow to set a global hook function
244         thats called whenever a link button is clicked.
245
246         More work on GtkAssistant by Carlos Garnacho:
247         
248         * demos/gtk-demo/Makefile.am: 
249         * demos/gtk-demo/assistant.c: Add a  GtkAssistant demo.
250
251         * gtk/gtkassistant.c: Handle focus, several small fixes to the
252         flow computations.
253
254 2006-01-27  Federico Mena Quintero  <federico@ximian.com>
255
256         Fixes bug #328820:
257
258         * gtk/gtkfilechooserdefault.c
259         (gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
260         the location dialog populated to "/".
261         (tree_view_keybinding_cb): Likewise.
262         (trap_activate_cb): Likewise.
263
264 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
265
266         * gtk/gtkcalendar.c (gtk_calendar_size_request): Use translated format
267         strings for L10n in size calculation too.
268
269         * gtk/gtkcalendar.c (calendar_paint_week_numbers): Expand buffer to
270         accomodate localized digits.
271
272 2006-01-26  Matthias Clasen  <mclasen@redhat.com>
273
274         * tests/prop-editor.c: Introspect child properties. too.
275
276 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
277
278         * gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
279         Use contexed translated strings calendar:week:digits|%d and
280         calendar:day:digits|%d to let translators choose localized digits for
281         week and day numbers. (bug #317171, Hamed Malek)
282
283 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
284
285         * gtk/gtklabel.c (get_layout_location): Use logical extents of the
286         layout instead of ink extents.  According to Pango docs, that's what
287         should be used for placement.  Moreover, simply use
288         pango_layout_get_pixel_size instead of getting the extents and
289         dividing ourselves.
290
291 2006-01-25  Matthias Clasen  <mclasen@redhat.com>
292
293         * gtk/gtkentrycompletion.c: 
294         * gtk/gtkentry.c: Be more careful when blocking signals. 
295
296         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
297         set the cursor size if it is != 0.
298
299         * gtk/gtksettings.c (gtk_settings_class_init): Change the default value
300         of gtk-cursor-theme-size to 0, meaning "use default".
301
302 2006-01-24  Kristian Rietveld  <kris@gtk.org>
303
304         #322591, Jonathan Blandford.
305
306         * gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
307         (gtk_tree_view_set_search_entry),
308         (gtk_tree_view_get_search_position_func),
309         (gtk_tree_view_set_search_position_func): New functions,
310         and small adaptions to the tree view code to allow for setting
311         the entry and search position function.
312
313         * gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
314         typedef, which is now in gtktreeview.h as
315         GtkTreeViewSearchPositionFunc.  Add/update fields.
316
317         * gtk/gtk.symbols: Add new functions.
318
319         * tests/testtreesort.c: Add a little test for _set_search_entry().
320
321 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
322
323         Add GtkLinkButton, a port of GnomeHRef.  (#314808, Emmanuele Bassi)
324         
325         * gtk/gtklinkbutton.h: 
326         * gtk/gtklinkbutton.c: New files.
327
328         * gtk/gtk.h:
329         * gtk/gtk.symbols: 
330         * gtk/Makefile.am: Glue.
331
332         * gtk/gtkaboutdialog.c: Use GtkLinkButton.
333         
334         * gtk/gtkwidget.c: Add link-color and visited-link-color style
335         properties.  (#113649, Leena Gunda)
336
337         * gtk/gtkaboutdialog.c: Use the new style properties here instead
338         of the about dialogs own link-color property. 
339
340 2006-01-23  Kristian Rietveld  <kris@gtk.org>
341
342         * gtk/gtktreemodel.c (gtk_tree_model_base_init): don't copy
343         tree paths when emitting signals. (#325041, Matthias Clasen).
344
345 2006-01-23  Behdad Esfahbod  <behdad@gnome.org>
346
347         * gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
348         text in ellipsized GtkLabel: use layout width if set, otherwise
349         fallback to ink extents width. (#322042)
350
351 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
352
353         * gtk/gtkassistant.c (compute_last_button_state): Only show the
354         last button if we can jump to the end. 
355         (gtk_assistant_init): Make the spacing and button order more
356         HIG compliant.
357
358         Fix drawing issues in progress bars.  (#328081, Christian Persch)
359         
360         * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Always
361         request enough space. 
362         (gtk_progress_bar_paint_activity) 
363         (gtk_progress_bar_paint_continuous) 
364         (gtk_progress_bar_paint_discrete): Clip when drawing the bar.
365
366 2006-01-23  Michael Natterer  <mitch@imendio.com>
367
368         * gtk/gtkcolorbutton.c: move destruction of the private GdkGC
369         from finalize() to unrealize(). Fixes BadMatch on display change
370         (bug #85715).
371
372 2006-01-22  Kristian Rietveld  <kris@gtk.org>
373
374         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
375         commit after more searching in the bugzilla archives (see #309221).
376
377 2006-01-22  Kristian Rietveld  <kris@gtk.org>
378
379         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
380         to gtk_tree_view_column_cell_set_cell_data, since we also set the
381         cell data before iterating over the columns for exposure. (Fixes
382         #322471, Duncan Coutts).
383
384 2006-01-21  Matthias Clasen  <mclasen@redhat.com>
385
386         * tests/testassistant.c: Add some tests for GtkAssistant
387
388         * tests/Makefile.am: Glue
389
390 2006-01-20  Matthias Clasen  <mclasen@redhat.com>
391
392         * gtk/gtkassistant.c: Fix the docs to reflect the actual signal
393         signatures.
394
395         * gtk/gtktextview.c (gtk_text_view_set_virtual_cursor_pos): Don't
396         crash if layout is NULL.  (#327934, Christian Kirbach)
397
398 2006-01-20  Dan Winship  <danw@novell.com>
399
400         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
401         tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
402         "Open Location" window on "~" as well as "/". #153213
403         (location_entry_create): Fix this so autocompletion still works
404         correctly in that case.
405
406 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
407
408         * configure.in: Explicitly link against Xrender.  
409         (#327538, Christophe Belle)
410         
411         * gdk/x11/gdkprivate-x11.h (XID_FONT_BIT): 
412         * gdk/x11/gdkfont-x11.c: 
413         * gdk/x11/gdkxid.c: Use an unused high bit in the
414         XID to mark fonts in the global xid hash table.
415
416         * gdk/x11/gdkcursor-x11.c (update_cursor): Skip fonts
417         when iterating over the xid hash table, since calling
418         GDK_IS_WINDOW () on an GdkFont can cause a segfault.
419         (#327751, Ryan Lovett)
420
421 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
422         
423         * gtk/gtkassistant.[hc]: Use a priv pointer for
424         cheap access to the priv struct.  (#327725, Christian
425         Persch)
426
427         * gtk/gtkassistant.h: Fix line endings.
428
429 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
430
431         * gtk/gtkassistant.[hc]: Add GtkAssistant, a widget to
432         construct multi-step wizards.  (#115348, Martyn Russell, 
433         Matthias Clasen, Carlos Garnacho Parro)
434
435         * gtk/gtk.symbols:
436         * gtk/Makefile.am: 
437         * gtk/gtk.h: Necessary glue.
438
439 2006-01-18  Anders Carlsson  <andersca@imendio.com>
440
441         * gdk/quartz/gdkevents-quartz.c:
442         (get_mm_from_pixels):
443         (gdk_screen_get_width_mm):
444         (gdk_screen_get_height_mm):
445         Implement these functions.
446         (#327228, Thomas Broyer).
447
448 2006-01-18  Anders Carlsson  <andersca@imendio.com>
449
450         * gdk/quartz/gdkdrawable-quartz.c:
451         (gdk_quartz_draw_polygon):
452         (gdk_quartz_draw_lines):
453         Implement these functions.
454         (#327226, Thomas Broyer)
455         
456 2006-01-18  Anders Carlsson  <andersca@imendio.com>
457
458         * gdk/quartz/gdkkeys-quartz.c:
459         (maybe_update_keymap):
460         Support non-MacRoman keyboard layouts.
461         (#322585, Wolfgang Thaller)
462         
463 2006-01-18  Anders Carlsson  <andersca@imendio.com>
464
465         * gdk/quartz/gdkmain-quartz.c:
466         (_gdk_windowing_init):
467         Make the process a foreground application.
468         (#322481, Wolfgang Thaller)
469         
470 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
471
472         * gtk/gtkrbtree.c: 
473         * gtk/gtktreemodel.c: Fix several g_new() calls which
474         were using extra indirections or pointless casts.  
475         (#327423, Morten Welinder)
476
477 Tue Jan 17 19:27:59 2006  Tim Janik  <timj@imendio.com>
478
479         * gtk/gtkprogress.c: fix adopted from maemo-gtk.
480         gtk_progress_create_pixmap(): clear out the newly created offscreen 
481         pixmap, so themes making use of transparency don't draw onto garbage.
482
483 2006-01-17  Michael Natterer  <mitch@imendio.com>
484
485         * gtk/gtkbutton.c: remove the "child-spacing" style property again
486         and add "inner-border" instead. That's far more flexible and
487         "child-spacing" was a bad name anyway.
488
489 2006-01-17  Michael Natterer  <mitch@imendio.com>
490
491         * configure.in (ALL_LINGUAS): remove "ang" again until all po
492         files are there.
493
494 2006-01-16  Abel Cheung  <maddog@linuxhall.org>
495
496         * configure.in: Added "ang" "zh_HK" to ALL_LINGUAS.
497
498 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
499
500         * README.in: Mention new pixbuf engine features.
501
502         * gtk/gtk.symbols: 
503         * gtk/gtkradioaction.[hc]: Add a current-value property and a
504         setter for it.  (#322735, Jorn Baayen)
505         
506 2006-01-16  Michael Natterer  <mitch@imendio.com>
507
508         * gtk/gtkbutton.c: applied patch from maemo-gtk which adds a
509         child-spacing style property. Fixes bug #327202.
510
511 2006-01-16  Anders Carlsson  <andersca@imendio.com>
512
513         * gdk/quartz/gdkdisplay-quartz.c:
514         * gdk/quartz/gdkevents-quartz.c:
515         (gdk_keyboard_grab):
516         (gdk_display_keyboard_ungrab):
517         (gdk_keyboard_grab_info_libgtk_only):
518         (find_window_for_event):
519         Implement keyboard grabs.
520         
521         (_gdk_quartz_send_map_events):
522         * gdk/quartz/gdkmain-quartz.c:
523         * gdk/quartz/gdkprivate-quartz.h:
524         New function that synthesizes map events.
525         
526         * gdk/quartz/gdkwindow-quartz.c:
527         (_gdk_windowing_window_init):
528         The root window is always visible.
529         
530         (all_parents_shown):
531         (show_window_internal):
532         Send map events.
533         
534         (gdk_window_hide):
535         Ungrab keyboard and pointer
536
537 2006-01-15  Kristian Rietveld  <kris@gtk.org>
538
539         Fixes #324099, Tommi Komulainen.
540
541         * gtk/gtktreestore.[ch] (gtk_tree_store_insert_with_values),
542         (gtk_tree_store_insert_with_valuesv): new functions, analog to
543         those found in GtkListStore.
544
545         * gtk/gtktreestore.c (gtk_tree_store_real_set_value),
546         (gtk_tree_store_set_valist), (gtk_tree_store_set_valist_internal),
547         (gtk_tree_store_sort_iter_changed): refactored.
548
549         * gtk/gtk.symbols: updated.
550
551         * tests/treestoretest.c: added a test for this new functionality.
552
553 2006-01-14  Matthias Clasen  <mclasen@redhat.com>
554
555         * gtk/gtkentry.c (gtk_entry_drag_data_received): Remove 
556         an unused variable.
557
558         * gtk/gtkiconfactory.c (get_default_icons): Register RTL 
559         versions of the indent and unindent icons.  (#326857,
560         Itai Bar-Haim)
561
562         * gtk/Makefile.am (STOCK_ICONS): And add them here.
563
564         Fix a crash with combo boxes in RESIZE_IMMEDIATE
565         containers.  (#326806, Sebastian Bacher)
566         
567         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate) 
568         (gtk_combo_box_size_request): Don't call 
569         gtk_combo_box_check_appearance() from here, as that 
570         can lead to recursion. 
571         (gtk_combo_box_init): Instead, call it here.
572
573 2006-01-14  Kristian Rietveld  <kris@gtk.org>
574
575         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_iter_children): fix
576         a typo which caused this whole thing to not function ...
577
578 2006-01-14  Kristian Rietveld  <kris@gtk.org>
579
580         * gtk/gtktreeview.c (gtk_tree_view_size_allocate),
581         (validate_visible_area): fixup adjustments and top_row if the
582         current dy + page_size exceeds the new tree view height. (Fixes
583         #316689, reported by Chris Lord).
584
585 2006-01-13  Matthias Clasen  <mclasen@redhat.com>
586
587         * */abicheck.sh: Make this work on more platforms.
588
589 2006-01-13  Kristian Rietveld  <kris@imendio.com>
590
591         * tests/testtreefocus.c (set_indicator_size), (main): add a little
592         test for the newly introduced indicator-size property.
593
594 2006-01-13  Kristian Rietveld  <kris@imendio.com>
595
596         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
597         initialize the inconsistent field in the private structure,
598         (gtk_cell_renderer_toggle_class_init),
599         (gtk_cell_renderer_toggle_{set,get}_property),
600         (gtk_cell_renderer_toggle_get_size): introduce a indicator-size
601         property.
602
603 2006-01-13  Michael Natterer  <mitch@imendio.com>
604
605         * gtk/gtktreeview.c (gtk_tree_view_real_expand_row)
606         (gtk_tree_view_real_collapse_row): don't animate the expander
607         arrows if gtk-enable-animations is FALSE (bug #142582).
608
609 2006-01-12  Matthias Clasen  <mclasen@redhat.com>
610
611         * gtk/gtknotebook.c: Replace hardcoded values for tab-overlap and
612         tab-curvature with style properties.  (#325282, Alexander Nedotsukov)
613
614         * gtk/gtktextview.c (gtk_text_view_commit_text) 
615         (gtk_text_view_delete_from_cursor, gtk_text_view_backspace): 
616         Reset the virtual cursor position.  (#326003, Evert Verhellen)
617
618         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add some docs
619         about RGBA windows. (#326486, Benjamin Otte)
620
621 2006-01-12  Michael Natterer  <mitch@imendio.com>
622
623         * gdk/gdkimage.c (scratch_image_info_for_depth): connect to the
624         display's "closed" signal and free the cached scratch images upon
625         display closing (bug #85715).
626
627 2006-01-12  Michael Natterer  <mitch@imendio.com>
628
629         * gtk/gtkexpander.c (gtk_expander_set_expanded): skip the
630         animation if the gtk-enable-animations setting is FALSE
631         (bug #142582).
632
633 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
634
635         * gtk/gtklabel.c: Fix a C99ism (#326658, Kazuki Iwamoto)
636
637 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
638
639         * gtk/gtklabel.c: Add some notify batching, always
640         emit notify after setting the new value.
641
642         * gtk/gtkmessagedialog.c: Add properties.  (#311254,
643         Johan Dahlin)
644         (gtk_message_dialog_new): Remove some redundant code, pointed
645         out by Gustavo Carneiro.
646
647         * gdk/x11/gdkwindow-x11.c (create_moveresize_window): Clean
648         up properly if the grab fails.
649         (finish_drag): Don't leak a reference to moveresize_window
650         here.
651
652 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
653
654         * gdk/x11/gdkevents-x11.c: Fix string offsets.
655
656         Allow falling back to another icon theme before 
657         hicolor.   (#325546, Rodney Dawes)
658         
659         * gtk/gtksettings.c: Add a gtk-fallback-icon-theme setting.
660
661         * gdk/x11/gdkevents-x11.c: Map it to the XSetting Net/FallbackIconTheme.
662         
663         * gtk/gtkicontheme.c: Consult the fallback icon theme before
664         looking in hicolor. 
665
666 2006-01-10  Matthias Clasen  <mclasen@redhat.com>
667
668         * tests/testgtk.c: Add an expander example.
669
670         * gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
671         when losing the focus.  (#326064, Andrew Conkling)
672
673         * gtk/gtkimmulticontext.c: 
674         * gtk/gtkhsv.c: 
675         * gtk/gtkhandlebox.c: Convert to use instance private data.
676
677         * gtk/gtk.h: Remove duplicate include.  (#326429, 
678         Benoît Carpentier)
679
680         * gtk/gtkpaned.c: Convert to use instance private data.
681
682 2006-01-10  Michael Natterer  <mitch@imendio.com>
683
684         * gdk/gdkpango.c (on_renderer_display_closed): disconnect from the
685         right object ("closed" is emitted by the display, not the screen).
686         (bug #85715)
687
688 2006-01-10  Anders Carlsson  <andersca@imendio.com>
689
690         * gdk/quartz/gdkproperty-quartz.c:
691         (ensure_atom_tables):
692         (intern_atom_internal):
693         (gdk_atom_intern):
694         (gdk_atom_intern_static_string):
695         (gdk_atom_name):
696         Implement local-only atoms.
697
698 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
699
700         * gdk/gdkgc.c (gc_get_foreground): Correct a warning.
701         (#326341, Benoît Carpentier)
702
703         * gtk/gtk.symbols:
704         * gtk/gtkwindow.h:
705         * gtk/gtkwindow.c (gtk_window_get_group): Make this function
706         public API.  (#307099, Todd Berman)
707
708         * gtk/gtkmenu.c: 
709         * gtk/gtkmain.c: 
710         * gtk/gtkentrycompletion.c: 
711         * gtk/gtkcombo.c: 
712         * gtk/gtkcombobox.c: Update all callers.
713
714         * gtk/gtkentry.c (paste_received):  Make GtkEntryCompletion
715         complete on pastes at the end.  (#165714, Christian Neumair)
716
717         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
718         Prevent the first row being focused on map.  (#137351,
719         Niklas Knutsson)
720
721 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
722
723         * gtk/gtk.symbols:
724         * gtk/gtkeditable.h:
725         * gtk/gtksizegroup.c: (gtk_size_group_get_widgets):
726         * gtk/gtksizegroup.h:
727         (struct _GtkSizeGroup): 
728
729         Add gtk_size_group_get_widgets, fixes #326324.
730         Also mark all fields of GtkSizeGroup as private
731
732 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
733
734         * gtk/gtktextlayout.c (gtk_text_layout_finalize): Don't
735         leak preedit_string and preedit_attrs.  (#322332, Paolo
736         Borelli)
737
738         * gtk/gtk.symbols:
739         * gtk/gtkaction.h: 
740         * gtk/gtkaction.c (gtk_widget_get_action): New function to
741         get the action for a proxy.  (#326288)
742
743         * gtk/gtkaction.c: Go back to the old key for attaching the
744         action to the proxy.  (#326288, Diego González)
745
746 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
747
748         * gtk/gtkactiongroup.c (dgettext_swapped): Don't translate
749         empty strings.  (#326200, Christian Stimming)
750
751 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
752
753         * gtk/gtkentry.[hc]: 
754         * gtk/gtklabel.[hc]: Shrink the private structs of these a bit.
755
756         * gtk/gtklabel.c (get_layout_location): Fix label alignment 
757         when width-chars is set.  (#326098, Benjamin Otte)
758
759         * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the 
760         single-rectangle case.  (#326127, Benjamin Berg)
761         (gdk_region_copy): Use miRegionCopy() here.
762
763 2006-01-07  Matthias Clasen  <mclasen@redhat.com>
764
765         Fix actiongroup-action interaction that relied on 
766         actions connecting to notify on themselves:
767         
768         * gtk/gtkaction.[hc]: Factor out the code updating the
769         visibility/sensitivity of proxies into _gtk_action_sync_visible()
770         and _gtk_action_sync_sensible().
771
772         * gtk/gtkactiongroup.c: Call the new functions when the
773         group visibility/sensitivity changes. 
774
775 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
776
777         * gtk/gtkactiongroup.c (gtk_action_group_set_sensitive) 
778         (gtk_action_group_set_visible): Add missing property change
779         notification.
780
781 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
782
783         * gtk/gtkfilechooserbutton.c (model_add_special): Just use the
784         directory name for the home dir.  (#325817, Federico Mena Quintero)
785         
786         * gtk/gtktexttag.c (gtk_text_attributes_new): Initialize editable 
787         to TRUE. 
788         (gtk_text_tag_class_init): The default value for the direction 
789         property is GTK_TEXT_DIR_NONE. Add notes about the initial values 
790         of the font and language properties.
791
792         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Make clicked
793         an action signal.  (#325782, Martyn Russell)
794
795         * gtk/gtkviewport.c (viewport_set_adjustment): Disconnect from
796         the old adjustments signals.  (#325869, Jorn Baayen)
797
798 2006-01-06  Hans Breuer  <hans@breuer.org>
799
800         * tests/makefile.msc : added a bunch of tests
801         * tests/testcellrenderertext.c : use g_snprintf()
802         * tests/testfilechooserbutton.c : don't include unistd.h twice.
803         Removed the unconditional one and added direct.h for G_OS_WIN32
804         
805 2006-01-05  Hans Breuer  <hans@breuer.org>
806
807         * gdk/makefile.msc : also recurse into win32 for ::clean
808         * gtk/makefile.msc.in : create gtkbuiltincache.h (most code
809         to simulate links) and file renames
810
811 2006-01-05  Johan Dahlin  <jdahlin@async.com.br>
812
813         * gtk/gtkprogressbar.c: Set minimum for activity-step property to 0
814         instead of -G_MAXUINT.
815         
816 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
817
818         * gtk/gtkwindow.c: Only connect to the event if we have
819         a frame, since the handler is only relevant in that case.
820
821         * gtk/gtkaction.c (connect_proxy, disconnect_proxy): 
822         Use a weak reference rather than the destroy signal to track 
823         proxies going away.
824
825         * gtk/gtkbindings.c (binding_signal_new): Revert the last change.
826
827         * gtk/gtkaction.c (gtk_action_sync_property): 
828         (gtk_action_sync_stock_id): Removed.
829
830 2006-01-05  Rodrigo Moya <rodrigo@novell.com>
831
832         * gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
833         signal and arguments.
834
835 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
836
837         * gtk/gtklabel.c (gtk_label_grab_focus): Don't return a value from
838         a void function.
839
840 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
841
842         * gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
843         changes.
844         
845         * gtk/gtkbindings.c: Use the slice allocator and allocate signal
846         and arguments in one block.
847
848         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
849         a list of NULLs.  (#325723, Steve Chaplin)
850
851 2006-01-04  Rodrigo Moya <rodrigo@novell.com>
852
853         * gtk/gtkbindings.c (binding_signal_new): guard against multiplying
854         by -1 (when n_args is 0).
855
856 2006-01-04  Michael Natterer  <mitch@imendio.com>
857
858         * gtk/gtkmenutoolbutton.c
859         (gtk_menu_tool_button_set_menu)
860         (gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
861         and gtk_menu_detach() instead of reffing/unreffing the menu
862         manually. Also fixes brokenness on screen change (bug #85715).
863
864 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
865
866         * gtk/gtkaccelmap.c: 
867         * gtk/gtkactiongroup.c: 
868         * gtk/gtkdialog.c: 
869         * gtk/gtkfilesystemunix.c: 
870         * gtk/gtkgc.c: 
871         * gtk/gtkkeyhash.c: 
872         * gtk/gtkplug.c: 
873         * gtk/gtktextiter.c: 
874         * gtk/gtktextlayout.c: 
875         * gtk/gtkuimanager.c: 
876         * gtk/gtkwidget.c: 
877         * gtk/gtkwindow.c: 
878         * gtk/gtkxembed.c: Use the slice allocator for many small 
879         allocations.
880
881         * gtk/gtkcolorsel.c: 
882         * gtk/gtktreeview.c: Use IPN.
883
884         * gtk/gtkwidget.c: Remove an unused field from the AccelPath 
885         struct.
886
887 2006-01-04  Tor Lillqvist  <tml@novell.com>
888
889         * gtk-zip.sh.in: Include also the gtk20-properties message catalogs.
890
891 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
892         
893         * gtk/gtkdnd.c: Make it compile
894
895         * gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
896         for non-motion events.  (#325443, Peter Harvey)
897
898         * gtk/gtkaction.c: Avoid connecting to notify on our own
899         properties. 
900
901 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
902
903         * gtk/gtkentry.c (gtk_entry_delete_from_cursor): When deleting
904         words, delete preceding whitespace as well.  (#325358,  Akkana Peck)
905
906 2006-01-02  Anders Carlsson  <andersca@imendio.com>
907
908         * gdk/quartz/GdkQuartzWindow.c:
909         (-[GdkQuartzWindow canBecomeMainWindow]):
910         (-[GdkQuartzWindow canBecomeKeyWindow]):
911         Have these return TRUE
912         
913         * gdk/quartz/gdkevents-quartz.c:
914         (pointer_grab_internal):
915         Remove FIXME
916         
917         (find_child_window_by_point_helper):
918         Fix bug in offset calculation
919         
920         (find_window_for_event):
921         Use grab window toplevel when a grab is in effect
922         
923         (gdk_event_translate):
924         Don't call _gdk_event_button_generate on mouse up
925         
926         * gdk/quartz/gdkgc-quartz.c:
927         (_gdk_quartz_gc_new):
928         Fix indentation
929         
930         * gdk/quartz/gdkwindow-quartz.c:
931         (gdk_window_new):
932         Make TEMP windows borderless
933         
934         (gdk_window_hide):
935         Hide window
936         
937         (gdk_window_get_origin):
938         Implement
939         
940 2006-01-02  Tor Lillqvist  <tml@novell.com>
941
942         * gdk/win32/gdkwindow-win32.c
943         (gdk_window_impl_win32_get_visible_region): Make identical to the
944         X11 implementation. (#322264, John Ehresman)
945
946         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
947         invalidated region from ScrollWindowEx() instead of an incorrect
948         attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
949
950         * gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
951
952         * gdkprivate-win32.h: Declare it.
953
954 2005-12-31  Matthias Clasen  <mclasen@redhat.com>
955
956         * gtk/gtkaction.c: 
957         * gtk/gtkentry.c: Connect to notify instead of multiple
958         detailed signals.
959
960 2005-12-30  Matthias Clasen  <mclasen@redhat.com>
961
962         * gdk/gdk.symbols: 
963         * gdk/gdkcairo.h: 
964         * gdk/gdkcairo.c: Add gdk_cairo_set_source_pixmap.  (#318805,
965         Alexander Larsson)
966
967         * gdk/gdkdisplaymanager.c (gdk_display_manager_set_property): Call
968         gdk_display_manager_set_default_display() to change the default
969         display.  (#153623, Stefan Kost)
970
971         * gtk/gtkmessagedialog.c (gtk_message_dialog_init):
972          (setup_type): Alert dialogs should not have titles and should 
973         not be displayed in the taskbar.  (#310443, Carlos Garnacho Parro,
974         Dennis Cranston)
975
976 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
977
978         * gtk/gtkliststore.c: 
979         * gtk/gtktreestore.c: Always call the get_path and get_iter
980         implementations directly, rather than the current mixture whith
981         some calls going through the GtkTreeModel interface.
982
983         * gtk/gtktreemodelsort.c: 
984         * gtk/gtkliststore.c: 
985         * gtk/gtktreestore.c: Remove excessive g_return_if_fail() checks
986         in static functions.
987         
988         * gtk/gtktreedatalist.c: Use the slice allocater for 
989         GtkTreeDataSortHeader.
990
991         * gtk/gtktreedatalist.h: 
992         * gtk/gtktreedatalist.c (_gtk_tree_data_list_set_header): New function.
993
994         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): 
995         * gtk/gtkliststore.c (gtk_list_store_set_sort_func): 
996         * gtk/gtktreestore.c (gtk_tree_store_set_sort_func): Use it here.
997
998 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
999
1000         * gtk/gtkbindings.h (GtkBindingSignal): 
1001         * gtk/gtkbindings.c (binding_signal_new): Make the
1002         args a flexible array inside the struct, and allocate them
1003         together.
1004
1005 Wed Dec 28 00:45:46 2005  Tim Janik  <timj@gtk.org>
1006
1007         * gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
1008         clist rows which crashes in gslice later on.
1009
1010 2005-12-27  Federico Mena Quintero  <federico@ximian.com>
1011
1012         * gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
1013         FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
1014         not NULL.  Fixes bug #317687.
1015
1016 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
1017
1018         * gdk/x11/gdkevents-x11.c (check_transform): Fix a typo.
1019         (gdk_screen_get_setting): Avoid relocations for the settings
1020         map.
1021
1022         * gdk/x11/gdkproperty-x11.c: Avoid relocations for the list
1023         of standard atoms.
1024
1025         * gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
1026         the set_name by interning it.
1027
1028 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
1029
1030         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Precache atoms
1031         before calling gdk_window_new().
1032
1033         * gtk/gtktextbtree.c: Use the slice allocator for some other small
1034         auxiliary structures as well.
1035
1036         * gtk/gtkimcontext.c (gtk_im_context_filter_keypress): Clarify
1037         docs.  (#324996)
1038
1039         * gtk/gtktextbtree.c (gtk_text_btree_get_tag_info) 
1040         (gtk_text_btree_remove_tag_info): Use the slice allocator for 
1041         tag info.
1042
1043         * README.in: Mention the stripping of (_F) suffixes.
1044
1045         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of 
1046         the form "(_<single character>)", since this is the preferred way
1047         for some languages to indicate accelerators.  (#323956, Yang Hong)
1048
1049         * gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
1050         setting.
1051         (gtk_label_grab_focus): And use it here to select the contents of
1052         the label when appropriate.
1053         (gtk_label_class_init): Use the same keybindings for select all/
1054         unselect all as GtkEntry and GtkTextView.
1055
1056         * gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
1057         focus, avoid leaving a selection in a label.
1058
1059 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
1060
1061         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
1062         Ross Burton)
1063
1064         * configure.in: Require GLib 2.9.2
1065
1066 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
1067
1068         * gdk/gdkregion-generic.c: 
1069         * gdk/gdkpolyreg-generic.c: 
1070         * gdk/gdkregion.h: 
1071         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
1072         extra allocation for rectangular regions.
1073
1074 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
1075
1076         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
1077
1078 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
1079
1080         * gtk/gtkobject.h: parent type fixups in structure declarations.
1081
1082 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
1083
1084         * gtk/gtkobject.c: derive GtkObject from GUnowned,
1085         so it initially has a floating reference count.
1086         gtk_object_class_init(): installa floating flag handler with
1087         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
1088         in the ->flags member.
1089
1090         * tests/floatingtest.c: test floating flag uses.
1091
1092 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
1093
1094         * gdk/gdkregion-generic.c: Use the slice allocator
1095         for regions. Still todo: avoid extra allocations for
1096         the single-rectangle case.
1097
1098         * gtk/gtksettings.c (gtk_settings_class_init): Update
1099         class_n_properties after installing color-hash, since
1100         other classes install settings, too.
1101
1102         * gtk/gtkctree.c: 
1103         * gtk/gtkclist.c: Fix some mistakes in the conversion
1104         from mem chunks to slice allocator.
1105
1106         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
1107         wrap-width also if an explicit item width is set.  
1108         (#322475, Alex Graveley)
1109         
1110 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
1111
1112         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
1113         pressed_button to -1 after handling a double click, so that
1114         motion events occurring between here and the release event
1115         don't trigger DND.  (#324588, Dave Andreoli)
1116
1117 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
1118
1119         * gtk/gtkcellrenderer.c: 
1120         * gtk/gtkselection.c: 
1121         * gtk/gtkcalendar.c: 
1122         * gtk/gtkitemfactory.c: 
1123         * gdk/gtkcombo.c: 
1124         * gdk/gdkpixbuf-render.c: Documentation updates
1125
1126         * gtk/gtktreemodel.c: 
1127         * gtk/gtkplug.c: 
1128         * gtk/gtkwindow.c: Documentation fixes.
1129
1130 2005-12-19  Michael Natterer  <mitch@imendio.com>
1131
1132         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
1133         which, when enabled, truncates multi-line pastes or drops to their
1134         first line. Fixes bug #322252.
1135
1136         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
1137         truncate-multiline here.
1138
1139 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
1140
1141         * gtk/gtksettings.c (get_color_hash): Don't crash if
1142         there is no color scheme.  (#324429, Diego Gonzalez)
1143
1144 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
1145
1146         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
1147         * gtk/gtkimmodule.c (gtk_im_module_load): 
1148         * gtk/gtkthemes.c (gtk_theme_engine_load): 
1149         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
1150         opening modules.
1151
1152         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
1153         is inherited. Now the overriding is done on a per-color basis,
1154         rather than for the setting as a whole. This has the effect
1155         that themes can declare defaults for all the symbolic colors they
1156         use by specifying a value for the gtk-color-scheme setting in 
1157         their rc file, while still allowing the XSetting to override
1158         "standard" symbolic colors. The hash table is now available
1159         through the color-hash property.
1160         
1161         * gtk/gtkrc.c: Use the new color-hash property.
1162         
1163 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
1164
1165         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
1166         children when doing focus sorting.  (#323995, Dan Winship)
1167
1168 2005-12-14  Rodney Dawes  <dobey@novell.com>
1169
1170         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
1171         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
1172         (get_icon_for_mime_type): Look up the mime type icons according to the
1173         Icon Naming Specification and then fall back to the gnome-mime- prefix
1174         for the mime type icons
1175
1176         Fixes #323655
1177         
1178 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
1179
1180         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
1181         cannot be loaded.  (#323504, Kjartan Maraas)
1182
1183         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
1184         for the row-activated signal.  (#324044, Davyd Madeley)
1185
1186 2005-12-14  Michael Natterer  <mitch@imendio.com>
1187
1188         * tests/test-images/valid_jpeg_progressive_test: new test image.
1189
1190 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
1191
1192         * README.in: added a link to the floating reference docs in the
1193         2.10 release NEWS section.
1194
1195 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
1196
1197         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
1198         Speed this function up, using the fact that visibility is 
1199         constant across segments. (#321548, Paolo Borelli)
1200
1201         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
1202         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
1203         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
1204
1205         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
1206         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
1207         upon initial theme load.  (#323876, Peter Lund)
1208
1209         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
1210         the size-changed signal correctly.  (#323848, Murray Cumming)
1211
1212         * gtk/gtkmarshalers.list: Add necessary marshaller.
1213
1214         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
1215         fall thru to the wrong window types.  (#323843)
1216
1217         Make the gtk-color-scheme setting work.
1218         
1219         * gtk/gtksettings.h: 
1220         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
1221         that takes care of initializing the color hash if it is not 
1222         already there.  
1223
1224         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
1225         And use it here.        
1226
1227 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
1228
1229         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
1230         not if it succeeds. 
1231
1232 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
1233
1234         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
1235         leak list[0].  (#323629, Markku Vire)
1236
1237         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
1238         when freeing the RequestData.  (#323577)
1239
1240 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
1241
1242         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
1243         leak text.
1244
1245         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
1246         variable name clash.  (#323475, Ross Burton)
1247
1248 2005-12-07  Ross Burton  <ross@burtonini.com>
1249
1250         * docs/reference/gtk/tmpl/gtkenums.sgml:
1251         * gtk/gtktoolbutton.c:
1252         If the toolbar mode is ICONS and there is no icon set then show
1253         the label, and vice versa (#322019)
1254
1255 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
1256
1257         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
1258         variable name clash.  (#323475, Ross Burton)
1259
1260         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
1261         window when synthesizing the key event.  (#323077,
1262         Sadrul Habib Chowdhury)
1263         
1264         (gtk_tree_view_search_key_press_event): Also listen for
1265         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
1266
1267         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
1268         Only scroll if we have focus.  (#316310, Paolo Borelli)
1269
1270         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
1271         spotted by Crispin Flowerday.
1272
1273 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
1274
1275         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
1276         hinting on (part of #307196)
1277
1278 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
1279
1280         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
1281         commit from reset, it upstets GtkTextView.
1282
1283         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
1284         careful when turning blinking on and off.
1285         (gtk_text_view_focus_out_event): Make the cursor really invisible
1286         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
1287         (cursor_blinks): Check the gtk-cursor-blink setting first.
1288
1289         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
1290         issues with new_event and its window.
1291
1292         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
1293         as a detach func.  (#323386, Jorn Baayen)
1294
1295         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
1296         the libdate routines.  (#323045, Kazuki Iwamoto)
1297
1298         * gdk/gdk.c (gdk_parse_args): 
1299         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
1300         from g_option_context_parse(). 
1301
1302 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
1303
1304         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
1305         initialization.
1306
1307 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
1308
1309         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
1310         compiles again.
1311
1312 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
1313
1314         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
1315         modifiers", not "event->state && modifiers".  Patch by Sadrul
1316         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
1317
1318 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
1319
1320         * gtk/gtkwidget.c: 
1321         * gtk/gtkuimanager.c: 
1322         * gtk/gtktreedatalist.c: 
1323         * gtk/gtktext.c: 
1324         * gtk/gtkmain.c: 
1325         * gtk/gtkitemfactory.c: 
1326         * gtk/gtkseparator.[hc]:
1327         * gtk/gtkclist.[hc]: 
1328         * gtk/gtkctree.c:
1329         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
1330
1331 2005-12-05  Michael Natterer  <mitch@imendio.com>
1332
1333         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
1334         "timeout-initial", "timeout-repeat", "color-scheme" and
1335         "enable-animations" to X settings.
1336
1337 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
1338
1339         * gdk/gdkevents.c: 
1340         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
1341
1342         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
1343         after sending it to the search entry.  (#323209, Crispin Flowerday)
1344
1345         * README.in: Add a note about GTK_FLOATING.
1346
1347         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
1348
1349 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
1350
1351         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
1352         a pixbuf.  (#323024, Paolo Borelli)
1353
1354 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
1355
1356         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
1357         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
1358
1359 2005-12-02  Michael Natterer  <mitch@imendio.com>
1360
1361         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
1362         adds a "horizontal-padding" style property. Fixes bug #323036.
1363
1364 2005-12-01  Michael Natterer  <mitch@imendio.com>
1365
1366         Merged modified patch from maemo-gtk that allows to disable
1367         toolbar animations. Addresses bug #142582.
1368
1369         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
1370         (patch from Christian Neumair)
1371
1372         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
1373         property is FALSE. Replaced the individual "notify::foo"
1374         connections to GtkSettings by a single "notify" callback and
1375         dispatch internally.
1376
1377 2005-12-01  Michael Natterer  <mitch@imendio.com>
1378
1379         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
1380         assignment of widget_class->motion_notify_event.
1381
1382 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
1383
1384         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
1385         an active property.  (#322673, Jorn Baayen)
1386
1387         Properly handle model changes in GtkTreeSelection: (#322569,
1388         Milosz Derezynski)
1389         
1390         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
1391         Get a reference to the model, and stop the iteration if the model
1392         of the treeview is changed on the way.
1393
1394         * gtk/gtktreeprivate.h: 
1395         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
1396         private function to emit the GtkTreeSelection::changed signal.
1397
1398         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
1399         _gtk_tree_selection_emit_changed() when the model changes.
1400
1401 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
1402
1403         Fixes the critical warnings from bug #317999, thus fixing the bug
1404         completely:
1405
1406         * gtk/gtkfilechooserdefault.c
1407         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
1408         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
1409         impl->current_folder directly.  The latter may be null if we are
1410         in RELOAD_NONE state.
1411
1412 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
1413
1414         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
1415
1416         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
1417         current_folder to the pending select paths here; the path bar will
1418         give it to us now.
1419         (path_bar_clicked): Add the child_path to the pending select paths
1420         here.
1421         (show_and_select_paths): Don't filter out folders.
1422         (show_and_select_paths): Don't take separate arguments for
1423         only_one_path and multiple paths.
1424
1425         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
1426         New test about preserving the filters when we change folders.
1427
1428 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
1429
1430         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
1431         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
1432
1433         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
1434         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
1435         Milosz Derezynski)
1436
1437         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
1438         handle the cell list and indices into it.  (#321856)
1439
1440 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
1441
1442         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
1443         the timeout is done.  (#322291, Jean-Yves Lefort)
1444
1445 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
1446
1447         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
1448         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
1449         by Paolo Borelli)
1450
1451 2005-11-28  Tor Lillqvist  <tml@novell.com>
1452
1453         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
1454         Implement the conditional use of FlashWindowEx() properly for MSVC
1455         compilations. The code was confusingly assuming that if compiled
1456         with a "new" compiler, it will only be run on "new" Windows
1457         versions. We want it to run on "old" versions, too, even if
1458         compiled with a "new" compiler. There are two orthogonal issues:
1459         whether the compiler defines the necessary API in its headers, and
1460         whether it is present at run-time. (#318077)
1461
1462         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
1463         Windows to get the localized weekday and month names. strftime()
1464         in the Microsoft C library returns strings in the default codepage
1465         for the locale of the process, not the system codepage. Thus
1466         g_locale_to_utf8() isn't useable on the return value from
1467         strftime(). (#322603)
1468
1469 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
1470
1471         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
1472         Fix an example.  (#322493, Elie De Brauwer)
1473         
1474         Fix two memory handling problems in GtkTreeView: (#322350, 
1475         Søren Sandmann)
1476         
1477         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
1478         (gtk_tree_view_set_model): Remove all references to nodes in
1479         the old model.
1480         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
1481         before removing the children.
1482
1483         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
1484         PangoLayout here.  (#322505, Paolo Borelli)
1485
1486 2005-11-27  Tor Lillqvist  <tml@novell.com>
1487
1488         Once again rework Win32 window decoration code. Doesn't break
1489         #104514. The dialogs in gtk-demo now have the same decorations and
1490         behaviour as on X11. Tried to fix #322516 but it seems very hard
1491         to make the trivial sample program there behave as expected. OTOH,
1492         simply moving the gtk_window_decorate() call in the #322516 sample
1493         program after the call to gtk_widget_show() helps...
1494             
1495         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
1496         the correct semantics. Each call to gdk_window_set_decorations()
1497         which calls this function is supposed to affect all decorations.
1498
1499         (decorate_based_on_hints): New function, looks at both geometry
1500         hints and type hint and sets window decorations based on
1501         that. Consolidate code from gdk_window_set_geometry_hints() and
1502         gdk_window_set_type_hint() here.
1503
1504         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
1505         decorate_based_on_hints().
1506
1507 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
1508
1509         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
1510         Includes improved menu icon spacing, [+]/[-] expander drawing,
1511         status-bar gippie drawing, and notebook tab drawing.
1512         
1513 2005-11-24  Michael Natterer  <mitch@imendio.com>
1514
1515         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
1516         that used to hold signal handler IDs to two guint of padding.
1517
1518         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
1519         gulong here.
1520
1521         (gtk_toolbar_screen_changed): changed accordingly.
1522
1523 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
1524
1525         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
1526         in terms of the GObject floating/sink API.
1527
1528         * gtk/gtkaboutdialog.c:
1529         * gtk/gtkaction.c:
1530         * gtk/gtkcellview.c:
1531         * gtk/gtkclist.c:
1532         * gtk/gtkcolorsel.c:
1533         * gtk/gtkcombobox.c:
1534         * gtk/gtkfilechooserdefault.c:
1535         * gtk/gtkiconview.c:
1536         * gtk/gtkinvisible.c:
1537         * gtk/gtkitemfactory.c:
1538         * gtk/gtklayout.c:
1539         * gtk/gtkmenu.c:
1540         * gtk/gtkmenutoolbutton.c:
1541         * gtk/gtknotebook.c:
1542         * gtk/gtkprogress.c:
1543         * gtk/gtkrange.c:
1544         * gtk/gtkspinbutton.c:
1545         * gtk/gtkstatusicon.c:
1546         * gtk/gtktext.c:
1547         * gtk/gtktextview.c:
1548         * gtk/gtktoolbar.c:
1549         * gtk/gtktoolbutton.c:
1550         * gtk/gtktoolitem.c:
1551         * gtk/gtktreeitem.c:
1552         * gtk/gtktreeview.c:
1553         * gtk/gtktreeviewcolumn.c:
1554         * gtk/gtkuimanager.c:
1555         * gtk/gtkviewport.c:
1556         * gtk/gtkwidget.c:
1557         * gtk/gtkwindow.c:
1558         ported to use GObject's g_object_ref_sink().
1559
1560         * gtk/gtkcolorsel.c:
1561         * gtk/gtkfilechooserdefault.c:
1562         * gtk/gtkaboutdialog.c:
1563         fixed compiler warnings.
1564
1565 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
1566
1567         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
1568         about gtk-color-scheme.
1569
1570 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
1571
1572         * configure.in (enable_explicit_deps): Fix typo when checking
1573         libtool config deplibs_check_method. Moreover, enable explicit
1574         deps if we get anything other than pass_all from libtool. (part of
1575         #318750)
1576
1577 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
1578
1579         * gtk/updateiconcache.c (write_csource): Don't create a big
1580         string, since Visual C++ doesn't like strings longer than 64k. 
1581         (#322238, Kazuki IWAMOTO
1582
1583         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
1584         Kazuki IWAMOTO)
1585
1586 2005-11-23  Michael Natterer  <mitch@imendio.com>
1587
1588         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
1589         windows on other screens (correctly remove all temporary
1590         references).
1591
1592 2005-11-23  Michael Natterer  <mitch@imendio.com>
1593
1594         Added symbolic themable colors. Patch is a merged version of
1595         proposals from Matthias and maemo-gtk. Fixes bug #114355.
1596
1597         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
1598
1599         * gtk/gtksettings.c: added property "color-scheme" which is a
1600         string defining colors like "foreground:black\nbackground:grey".
1601         Automatically provide a name->GdkColor hash table mapping for the
1602         color scheme.
1603
1604         * gtk/gtkrc.[ch]: added list of color hashes that works like the
1605         list of icon factories. Append the color scheme hash from
1606         GtkSettings if it exists. Extended gtkrc syntax to allow defining
1607         and referencing of logical colors. Also allow to modulate colors
1608         in gtkrc by using arbitrary expressions of mix(), shade(),
1609         lighter() and darker(). Added internal function
1610         _gtk_rc_style_get_color_hashes().
1611
1612         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
1613         Get the list from _gtk_rc_style_get_color_hashes(). Export
1614         internal function _gtk_style_shade() (used by above color
1615         expressions). Added public API gtk_style_lookup_color() which
1616         looks up a logical color by name.
1617
1618         * gtk/gtk.symbols: add gtk_style_lookup_color
1619
1620         * tests/testgtkrc: use symbolic colors for making
1621         the scrollbars red.
1622
1623 2005-11-22  Michael Natterer  <mitch@imendio.com>
1624
1625         Made button-press timeouts which work like key repeat timeouts
1626         configurable. Addresses bug #142582:
1627
1628         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
1629         "gtk-timeout-repeat" which defalt to 200/20 (ms).
1630
1631         Use the values from GtkSettings instead of hardcoding them
1632         (the repeat value is either taken as-is for fast repeat or
1633         multiplied by 5 for slow repeat). Changed all places to use these
1634         two standard initial/repeat timings:
1635
1636         * gtk/gtkcalendar.c (unchanged 200/20)
1637         * gtk/gtknotebook.c (unchanged 200/100)
1638         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
1639         * gtk/gtkrange.c (changed from 250/100 to 200/100)
1640         * gtk/gtkspinbutton.c (unchanged 200/20)
1641
1642 2005-11-21  Anders Carlsson  <andersca@imendio.com>
1643
1644         * configure.in:
1645         * gtk/Makefile.am:
1646         * gdk/Makefile.am:
1647         * gdk/quartz/*:
1648         Add quartz backend.
1649         
1650         * docs/tools/Makefile.am:
1651         Only build docshooter when the X11 backend is used.
1652         
1653         * gtk/gtkplug-stub.c:
1654         Include gtkplug.h here.
1655         
1656         * gtk/gtksocket-stub.c:
1657         Include gtksocket.h here.
1658         
1659 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
1660
1661         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
1662         g_type_class_add_private.
1663
1664         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
1665
1666         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
1667
1668         * gtk/gtk.symbols:
1669         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
1670         with getter and setter.  (#316482, Olexiy Avramchenko)
1671
1672         * tests/testcombo.c (main): Test gtk_combo_box_set_title
1673
1674         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
1675         pointed out by Michael Natterer.
1676
1677         Fix for bug #321542, Benedikt Meurer:
1678         
1679         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
1680         Emit notify::active.
1681         
1682         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
1683         g_signal_emit, not g_signal_emit_by_name.
1684
1685 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
1686
1687         Fix crashes in connection with pathbar scrolling (#321560,
1688         Bogdan Nicula)
1689         
1690         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
1691         Stop scrolling when desensitising slider buttons.
1692         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
1693         And use it here.  
1694
1695         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
1696         scrolling_down flag.
1697
1698 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
1699
1700         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
1701         (#321777, Jens Granseuer)
1702
1703         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
1704         sync callback for the visibility property.  (#321761,
1705         Philip Langdale)
1706
1707         Turn off input methods in invisible entries, since
1708         they are confusing.  (#317002, James Su)
1709         
1710         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
1711         methods if visibility changes.
1712         (popup_targets_received): Don't show the input method
1713         menu if the entry is invisible.  
1714
1715 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
1716
1717         * README.in: Add a note about range arrow sensitivity.
1718
1719         * perf/treeview.c: const correctness fixes
1720         found by Arjan van de Ven and gcc.
1721
1722 2005-11-16  Michael Natterer  <mitch@imendio.com>
1723
1724         * gtk/gtkimage.c (animation_timeout): call
1725         gtk_window_process_updates() so the animation keeps running even
1726         if the main loop is busy with sources that eat a lot of cpu with
1727         high priority. Fixes bug #321444.
1728
1729         (gtk_image_new_from_animation): document the fact that the
1730         animation will stop running if the main loop is busy with sources
1731         that have priorities higher than G_PRIORITY_DEFAULT.
1732
1733         * tests/testimage.c: added test case that shows an animation even
1734         though a cpu-eating idle function is running.
1735
1736 2005-11-16  Michael Natterer  <mitch@imendio.com>
1737
1738         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
1739         function which destroys the display's event source. Also removes
1740         the source from the global display_sources list and unrefs it.
1741
1742         * gdk/x11/gdkprivate-x11.h: declare the function.
1743
1744         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
1745         instead of half-destroying the source here.
1746
1747 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
1748
1749         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
1750         leak.  (#321032, Peter Zelezny)
1751
1752 2005-11-15  Michael Natterer  <mitch@imendio.com>
1753
1754         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
1755         display->xid_ht as late as possible (right before XCloseDisplay)
1756         because it still needs to be around when the display's screens are
1757         finalized. (#85715)
1758
1759 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
1760
1761         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
1762         leak result.  (#321441, Tommi Komulainen)
1763
1764 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
1765
1766         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
1767         Don't crash if there is no builtin icon.
1768
1769 2005-11-14  Michael Natterer  <mitch@imendio.com>
1770
1771         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
1772         removed redundant calls to g_object_notify().
1773
1774 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
1775
1776         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
1777         improvements.  (#321338)
1778
1779         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
1780         limit an inclusive boundary.  (#321299)
1781
1782 2005-11-12  Michael Natterer  <mitch@imendio.com>
1783
1784         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
1785         rebuilt if needed.
1786
1787 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
1788
1789         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
1790         theme's handling of toolbars, handleboxes, and menubars more in-line
1791         with Microsoft's IE style.
1792         * modules/engines/ms-windows/*.c: Indentation cleanups
1793         
1794 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
1795
1796         Make builtin icons work in gtk_window_set_icon_name() 
1797         (#321046, Maxim Udushlivy)
1798
1799         * gtk/gtkicontheme.c (insert_theme): Always insert the default
1800         theme.
1801         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
1802         from here.
1803         (theme_lookup_icon, find_builtin_icon): ...and not from here.
1804         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
1805         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
1806
1807 2005-11-12  Tor Lillqvist  <tml@novell.com>
1808
1809         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
1810         dotfiles, no such convention on Win32. Just hide files with the
1811         hidden attribute. (#314627)
1812
1813 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
1814
1815         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
1816         check whether the path is a folder.  It is useful to bookmark
1817         files as well (e.g. todo.txt), and this will also help
1818         performance.
1819         (shortcuts_add_bookmark_from_path): Likewise.
1820         (shortcuts_activate_iter): Change folders or select files, as
1821         appropriate.
1822
1823 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
1824
1825         * tests/autotestfilechooser.c (main): Use
1826         g_log_set_default_handler() instead of explicitly setting a
1827         handler for each domain.
1828
1829         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
1830         the base path of the volume if it is mounted.
1831
1832 2005-11-11  Michael Natterer  <mitch@imendio.com>
1833
1834         Added per-stepper API for GtkRange's stepper sensitivity as
1835         discussed in bug #321056:
1836
1837         * gtk/gtkenums.h: added GtkSensitivityType which can be
1838         { AUTO, ON, OFF }.
1839
1840         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
1841         and "upper-stepper-sensitivity" and public getters/setters for
1842         them. Changed stepper drawing to honor the new properties.
1843
1844         * gtk/gtk.symbols: added the new symbols.
1845
1846 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
1847
1848         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
1849         emit them when the popup is shown or hidden.  (#162531, Tommi
1850         Komulainen)
1851
1852         * tests/testcombo.c: Add an example of popuplating a combobox
1853         on click.
1854
1855         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
1856         erroneous semicolon.
1857
1858         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
1859         semicolon. 
1860
1861         Don't corrupt odd keymaps (#316638, Kean Johnston)
1862         
1863         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
1864         handle frobbing keymaps with odd numbers of syms/code.
1865         
1866         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
1867         frob the keymap.
1868
1869         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
1870         
1871         * gtk/gtkpathbar.[hc]: Add a child_path argument to
1872         the path_clicked signal.
1873         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
1874         child_path, if it is provided.
1875         * gtk/marshalers.list (path_bar_clicked): Add the necessary
1876         glue.
1877
1878         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
1879         Kjartan Maraas)
1880         
1881         * gtk/gtk.symbols: 
1882         * gtk/gtktreeview.h: 
1883         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
1884         (#163851, Richard Hult)
1885
1886 2005-11-10  Michael Natterer  <mitch@imendio.com>
1887
1888         Applied patch from maemo-gtk that addresses many issues wrt
1889         display migration and display closing (bug #85715).
1890
1891         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
1892         default display to NULL when it's closed. Instead set the most
1893         recently opened display as new default (if one exists).
1894
1895         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
1896         of this callback.
1897
1898         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
1899         exist before unrefing them.
1900
1901         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
1902         is closed, allow destruction of the root window.
1903
1904         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
1905         dispose(), free stuff that was leaked before.
1906
1907         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
1908         the xsettings_client still exists before destroying it.
1909
1910         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
1911         X resources.
1912
1913         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
1914         dispose() implementation.
1915
1916         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
1917         dispose() and check if it still exists before unrefing it. Set
1918         their pointers to NULL/None *after* upchaining in dispose(),
1919         because X11 implementations of members of the parent class still
1920         need them for their own destruction.
1921
1922         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
1923         was g_error()ing when finalizing a visual.
1924
1925         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
1926         get_clipboard_widget() because it would create the widget if it
1927         doesn't exist. Use g_object_get_data() directly instead.
1928
1929         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
1930         of this callback.
1931
1932 2005-11-10  Simos Xenitellis  <simos@gnome.org>
1933
1934         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
1935
1936 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
1937
1938         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
1939         to render its arrows insensitive when the adjustment is in
1940         its min or max position. this makes range arrow behaviour 
1941         consistent with spin button behaviour. (#321056)
1942
1943 2005-11-09  Tor Lillqvist  <tml@novell.com>
1944
1945         * gdk/gdkinternals.h
1946         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
1947         the GdkDebugFlag enum.
1948
1949         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
1950         this file instead of MISC. Now asking for MISC will give mainly
1951         window manipulation debugging output with the Win32 backend.
1952
1953 2005-11-09  Tor Lillqvist  <tml@novell.com>
1954
1955         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
1956
1957         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
1958         function which was used only in one place.
1959
1960         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
1961
1962         (gdk_window_set_geometry_hints): If we have identical minimum and
1963         maximum size hints, remove the resize and maximize
1964         decorations/functions. (#104514)
1965
1966         If we have a maximum size hint, remove the maximize
1967         decoration/function but ensure the resize decoration/function is
1968         available. Otherwise ensure both resize and maximize
1969         decorations/functions are there.
1970
1971         (set_or_clear_style_bits): Factored out common code from
1972         gdk_window_set_decorations() and gdk_window_set_functions(). 
1973
1974         Hack the window style setting once more: Only touch the window
1975         style bits corresponding to the GdkWMDecoration or GdkWMFunction
1976         parameter bitmasks. Hopefully this finally is the correct thing to
1977         do. We used to clear all other bits than those that were being
1978         set, or set all other bits than those that were being cleared.
1979
1980         Take into account that adding or removing decorations leaves the
1981         window's outer size unchanged, i.e., the client area's size and
1982         position change. This is apparently not what we want, so change
1983         also the window's (outer) position and size appropriately so that
1984         the client area's position and size stay constant.
1985
1986         gtk-demo's color selector dialog is now non-resizable like on X11
1987         (I tested with metacity in GNOME). Torn off menus are shrinkable
1988         vertically but have a maximum size, and are not maximizable or
1989         minimizable, like on X11.
1990
1991         (gdk_window_set_decorations, gdk_window_set_functions): Let
1992         set_or_clear_decorations() do most of the job.
1993
1994         * gdk/win32/gdkprivate-win32.h: Remove declaration of
1995         _gdk_win32_get_adjusted_client_rect().
1996
1997 2005-11-09  Tor Lillqvist  <tml@novell.com>
1998
1999         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
2000         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
2001         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
2002         type hint. Implement gdk_window_get_type_hint() by just returning
2003         the hint stored.
2004
2005 2005-11-09  Tor Lillqvist  <tml@novell.com>
2006
2007         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
2008         Remove code that has been permanently ifdeffed out for two years.
2009
2010 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
2011
2012         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
2013         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
2014
2015         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
2016         icons if they would make the request large enough to cause
2017         Xlib to loose the connection.  (#320909, Claudio Saavedra)
2018
2019 2005-11-08  Michael Natterer  <mitch@imendio.com>
2020
2021         * gdk/gdk.symbols
2022         * gdk/gdkwindow.h
2023         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
2024         extracted from maemo-gtk). Fixes bug #320872.
2025
2026 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
2027
2028         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
2029         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
2030
2031         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
2032         Don't grab focus when a slider button is pressed, instead, use
2033         a bit in the pathbar struct to determine whether to scroll up
2034         or down.  (#314486, Carlos Garnacho)
2035
2036         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
2037         Don't popup the completions if the focus has already been
2038         moved somewhere else.  (#319914, Christian Persch)
2039
2040         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
2041         Raise the drag_window after reconfiguring the 
2042         toolbar.  (#320803, Christian Persch)
2043
2044         * gtk/gtk.symbols: 
2045         * gtk/gtkfilechooserbutton.h: 
2046         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
2047         with setter and getter.  (#318945, Christian Persch)
2048         
2049 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
2050
2051         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
2052
2053 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
2054
2055         * configure.in: Adjust to the stock icon changes.
2056         
2057 2005-11-07  Tor Lillqvist  <tml@novell.com>
2058
2059         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
2060         Correct the calculation of maskstride. (#320152, Peter Zelezny)
2061         
2062 2005-11-06  Michael Natterer  <mitch@imendio.com>
2063
2064         * gtk/Makefile.am (icons): fixed rule to actually create the
2065         symlinks, erroring out if anything goes wrong.
2066
2067 2005-11-06  Tor Lillqvist  <tml@novell.com>
2068
2069         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
2070         target exists on Win32. First rename the target temporarily, then
2071         if the renaming of the source to target fails, restore the
2072         original name for the target.
2073
2074         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
2075
2076 2005-11-06  Tor Lillqvist  <tml@novell.com>
2077
2078         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
2079         like pixbuf_to_hbitmaps_normal().
2080         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
2081         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
2082         setting the G_WIN32_PRETEND_WIN9X environment variable.
2083         
2084 2005-11-06  Tor Lillqvist  <tml@novell.com>
2085
2086         Make icon masks work on Win98 (#320152, Peter Zelezny)
2087
2088         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
2089         parameter for the depth of the bitmap, so that this function can
2090         be used to create 1-bit bitmaps, too.
2091         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
2092         and initialize it properly.
2093
2094 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
2095
2096         Store builtin stock icons in an icon cache, instead of
2097         populating a hash table with pixbufs at startup, to save both
2098         memory and startup time.
2099
2100         * gtk/stock-icons/*: Reorganize the icons in a directory structure
2101         suitable for gtk-update-icon-cache, and rename them to match the
2102         stock ids.
2103
2104         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
2105         add _gtk_icon_cache_has_icon_in_directory().
2106
2107         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
2108         to store the contents of the icon cache in a C header.
2109
2110         * gtk/gtkbuiltincache.h: Generated private header which contains 
2111         the icon cache for the builtin icons.
2112
2113         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
2114         icons, and use that in addition to the hash table whenever
2115         builtin icons are searched.
2116
2117         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
2118         use it for static stock ids. 
2119         (get_default_icons): Don't add the builtin
2120         icons to the icon theme, just register the stock ids.
2121         (render_fallback_image): Take the fallback image out of the
2122         builtin icon cache.
2123         
2124         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
2125         the necessary machinery to rebuild gtkbuiltincache.h.
2126
2127 2005-11-04  Michael Natterer  <mitch@imendio.com>
2128
2129         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
2130         from maemo-gtk that changes the mtime check for rc files from
2131         '>' to '!=', otherwise theme changes go unnoticed when turning
2132         back the clock (Tommi Komulainen).
2133
2134 2005-11-04  Tor Lillqvist  <tml@novell.com>
2135
2136         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
2137         leak on Win32.
2138
2139 2005-11-03  Tor Lillqvist  <tml@novell.com>
2140
2141         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
2142         the Win32 backend, check that GdkDisplay* parameters are equal to
2143         _gdk_display instead of using the unnecessarily general
2144         GDK_IS_DISPLAY().
2145
2146         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
2147         color bitmap to have "color" in their name, for similarity with
2148         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
2149         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
2150         the mask bitmap's contents, ones for those pixels in the color
2151         bitmap where the alpha is zero, zero for other pixels. We used to
2152         use an uninitialized mask bitmap! This meant that icons and
2153         cursors created presumably worked more or less by accident.
2154         Totally blank icons with zero alpha everywhere (as used by
2155         gtktrayicon.c) definitely did not work as expected.
2156
2157         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
2158
2159         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
2160         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
2161         necessary and can be removed from CVS. It has never been mentioned
2162         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
2163         are used on Win32. One label widget is used (but never shown) as
2164         gtk_widget_render_icon() needs a widget.
2165
2166         Ifdefs used as necessary in several places. It might be cleaner to
2167         split out the backend-specific parts to separate files, or at
2168         least collect them into separate blocks in the file.
2169
2170         (wndproc): New function. Window procedure to monitor mouse events
2171         in the system tray icon. Call gtk_status_icon_button_press() as
2172         needed.
2173         (create_tray_observer): New function. Creates a hidden window that
2174         only serves as a tray icon message observer.
2175
2176         * tests/teststatusicon.c (icon_activated): Position the dialog
2177         with GTK_WIN_POS_CENTER.
2178         (do_quit): New function, hide and unref the GtkStatusIcon, and
2179         call gtk_main_quit().
2180         (popup_menu): Add a Quit menu item that calls do_quit().
2181         
2182 2005-11-02  Tor Lillqvist  <tml@novell.com>
2183
2184         * gdk/win32/gdkcolor-win32.c
2185         * gdk/win32/gdkscreen-win32.c
2186         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
2187         fixes. Remove superfluous test for GdkWindow* parameters being
2188         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
2189         GdkScreen and one GdkDisplay in the Win32 backend, use those
2190         variables instead of the getter functions. For GdkDisplay* and
2191         GdkScreen* parameters, check that they are equal to the
2192         corresponding singleton variables instead of the more general
2193         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
2194
2195 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
2196
2197         * gtk/gtktextview.c: Remove some g_return_if_fail() from
2198         static functions, replace some others by g_assert().
2199         
2200         * gtk/gtktextview.c (selection_motion_event_handler) 
2201         (gtk_text_view_start_selection_drag): Keep track of the original
2202         selection boundaries during a drag selection, in order to correctly
2203         decide when to extend or shrink the selection.  (#320167,
2204         reported by Arvind S N, patch by Paolo Borelli)
2205
2206         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
2207         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
2208         manual offset calculations by g_utf8_offset_to_pointer().
2209         (#320360, Paolo Borelli)
2210
2211 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
2212
2213         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
2214         nodes via the g_slice_*() API.
2215         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
2216
2217 2005-11-01  Tor Lillqvist  <tml@novell.com>
2218
2219         * gdk/win32/gdkprivate-win32.h
2220         * gdk/win32/gdkglobals-win32.c
2221         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
2222         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
2223         their declarations, definitions and assignments into a more
2224         logical and consistent order.
2225
2226         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
2227         CF_ prefix for the predefined clipboard format names. Put quotes
2228         around registered format names to distinguish them.
2229         
2230         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
2231         immediately with a warning if the property type is STRING, TEXT,
2232         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
2233         should never pretend to handle on Win32. Handle only UTF8_STRING
2234         here, other formats with delayed rendering. Use \uc1 instead of
2235         \uc0 when generating Rich Text Format for easier testability on
2236         XP, where WordPad misinterprets \uc0 encoded characters. Add more
2237         GDK_NOTE debugging output for Clipboard operations.
2238
2239         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
2240         (gdk_selection_convert): Don't pretent to handle STRING, just
2241         UTF8_STRING. Streamline error handling, don't unnecessarily have a
2242         GError which then isn't used for anything anyway if it gets set.
2243         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
2244         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
2245
2246         * config.h.win32.in: Sync with what configure produces.
2247
2248         * configure.in: Don't look for X_PACKAGES unless building for
2249         x11. (#313986, John Ehresman)
2250
2251 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
2252
2253         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
2254                         Wondered why there was no ku there before??
2255
2256 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
2257
2258         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
2259         window to the toplevels window group.  (#319912, Christian Persch)
2260
2261 2005-10-28  Kristian Rietveld  <kris@gtk.org>
2262
2263         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
2264         stupid thinko.
2265
2266 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
2267
2268         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
2269         drag cursors.  (#319200, Federico Mena Quintero)
2270
2271         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
2272         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
2273         Neumair)
2274
2275         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
2276         C99ism.  (#320000, Kazuki Iwamoto)
2277
2278         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
2279         stars.  (#319985, Bastien Nocera)
2280
2281         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
2282         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
2283
2284 2005-10-26  Michael Natterer  <mitch@imendio.com>
2285
2286         Fix bug #319974:
2287
2288         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
2289         make sure that setting any of pixbuf/stock-id/icon-name resets the
2290         others because they are mutually exclusive, and that unsetting any
2291         of them only resets the pixbuf and nothing else. Also added
2292         some missing g_object_notify().
2293
2294         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
2295         g_value_set_object().
2296
2297         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
2298         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
2299         g_object_notify ("pixbuf").
2300
2301 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
2302
2303         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
2304         careful about initializing cell_area.  (#319382, Tommi
2305         Komulainen)
2306
2307         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
2308         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
2309
2310         * demos/gtk-demo/clipboard.c (paste_received): Only set the
2311         text if it is not NULL.  (#319930, Thomas Klausner)
2312
2313         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
2314         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
2315
2316 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
2317
2318         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
2319         * gtk/gtkthemes.c (gtk_theme_engine_load): 
2320         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
2321         when dlopening modules.  (#319557, Laszlo Peter)
2322
2323 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
2324
2325         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
2326         segments when determining text direction.  (#319065, Tommi Komulainen)
2327
2328         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
2329         on duplicate destroy.  (#318953, Gustavo Carneiro)
2330
2331         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
2332         Point out that destroy-with-parent is a bad idea for the dialog
2333         passed to this function.  (#318943, Christian Persch)
2334
2335         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
2336         glib-mkenums.  (#318582, Damien Carbery)
2337
2338         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
2339         docs.  (#317682, Christian Neumair)
2340
2341         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
2342         seem to affect the placement of the data in the readonly 
2343         section, and causes problems with some compilers.  (#317844)
2344
2345 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
2346
2347         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
2348         Fix some issues with background drawing in RTL.  (#318781,
2349         Eric Cazeaux)
2350
2351         * tests/Makefile.am:
2352         * tests/testentrycompletion.c: Apply a patch by Christian
2353         Persch to add property editors.
2354
2355         * gtk/gtkstatusicon.c: Emit activate on single-click,
2356         not on double-click, change proposed by Milosz Derezynski.
2357
2358 2005-10-25  Kristian Rietveld  <kris@gtk.org>
2359
2360         Fixes #311955, reported by Markku Vire; and a lot more.
2361
2362         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
2363         Levels can now have invisible nodes cached, functions have been
2364         rewritten/refactored to take this into account; also the logic in
2365         some functions has been corrected.
2366         
2367         Each referenced node now references all visible children or a single
2368         invisible child, in order to be able to monitor all changes in the
2369         child model required for correct operation.
2370
2371         When a virtual root is set, all nodes on the virtual root level are
2372         referenced.
2373
2374         At last, a bunch of random bug fixes and comment updates.
2375
2376 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
2377
2378         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
2379         more docs.  (#319722, Paolo Borelli)
2380
2381         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
2382         initialization of screen_x11->xft_rgba more explicit.  (#319627,
2383         Bogdan Nicula)
2384
2385         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
2386         in a blurb.  (#319499, Francisco Javier F. Serrador)
2387
2388 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
2389
2390         Add settings to hide the input method and Unicode control character
2391         submenus in the context menus of GtkEntry and GtkTextView.  
2392         
2393         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
2394         
2395         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
2396
2397         * gtk/gtktextview.c (popup_targets_received): 
2398         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
2399
2400 2005-10-24  Kristian Rietveld  <kris@gtk.org>
2401
2402         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
2403         row-has-child-toggled when the level is not in the cache does not
2404         make sense.  (This bug probably crept in during the early stages
2405         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
2406         implementation yet),
2407         (gtk_tree_model_sort_real_unref_node): only get the child iter
2408         when we will actually also use it.
2409
2410 2005-10-22  Michael Natterer  <mitch@imendio.com>
2411
2412         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
2413         widget being realized, in addition to being visible, to avoid
2414         running into precondition check in gtk_tree_view_get_cell_area().
2415         (approved by Kris).
2416
2417 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
2418
2419         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
2420         Experimentally, scrollbar steppers can shrink to 8 pixels on 
2421         Win32. Reflect that in the theme.
2422         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
2423         there is a 1-pixel border between a scrollbar and its child
2424         in ScrolledWindows on Win32. Reflect that in the theme.
2425         
2426 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
2427
2428         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
2429         for the selection window.  (#318806, Alex Larsson)
2430
2431 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
2432
2433         Fixes bug #317999:
2434
2435         * tests/autotestfilechooser.c
2436         (test_button_folder_states_for_action): Test that we have either
2437         $cwd or the explicitly-set folder.
2438         (test_reload_sequence): Likewise.
2439
2440         * gtk/gtkfilechooserdefault.c
2441         (gtk_file_chooser_default_get_current_folder): If our reload_state
2442         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
2443
2444 2005-10-14  Tor Lillqvist  <tml@novell.com>
2445
2446         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
2447         It didn't really do anything useful, and was just confusing and
2448         incomplete. Comments claimed we don't do delayed rendering, but in
2449         fact we do, for images. (The delayed rendering code has other
2450         problems, though, see #168173.) The clipboard viewer code was
2451         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
2452         the message when necessary). It was just test code, it said so in
2453         a comment. Add something similar back later if necessary.
2454
2455         (_win32_on_clipboard_change,
2456         _gdk_win32_register_clipboard_notification): Remove.
2457
2458         (gdk_display_supports_selection_notification,
2459         gdk_display_request_selection_notification): Always just return
2460         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
2461
2462 2005-10-13  Tor Lillqvist  <tml@novell.com>
2463
2464         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
2465         Alt-Enter specially. It does not have any special meaning and
2466         should be passed on to the application. (#318378, Tim Evans)
2467
2468 2005-10-13  Tor Lillqvist  <tml@novell.com>
2469
2470         Set visual depth to 24 for 32 bits-per-pixel devices on
2471         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
2472         optimized composite_0888() function rather than the slower image
2473         dithering functions to draw pixbufs (#313993, John Ehresman)
2474
2475         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
2476         _gdk_windowing_get_bits_for_depth() to initialize
2477         GdkImage::bits_per_pixel.
2478         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
2479
2480         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
2481         _gdk_windowing_get_bits_for_depth() to initialize
2482         BITMAPINFOHEADER::biBitCount.
2483
2484         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
2485         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
2486         32.
2487
2488 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
2489
2490         * demos/gtk-demo/appwindow.c: (about_cb):
2491           use PACKAGE_VERSION,bump year (#318654)
2492
2493 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
2494
2495         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
2496         toggle here with the matching on toggle if it immediately follows. 
2497         This is a common case, and handling it here prevents quadratic blowup 
2498         in cleanup_line() below.  (#317125)
2499
2500         * gtk/gtktextsegment.h: 
2501         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
2502         the character counts into this function instead of computing them
2503         again.
2504
2505 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
2506
2507         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
2508         code.
2509         * gtk/gtkfilechooserdefault.c
2510         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
2511         when the shortcut already exists in the sidebar.  (#147521)
2512
2513 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
2514
2515         * tests/testcombo.c: Demonstrate how to use custom widgets in
2516         a GtkComboBox.  
2517
2518 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
2519
2520         Fixes bug #317999:
2521
2522         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
2523         the the result of gtk_file_chooser_get_folder() is NULL or
2524         non-NULL at the right times.  Log the tests.
2525         (test_button_folder_states): New test for the initial states of
2526         the current folder in GtkFileChooserButton.
2527         (main): Test that the number of warnings/errors/critical errors is
2528         zero.
2529
2530         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
2531         Clarify the documentation on when this can return NULL.
2532         (gtk_file_chooser_get_current_folder_uri): Likewise.
2533
2534         * gtk/gtkfilechooserbutton.c (struct
2535         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
2536         we use it to keep track of whether a folder has been set.
2537         (gtk_file_chooser_button_map):  Implement.  If no folder has been
2538         loaded before, we at least try to load $cwd here.
2539         (gtk_file_chooser_button_constructor): If the construct-time
2540         dialog already has a folder set, turn on our folder_has_been_set
2541         flag.
2542         (dialog_current_folder_changed_cb): Turn on our
2543         folder_has_been_set flag.
2544
2545 2005-10-07  Michael Natterer  <mitch@gimp.org>
2546
2547         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
2548         PROFILE_FILE_CHOOSER because they break compilation after the
2549         removal of <unistd.h>.
2550
2551 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
2552
2553         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
2554         by moving it out of the profiling ifdef.
2555
2556         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
2557         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
2558
2559         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
2560         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
2561         Kazuki Iwamoto)
2562
2563 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
2564                 
2565         * gtk/gtk.symbols:
2566         * gtk/gtktextbuffer.h:
2567         * gtk/gtktextbuffer.c: Add a readonly has-selection property
2568         with a getter.  (#318161, Paolo Borelli)
2569
2570 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
2571
2572         * README.in: Start collecting release notes for 2.10.
2573
2574         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
2575         leak fix, since the assertion failures were traced to 
2576         an xchat bug.  (#314696)
2577         
2578         * gtk/gtkstyle.c (gtk_style_detach):
2579         (gtk_style_attach):  Documentation improvements.
2580         (gtk_style_detach): Assert that the attach_count is > 0.
2581
2582 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
2583
2584         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
2585         shortcut position, not a ShortcutsIndex, to make the function more
2586         generic.
2587         (home_folder_handler): Pass the resolved index to
2588         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
2589         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
2590         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
2591         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
2592         make the respective key switch to the first, second, ..., tenth
2593         bookmark.
2594         (quick_bookmark_handler): Implement.
2595
2596 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
2597
2598         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
2599         Desktop; just use their real names on the file system for the
2600         user-visible names.
2601
2602         * gtk/gtkfilechooserdefault.c
2603         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
2604         binding signal, and bind it to M-d by default.
2605         (desktop_folder_handler): Implement the default handler.
2606         (home_folder_handler): Use a helper function.
2607         (switch_to_shortcut): New helper function.
2608         (shortcuts_append_home): Don't special-case the name of "Home";
2609         just use the folder name.
2610
2611 2005-10-04  Tor Lillqvist  <tml@novell.com>
2612
2613         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
2614         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
2615
2616 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
2617
2618         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
2619         from yesterday, since it leads to assertion failures.  (#317879,
2620         Sebastian Bacher)
2621
2622 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
2623
2624         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
2625         calendar_compute_days() after setting priv->week_start.
2626
2627 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
2628
2629         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
2630         removing it from the hash table.  (#314696, Benjamin Berg)
2631
2632 2005-10-01  Tor Lillqvist  <tml@novell.com>
2633
2634         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
2635         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
2636         is that the the desktop isn't visible because the session has been
2637         switched, the screen is locked, or a terminal server session
2638         disconnected, so no error message necessary. (#137796)
2639
2640         It is of course remotely possible that BitBlt() failing with
2641         ERROR_INVALID_HANDLE might also be caused by some other
2642         problem. We could strive for perfection and track whether the
2643         desktop is visible by using WTSRegisterSessionNotification() and
2644         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
2645         this issue, though. If we would track desktop visibility, we
2646         should then avoid even trying to update the display at all while
2647         the desktop isn't visible.
2648
2649 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
2650
2651         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
2652         to correct the calculations for the first week day. We may
2653         just have to remove this code if too many locales turn out 
2654         to have broken data. 
2655
2656         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
2657         some cases.  (#317611, Tommi Komulainen)
2658
2659         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
2660         Prevent overflow when storing size hints in an unsigned
2661         short variable. Tracked down by Ray Strode and Søren Sandmann.
2662
2663 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
2664
2665         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
2666         Paolo Borelli)
2667
2668         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
2669         grab shadowed.  (#317332)
2670
2671 2005-09-29  Tor Lillqvist  <tml@novell.com>
2672
2673         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
2674
2675 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
2676
2677         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
2678         if the unmap test fails.
2679         (test_reload_sequence): Use gtk_widget_show_now() instead of
2680         gtk_widget_show() for the dialog.
2681         Thanks to Tim Janik for noticing these.
2682
2683 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
2684
2685         * tests/testcellrenderertext.c: New file with a set of tests for
2686         GtkCellRendererText.  The idea is to run a text renderer through
2687         most of its interesting property values to see that it works
2688         correctly.
2689
2690         * tests/Makefile.am: Added testcellrenderertext.
2691
2692         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
2693         entry/exit of this function for profiling.
2694         (gtk_file_chooser_default_style_set): Mark the start/end of the
2695         calls to the parent class and the the signal emission for profiling.
2696
2697 2005-09-29  Tor Lillqvist  <tml@novell.com>
2698
2699         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
2700         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
2701         system codepage using g_win32_locale_filename_from_utf8().
2702         (#317457, Kazuki Iwamoto)
2703
2704 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
2705
2706         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
2707         here. (#317039, Paolo Borelli)
2708
2709         * gtk/gtktexttag.h: 
2710         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
2711         to make this function work as boxed copy function.  (#317455,
2712         Gustavo Carneiro)
2713
2714         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
2715         NULL.  (#316828, Tor Lillqvist)
2716
2717 2005-09-28  Tor Lillqvist  <tml@novell.com>
2718
2719         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
2720         Iwamoto)
2721
2722 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
2723
2724         Don't reload the current folder unnecessarily on ::map().
2725
2726         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
2727         the reloading state.
2728         (struct _GtkFileChooserDefault): Added a "reload_state" field.
2729
2730         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
2731         Initialize impl->reload_state.
2732         (gtk_file_chooser_default_map): Check the impl->reload_state; load
2733         a default folder if no folder has been set, or reload the current
2734         one only if we had been unmapped first.
2735         (gtk_file_chooser_default_update_current_folder): Set the
2736         reload_state to RELOAD_HAS_FOLDER.
2737         (gtk_file_chooser_default_unmap): Implement, and set the
2738         reload_state to RELOAD_WAS_UNMAPPED.
2739         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
2740         here; they'll get (re)loaded on ::map() anyway.
2741
2742         * gtk/gtkfilechooserwidget.c
2743         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
2744
2745         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
2746         a dialog; build it ourselves.
2747         (test_reload): New test to ensure that we don't load the default
2748         folder more than once, and that we reload it when
2749         unmapping/remapping.
2750         (get_impl_from_dialog): New utility function.
2751         (test_widgets_for_current_action): Use get_impl_from_dialog().
2752
2753 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
2754
2755         * gtk/gtkfilechooserdefault.c
2756         (gtk_file_chooser_default_constructor): Mark the entry/exit of
2757         this function for profiling.
2758         (check_icon_theme): Likewise.
2759         (change_icon_theme): Likewise.
2760         (settings_notify_cb): Likewise.
2761         (gtk_file_chooser_default_screen_changed): Likewise.
2762         (update_chooser_entry): If the selection is empty, clear the file
2763         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
2764         nothing will be selected when the user starts typeahead in the
2765         treeview, and we don't want to clear the file name entry in that
2766         case --- the user could be typing-ahead to look for a folder name.
2767         Fixes bug #308332, patch by Jürg Billeter.
2768
2769 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
2770
2771         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
2772         Pop below the entry if there's more free space below the entry
2773         than above.  (#316948, Tommi Komulainen)
2774
2775 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
2776
2777         Do not create the save mode-specific widgets in the open modes, so
2778         that we don't carry their baggage around.
2779
2780         * gtk/gtkfilechooserdefault.c
2781         (gtk_file_chooser_default_constructor): Don't create the
2782         save_widgets here.
2783         (save_widgets_create): Set the impl->save_widgets directly here,
2784         instead of passing the widgets back to the caller.  Also, pack
2785         them into the impl's box.
2786         (update_appearance): Create or destroy the save widgets as
2787         appropriate.  Set the action of the save_file_name_entry here.
2788         (shortcuts_add_current_folder): Set the active item in the
2789         save_folder_combo only if it exists.
2790         (gtk_file_chooser_default_set_property): Don't set the action of
2791         the save_file_name_entry here.
2792         (gtk_file_chooser_default_update_current_folder): Set the base
2793         folder of the save_file_name_entry only if the entry exists.
2794         (shortcuts_drag_data_received_cb): Cast the selection_data->data
2795         to (const char *) since that's what shortcuts_drop_uris() expects.
2796         (file_list_drag_data_received_cb): Likewise, for
2797         g_uri_list_extract_uris().
2798
2799 2005-09-26  Tor Lillqvist  <tml@novell.com>
2800
2801         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
2802         the shaped flag here, too. (#316871)
2803         (gdk_window_shape_combine_region): Currently unimplemented, so
2804         don't do anything to the shaped flag here.
2805
2806 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
2807
2808         Fix #316871, reported by Dan Winship:
2809         
2810         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
2811
2812         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
2813         (gdk_window_shape_combine_region): Set it here.
2814
2815         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
2816         remove the child area for shaped windows.
2817
2818 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
2819
2820         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
2821         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
2822
2823 2005-09-22  Michael Natterer  <mitch@imendio.com>
2824
2825         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
2826         consistent with GTK+ terminology:
2827
2828         * gtk/gtkcellrendererkeys.[ch]
2829         * tests/testkeys.c: removed...
2830
2831         * gtk/gtkcellrendereraccel.[ch]
2832         * tests/testaccel.c: ...and added.
2833
2834         * gtk/Makefile.am
2835         * gtk/gtk.h
2836         * gtk/gtk.symbols
2837         * tests/Makefile.am: changed accordingly.
2838
2839 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
2840
2841         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
2842         for the grab-broken-event signal, noticed by Damon Chaplin.
2843
2844 2005-09-21  Tor Lillqvist  <tml@novell.com>
2845
2846         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
2847         gdk_text_property_to_text_list_for_display,
2848         gdk_text_property_to_utf8_list_for_display,
2849         gdk_win32_selection_add_targets,
2850         _gdk_win32_selection_convert_to_dib): Free return value from
2851         gdk_atom_name().
2852         (gdk_text_property_to_text_list_for_display): Drop GError variable
2853         that isn't actually used after being set.
2854
2855 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
2856
2857         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
2858         documentation.
2859
2860 2005-09-20  Tor Lillqvist  <tml@novell.com>
2861
2862         * gdk/win32/gdkselection-win32.c
2863         (gdk_selection_owner_get_for_display): Do return the correct owner
2864         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
2865         a window GDK knows about). The reason to return NULL seems to have
2866         gone when in the fix for bug #163702 the artificial
2867         GDK_SELECTION_CLEAR event generation was removed from
2868         gdk_selection_send_notify_for_display(). Fixes bug #316552.
2869
2870 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
2871
2872         Avoid unnecessary XkbGetState() calls and XkbStateNotify
2873         events.  (#151555, Søren Sandmann)
2874
2875         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
2876         XkbSelectEventDetails() to select XkbStateNotify events
2877         for only the state we care about.
2878
2879         * gdk/x11/gdkprivate-x11.h:
2880         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
2881         the event into the function and update the keymap state from
2882         the state information contained in the event. Adjust all callers.
2883         
2884 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
2885
2886         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
2887         in multiple places to avoid segfaults if the index is out of range.  
2888         (#316422, Guillaume Cottenceau)
2889         (gtk_icon_view_set_drag_dest_item): 
2890         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
2891         #316424, Guillaume Cottenceau)
2892
2893 2005-09-18  Hans Breuer  <hans@breuer.org>
2894
2895         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
2896         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
2897
2898 2005-09-18  Hans Breuer  <hans@breuer.org>
2899
2900         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
2901         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
2902         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
2903         the icon and is blinking with teststatusicon. More to come ...
2904
2905 2005-09-18  Hans Breuer  <hans@breuer.org>
2906
2907         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
2908         cause gtkprogressbar.c has #include <config.h> conditionally; less
2909         noise from generated gtk.def
2910         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
2911         
2912         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
2913         For me it works as well as the *NIX implemenation, that is not at all.
2914
2915         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
2916
2917         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
2918         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
2919         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
2920         again - if compiled properly.
2921
2922         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
2923         already coming with Gtk+. Makes it compile on win32.
2924
2925 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
2926
2927         * README.cvs-commits: fixed some tiny typos
2928
2929 2005-09-16  Tor Lillqvist  <tml@novell.com>
2930
2931         * modules/engines/ms-windows/msw_style.c (draw_extension,
2932         draw_box_gap): Check whether the widget actually is a GtkNotebook
2933         before treating it as such. Drop some unneeded local variables,
2934         use parameter with same information instead. (#316412)
2935
2936 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
2937
2938         * tests/autotestfilechooser.c: Start a set of automated tests for
2939         the file chooser.  The only test in there right now doesn't pass
2940         yet.  It specifies the intended behavior of the first optimization
2941         of a series which I'll do on the file chooser (see
2942         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
2943         details of this optimization).
2944
2945         * tests/Makefile.am: Added autotestfilechooser.c.
2946
2947         * gtk/gtkfilechooserprivate.h (struct
2948         _GtkFileChooserDialogPrivate): Move all the file chooser's private
2949         structures to here, so that they can be accessed by
2950         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
2951         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
2952
2953         * gtk/gtkfilechooserdialog.c: See above.
2954
2955         * gtk/gtkfilechooserwidget.c: See above.
2956
2957         * gtk/gtkfilechooserdefault.c: See above.
2958
2959 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
2960
2961         * gtk/gtkwindow.c: 
2962         gtk_window_map_event(): new function to work around lost unmap requests.
2963         fixes bug #316180.
2964
2965 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
2966
2967         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
2968         an easy-to-find profiling marker when starting to create a file
2969         chooser.
2970         (browse_files_model_finished_loading_cb): Likewise, for when the
2971         chooser is finished loading.
2972
2973 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
2974
2975         * gtk/gtkcolorbutton.c: Check "color" argument in 
2976         gtk_color_button_set_color ()
2977
2978 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
2979
2980         * gtk/gtklabel.c (gtk_label_get_type): 
2981         * gtk/gtkbutton.c (gtk_button_get_type): 
2982         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
2983         using a mem chunk for window groups, buttons, labels.
2984
2985         * gtk/updateiconcache.c (foreach_remove_func): Fix
2986         a use-after-free bug.  (#316256, Alexander Nedotsukov)
2987
2988 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
2989
2990         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
2991
2992         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
2993         
2994 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
2995
2996         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
2997         Let GDK_Return pass through in some more cases.
2998
2999         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
3000         activating the entry. 
3001
3002         * gtk/gtkiconview.c (gtk_icon_view_class_init):
3003         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
3004         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
3005
3006         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
3007         (#316001, Guillaume Cottenceau)
3008
3009         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
3010         mistake in the docs.  (#315993, Guillaume Cottenceau)
3011
3012         * tests/testentrycompletion.c (create_simple_completion_model): Add
3013         some strings containing multibyte characters.
3014
3015         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
3016         Fix prefix insertion for multibyte characters.  (#316095,
3017         Tommi Komulainen)
3018
3019         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
3020         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
3021         return NULL if the widget is not realized.  (#316023,
3022         Guillaume Cottenceau)
3023
3024 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
3025
3026         * gdk/gdk.symbols: 
3027         * gdk/gdkproperty.h: 
3028         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
3029         New function to avoid pointless strdups when creating atoms
3030         from static strings.  
3031
3032         * gdk/x11/*.c:
3033         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
3034         appropriate.
3035
3036 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3037
3038         * gtk/gtkcellrendererkeys.h: 
3039         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
3040         and editing accelerators, a port of EggCellRendererKeys .
3041
3042         * gtk/gtk.symbols:
3043         * gtk/gtk.h:
3044         * gtk/Makefile.am: Add the keys cell renderer.
3045
3046         * tests/Makefile.am: 
3047         * tests/testkeys.c: Test GtkCellRendererKeys
3048
3049 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3050
3051         Make it possible to determine if a key event is for a
3052         modifier key:
3053         
3054         * gdk/x11/gdkprivate-x11.h: 
3055         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
3056         New function to determine if a keycode is mapped to a modifier.
3057         (get_xkb): Get the modmap.
3058
3059         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
3060         is_modifier bit by calling _gdk_keymap_key_is_modifier().
3061
3062         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
3063         bit.
3064
3065 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3066
3067         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
3068         unused variable, noticed by Kjartan Maraas.
3069
3070 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3071
3072         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
3073         Make drag reordering work properly for columns other than the
3074         first.  (#315054, Dan Winship)
3075         
3076         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
3077         invalid fontnames better. (#136926, Michael R. Walton)
3078         
3079         Stop cursor blinking in non-editable regions of a text view.
3080         (#311508, Torbjörn Andersson)
3081         
3082         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
3083         (cursor_blinks): Take editability into account when deciding
3084         whether the cursor blinks.
3085         (gtk_text_view_button_release_event): 
3086         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
3087
3088         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
3089         Use connect_after to connect to the focus_out event. This
3090         ensures that the entry has already stopped blinking by the time
3091         we emit the edited signal.  (#315229, Thomas Leonard)
3092
3093         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
3094
3095         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
3096         unsigned ints to -1.  (#315481, Kjartan Maraas)
3097
3098         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
3099         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
3100         (#314473, Stanislav Brabec)
3101
3102 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
3103
3104         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
3105         memory handling.  (#314975, Torsten Schoenfeld)
3106
3107         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
3108         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
3109         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
3110         * gtk/gtklabel.c (gtk_label_class_init): 
3111         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
3112         Stylistic improvements and clarifications for some blurbs. 
3113         (#315520, Clytie Siddall)
3114
3115 2005-09-09  Tor Lillqvist  <tml@novell.com>
3116
3117         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
3118         display name. There is only one GdkDisplay on Win32, and
3119         constructing the display name isn't entirely trivial, so cacheing
3120         is probably worth it. For instance GIMP calls this function a lot.
3121         (gdk_display_open): Call gdk_display_get_name() to prime the
3122         cached name.
3123         (gdk_display_get_n_screens, gdk_display_get_screen,
3124         gdk_display_get_default_screen): Verify parameter correctness like
3125         the X11 backend does.
3126
3127         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
3128         Return a freshly allocated string, as the API specifies. Fixes a
3129         heap corruption problem that caused random errors and crashes in
3130         GIMP, for instance.
3131
3132 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
3133
3134         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
3135         Make C-u commit and restart hex input if we are already in a
3136         hex sequence.
3137
3138 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
3139
3140         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
3141         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
3142         if they are mapped to the same modifier.
3143
3144         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
3145         to gtkstatusicon.c and gtktrayicon-x11.c
3146
3147         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
3148         default accel mod mask.
3149
3150         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
3151         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
3152         Don't use GDK_ALT_MASK.
3153
3154         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
3155
3156 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
3157
3158         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
3159         
3160         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
3161         modifiers.
3162
3163         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
3164         Mod2 - Mod5 and against Super, Hyper, Meta.
3165
3166         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
3167         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
3168         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
3169
3170         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
3171         modmap to maintain the information which X modifiers map to
3172         virtual modifiers.
3173         (get_xkb): Set up the modmap from the XKB tables.
3174         (update_keymaps): Set up the modmap from the information returned
3175         by XGetModifierMapping in the non-XKB case.
3176
3177         * gdk/x11/gdkprivate-x11.h: 
3178         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
3179         function to set the virtual modifiers in the state.
3180
3181         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
3182         _gdk_keymap_add_virtual_modifiers here.
3183
3184         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
3185         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
3186         for GDK_MOD1_MASK.
3187
3188 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
3189
3190         * gtk/gtkaction.c (connect_proxy): Set the label of a button
3191         if it has no child.  (#315253, John Finlay)
3192
3193 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
3194
3195         * gtkimcontextsimple.h: Add a modifiers_dropped bit
3196
3197 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
3198
3199         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
3200         on destroy to avoid problems when they are called on a destroyed
3201         widget.  (#315135, John Cupitt)
3202         
3203         * gtk/gtkentry.c (gtk_entry_class_init):
3204         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
3205         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
3206
3207         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
3208         code. Now we only steal a single key combination, Ctrl-Shift-U,
3209         instead of sixteen. 
3210         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
3211         by a sequence of hex digits entered with Ctrl-Shift still held.
3212         Releasing one of the modifiers or pressing space while the modifiers
3213         are still held commits the character. It is possible to erase
3214         digits using backspace.
3215         As an extension to the above, we also allow to start the sequence
3216         with Ctrl-Shift-U, then release the modifiers before typing any
3217         digits, and enter the digits without modifiers.
3218         (#82011, Owen Taylor)
3219         
3220 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
3221
3222         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
3223         we still need to deliver the destroy event.  (#314980, Chris Lahey)
3224
3225         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
3226         im context before committing \n or \t.
3227
3228 2005-09-02  Alexander Larsson  <alexl@redhat.com>
3229
3230         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
3231         (shortcuts_activate_volume):
3232         Handle base_path being null in the rest of the cases (#310270)
3233
3234 2005-09-02  Tor Lillqvist  <tml@novell.com>
3235
3236         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
3237         cursor position also in root window coordinates. Prune out
3238         superfluous WM_MOUSEMOVE events even earlier, based on root window
3239         coordinates. Windows sends WM_MOUSEMOVE messages after a new
3240         window has ben mapped below the cursor even if the mouse doesn't
3241         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
3242         confused at least gtk_menu_motion_notify(). (#314995)
3243
3244         * gtk/gtkintl.h: No need to include config.h here. It caused
3245         warnings about GTK_LOCALEDIR being redefined on Win32 when
3246         compiling files where gtkintl.h is included after gtkprivate.h
3247         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
3248
3249         * gtk/gtkplug.c: Include config.h.
3250
3251 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
3252
3253         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
3254         xdg_mime_get_mime_type_for_file() where possible, to avoid
3255         useless re-stating.  
3256         
3257         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
3258         typo.  (#314921, Guillaume Cottenceau)
3259
3260         * gdk/*.c: Intern some more strings.
3261         * gtk/gtkintl.h: 
3262         * gtk/*.c: Define an I_() macro and use it instead of the 
3263         bulky g_intern_static_string().
3264
3265 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
3266
3267         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
3268         instead of copying it.
3269
3270         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
3271
3272         * gtk/*.c: Also intern static strings passed to 
3273         g_object_set_data().
3274
3275         * gdk/Makefile.am: 
3276         * gtk/Makefile.am: Intern type names in code generated by 
3277         glib-mkenums, too.
3278
3279         * gtk/*.c: 
3280         * gdk/x11/*.c: 
3281         * gdk/*.c: Intern type names before registering the type to avoid 
3282         unnecessary copies.
3283
3284         * configure.in: Require GLib 2.9.0
3285
3286 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
3287
3288         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
3289         and add icon-size and icon-size-set properties.  (#314172)      
3290
3291         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
3292         groups across transient parents.  (#312918, Christian Persch)
3293
3294         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
3295         Guillaume Cottenceau)
3296
3297         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
3298         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
3299
3300 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
3301
3302         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
3303         make C-/ select all and C-\ unselect all.  (#309301,
3304         Kathy Fernandez)
3305
3306         * gtk/gtkimcontextsimple.c: Change the compose sequence for
3307         soft hyphen to be multi_key-minus-minus-space, and add
3308         compose sequences multi_key-minus-minus-period and 
3309         multi_key-minus-minus-minus for en dash and em dash.
3310         (#172653, Christian Lohmaier)
3311
3312         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
3313         code.  (#313946, Christian Persch)
3314
3315         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
3316         fix for the default value of the "ui" property.
3317
3318 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
3319
3320         * gtk/gtk.symbols: 
3321         * gtk/gtkselection.h:
3322         * gtk/gtkselection.c: Add functions which look for text, image
3323         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
3324
3325         * gtk/gtk.symbols: 
3326         * gtk/gtkselection.h:
3327         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
3328         Add a function to check wether targets include uri.  
3329         (#314092, Mark Wielaard)
3330         
3331         * gtk/gtk.symbols: 
3332         * gtk/gtkwindow.h: 
3333         * gtk/gtkwindow.c: Add a deletable property with getter
3334         and setter, to control the close button in the window 
3335         frame.  (#59718, Havoc Pennington)
3336
3337 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
3338
3339         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
3340         to the arrow keys for menu navigation.  (#162825, Carl Worth)
3341
3342         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
3343
3344         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
3345
3346         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
3347         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
3348         refer to nonexisting stock ids.
3349
3350         * gtk/gtktextview.c (popup_targets_received): 
3351         * gtk/gtkentry.c (popup_targets_received): Construct
3352         the "Select All" menuitem from stock.
3353
3354         * gtk/stock-icons/stock_select_all_{16,24}.png:
3355         * gtk/stock-icons/Makefile.am: 
3356         * gtk/gtkiconfactory.c:
3357         * gtk/gtkstock.h: 
3358         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
3359         Calum Benson)
3360
3361         * gtk/gtktrayicon.c: Add a pointer to the spec.
3362
3363         * gtk/gtkstatusicon-x11.c: Add docs.
3364
3365         * gtk/gtkstatusicon.h: Fix a typo.
3366
3367         Add a cross-platform "tray icon" API, by
3368         porting EggStatusIcon/EggTrayIcon (#105101)
3369         
3370         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
3371         displays an icon in a notification area.
3372
3373         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
3374         X11, using GtkTrayIcon.
3375
3376         * gtk/gtktrayicon.h: 
3377         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
3378         system tray specification, not public API.
3379
3380         * gtk/gtk.symbols: Add new exported functions.
3381
3382         * gtk/gtk.h: Include gtkstatusicon.h.
3383
3384         * gtk/Makefile.am: Add new files.
3385
3386         * tests/Makefile.am:
3387         * tests/teststatusicon.c: Test for GtkStatusIcon.
3388
3389 2005-08-29  Christopher Aillon  <caillon@redhat.com>
3390
3391         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
3392         and GTK_STOCK_DISCONNECT
3393         
3394 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
3395
3396         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
3397         Use XFixesChangeSaveSet if available.  (#314682)
3398
3399         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
3400         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
3401
3402 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
3403
3404         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
3405         accidentally leftover duplicate pixbuf creation.  (#314700,
3406         Kjartan Maraas)
3407
3408         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
3409         leak the cursor theme name.  (#314693, Kjartan Maraas)
3410
3411         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
3412         state.children in all cases.  (#313862, Kjartan Maraas)
3413
3414 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
3415
3416         * po/POTFILES.in, po-properties/POTFILES.in:
3417         Add gdk/gdkscreen.c
3418
3419 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
3420
3421         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
3422         value of the ui property. (#314532, Yong Wang)
3423
3424         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
3425         when G_MAXLONG is passed as length.  
3426
3427 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
3428
3429         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
3430         to avoid overloading --force.  (JP Rosevaar)
3431
3432 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
3433
3434         * configure.in: Bump version to 2.9.0
3435
3436         * gdk/gdk.symbols: 
3437         * gdk/gdkscreen.h: 
3438         * gdk/gdkscreen.c: Make the GdkScreen font options api
3439         public, and add properties GdkScreen::font-options and
3440         GdkScreen::resolution.  (#314004)
3441
3442         * gdk/gdkpango.c:
3443         * gtk/gtksettings.c:
3444         * gtk/gtkwidget.c: Adjust all callers.
3445         
3446         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
3447         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
3448         * gdk/gdkscreen.c: Include gdkintl.h.
3449
3450         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
3451         variable warning, pointed out by Colin Walters. (#314585)
3452
3453 2005-08-26  Tor Lillqvist  <tml@novell.com>
3454
3455         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
3456         printouts.
3457         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
3458
3459 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
3460
3461         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
3462         of week_start.  (#314473, JP Rosevaar)
3463
3464 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
3465
3466         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
3467         lock.  (#314533, Thomas Fitzsimmons)
3468
3469 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
3470
3471         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
3472         NULL gracefully.  (#314523, Ed Catmur)
3473
3474 2005-08-25  Owen Taylor  <otaylor@redhat.com>
3475
3476         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
3477         Handle theme == NULL.
3478
3479 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
3480
3481         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
3482         y offset into account when positioning the popup.  (#314470,
3483         Christian Persch)
3484
3485 2005-08-25  Owen Taylor  <otaylor@redhat.com>
3486
3487         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
3488         as instance_init, not base_init! (#314452, Fix from Frederic
3489         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
3490         rather than 1 for a negative flag value.
3491
3492 2005-08-24  Owen Taylor  <otaylor@redhat.com>
3493
3494         * gdk/gdkpango.c (draw_error_underline): Add a note about
3495         cut-and-paste between here and Pango.
3496
3497 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
3498
3499         * === Released 2.8.2 ===
3500
3501         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
3502         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
3503         Wielaard)
3504
3505         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
3506         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
3507         Sebastien Bacher)
3508         
3509         * NEWS: Updates
3510
3511         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
3512         and cursor settings get propagated down to the screen initially.
3513         Pointed out by Frederic Crozat.
3514
3515         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
3516         message if the screen is NULL. Noticed by Kjartan Maraas.
3517
3518 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
3519
3520         * Bump version
3521
3522         * === Released 2.8.1 ===
3523
3524         * NEWS: Updates
3525         
3526 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
3527
3528         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
3529         against lazy filterers which return values other than TRUE or
3530         FALSE from their visible func.  (#314335)
3531
3532 2005-08-23  Owen Taylor  <otaylor@redhat.com>
3533
3534         Fix for #314004, reported by Michael Reinsch:
3535
3536         * gdk/gdk.symbols:
3537         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
3538         Add gdk_screen_get/set_resolution_libgtk_only()
3539
3540         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
3541         the options for the screen on the newly created context.
3542
3543         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
3544         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
3545         the font options on the screen.
3546
3547         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
3548         the font options from the screen and set them on the context.
3549
3550 2005-08-23  Kristian Rietveld  <kris@gtk.org>
3551
3552         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
3553         bother inserting new rows in a level with a zero refcount and
3554         immediately free the level. (Fixes #312350, reported by Markku Vire).
3555
3556 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
3557
3558         * gtk/updateiconcache.c: Complain when there is no index.theme file
3559         in the specified directory, unless --force is used. Also add an
3560         --index-only option to create caches without image data.
3561
3562         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
3563         C99ism.  (#314262, Robert Jeff Mitchell)
3564         
3565 2005-08-22  Manish Singh  <yosh@gimp.org>
3566
3567         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
3568
3569         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
3570
3571 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
3572
3573         * gtk/gtkwindow.c (gtk_window_client_event): 
3574         * gtk/gtkicontheme.c (ensure_valid_themes) 
3575         (_gtk_icon_theme_check_reload): Implement a clientmessage based
3576         scheme for makeing sure that all GTK+ applications notice if an
3577         icon theme has been updated. This should prevent multiple versions
3578         of an icon theme cache to be mapped in memory at the same time,
3579         which can cause excessive memory consumption.  (#313156, Chris 
3580         Lahey)
3581
3582 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
3583
3584         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
3585         regarding icon theme changes.
3586
3587         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
3588         pixbufs which are backed by the mmapped memory of an icon cache,
3589         increase the refcount of the icon cache, so that the memory is not
3590         munmapped away underneath the pixbuf upon icon theme changes.  
3591         (#314170, Kjartan Maraas)
3592
3593         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
3594         to link against Xext.  (#314062)
3595
3596         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
3597         overruns.  (#314081, Hans Breuer)
3598
3599 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
3600
3601         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
3602         returned layout must not be modified.
3603
3604 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
3605
3606         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
3607         scroll_to_path if the model changes.
3608
3609         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
3610         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
3611         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
3612         we're realized, #312798
3613         (gtk_icon_view_set_model): clear scroll_to_path if the model
3614         changes.
3615
3616 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
3617
3618         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
3619         (gtk_range_adjustment_value_changed):  Don't queue a draw
3620         if the layout has not changed.  (#313991, Benjamin Berg)
3621
3622 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
3623
3624         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
3625         Benoit Carpentier)
3626
3627         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
3628         Fix a typo. 
3629
3630         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
3631         (model_add_special, model_add_special, model_add_volumes):
3632         Handle pixbuf being NULL without warnings. Also, don't
3633         leak pixbuf references when the icon theme is changed.
3634
3635         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
3636         the user data on destroyed windows, since at best
3637         it can be a stale pointer.  (#313953, Robin Green)      
3638
3639 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
3640
3641         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
3642         (#313900, Sebastien Bacher)
3643
3644         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
3645         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
3646
3647         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
3648         (xdnd_read_actions, get_client_window_at_coords_recurse): 
3649         Free data returned from XGetWindowProperty. 
3650
3651         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
3652         Free data returned from XGetWindowProperty.  (313867, Kjartan
3653         Maraas)
3654         
3655         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
3656         children in all cases.  (#313862, Kjartan Maraas)
3657
3658         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
3659         in the per-directory hash, even if they come from the icon cache. 
3660         We tried to avoid that before, but as a result leaked icon data
3661         structs.  (#313852, Kjartan Maraas)
3662
3663 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
3664
3665         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
3666         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
3667
3668 2005-08-15  Owen Taylor  <otaylor@redhat.com>
3669
3670         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
3671         files for x11/xext. (Jonas Bonn)
3672
3673 2005-08-15  Tor Lillqvist  <tml@novell.com>
3674
3675         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
3676         inside GTK_NOTE.
3677
3678 2005-08-15  Owen Taylor  <otaylor@redhat.com>
3679
3680         * configure.in: Fix have_base_pc / have_base_x_pc typo.
3681
3682         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
3683         (#313417, James Andrewartha)
3684
3685         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
3686         FcNameConstant(). (More of #313417)
3687
3688 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
3689
3690         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
3691         modal dialogs, make sure to inherit the window group from 
3692         the parent, since we don't inherit window groups across
3693         transient parents currently.  (#312918, Christian Persch)
3694
3695         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
3696         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
3697
3698         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
3699         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
3700         gracefully.  (#312796, Jonathan Blandford)
3701
3702         * tests/testtoolbar.c: Add some more tests for menu placement.
3703
3704         * gtk/gtkmenutoolbutton.c (menu_position_func): 
3705         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
3706         of toolbutton menus and of the overflow menu.  (#312937, 
3707         #153870, Christian Persch, Paolo Borelli)
3708
3709 2005-08-15  Tor Lillqvist  <tml@novell.com>
3710
3711         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
3712         the nonportable <libgen.h> and dirname().
3713
3714 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
3715
3716         * gtk/gtksizegroup.c: Use object data to mark widgets and
3717         groups as visited, so that we avoid constant extra list
3718         traversals. Also allocate quarks in class_init.  (#311618,
3719         Michael Natterer)
3720
3721         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
3722         download location for the hicolor icon theme. (#313475, Olexiy 
3723         Avramchenko)
3724
3725         * gtk/gtkicontheme.c: Remove debug spew. 
3726
3727 2005-08-15  Owen Taylor  <otaylor@redhat.com>
3728
3729         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
3730         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
3731         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
3732         Handle pixmap == NULL when checking for a colormap.
3733         (Allin Cottrell).
3734
3735 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
3736
3737         * gtk/updateiconcache.c: Store only one copy of the pixel data
3738         for symlinked icons. To achieve this, maintain a hashtable 
3739         mapping pathnames to pixel data, and share the pixel data for
3740         all symlinks resolving to the same pathname. When writing out
3741         the image data, write out the pixel data only the first time
3742         it is met, and store the offset pointing to the first copy
3743         for use in all later cases.
3744         This reduces the size of the Bluecurve icon cache from 40
3745         to 13MB. (#312972)
3746