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