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