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