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