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