]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
More updates
[~andy/gtk] / ChangeLog.pre-2-10
1 2006-05-01  Matthias Clasen  <mclasen@localhost.localdomain>
2
3         * NEWS: Updates
4
5 2006-05-02  Kristian Rietveld  <kris@imendio.com>
6
7         * configure.in: Up ABI version to 2.10.0 (by Matthias' request).
8
9 2006-05-01  Kristian Rietveld  <kris@imendio.com>
10
11         Merge of the GTK+ asynchronous file chooser branch.  Please see
12         the kris-asynch-branch for more detailed ChangeLog entries.
13
14         * configure.in: increase binary version to 2.9.0.
15
16         * gtk/gtk.symbols:
17         * gtk/gtkfilechooser.c:
18         * gtk/gtkfilechooserbutton.c:
19         * gtk/gtkfilechooserdefault.c:
20         * gtk/gtkfilechooserdialog.c:
21         * gtk/gtkfilechooserembed.c:
22         * gtk/gtkfilechooserembed.h:
23         * gtk/gtkfilechooserentry.c:
24         * gtk/gtkfilechooserentry.h:
25         * gtk/gtkfilechooserprivate.h:
26         * gtk/gtkfilesystem.c:
27         * gtk/gtkfilesystem.h:
28         * gtk/gtkfilesystemmodel.c:
29         * gtk/gtkfilesystemmodel.h:
30         * gtk/gtkfilesystemunix.c:
31         * gtk/gtkpathbar.c:
32         * gtk/gtkpathbar.h:
33         Merge from kris-async-branch.
34
35 2006-05-01  Matthias Clasen  <mclasen@dhcp83-48.boston.redhat.com>
36
37         * NEWS: Updates
38
39 2006-04-30  Matthias Clasen  <mclasen@localhost.localdomain>
40
41         * gtk/gtktreemodel.c (gtk_tree_model_base_init): Document
42         GtkTreeModel signals.
43
44 2006-04-19  Michael Emmel  <mike.emmel@gmail.com>
45
46         * gdk/directfb/gdkdrawable-directfb.c: removed all subtracting one on
47         clipping
48
49 2006-04-30  Kristian Rietveld  <kris@imendio.com>
50
51         Fix for #340200, spotted by Torsten Schoenfeld.
52
53         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): fix up logic
54         calculating the level indentation,
55         (gtk_tree_view_start_editing): remove code calculating the
56         level indentation, since _get_cell_area() takes care of this for us.
57
58 2006-04-30  Matthias Clasen  <mclasen@localhost.localdomain>
59
60         Fix problems with setting symbolic colors from rc files.
61         (#338345, Benjamin Berg)
62         
63         * gtk/gtkrc.c (gtk_rc_settings_changed, gtk_rc_font_name_changed) 
64         (gtk_rc_color_hash_changed, gtk_rc_reparse_all_for_settings): Don't
65         freeze notification for settings changes while parsing; instead
66         manually avoid recursion, and update the color hashes.
67
68 2006-04-30  Matthias Clasen  <mclasen@localhost.localdomain>
69
70         * gtk/gtksettings.c (gtk_settings_class_init): Change the default
71         value of the gtk-color-scheme setting to "".
72
73         * gtk/gtkprinteroption.c: 
74         * gtk/gtkprinteroptionwidget.c: 
75         * gtk/gtkprintunixdialog.c: Improve the print dialog layout,
76         mark some more strings for translation.  (#340139, Christian Persch)
77
78         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Fix the definition
79         of the ::size-changed signal, and improve its documentation.
80         (#340112, Christian Persch)
81
82 2006-04-29  Behdad Esfahbod  <behdad@gnome.org>
83
84         * gtk/gtkwidget.c (gtk_widget_create_pango_layout)
85         (gtk_widget_get/create_pango_context): Change colormap to font map in
86         docs. (#340093)
87
88 2006-04-29  Matthias Clasen  <mclasen@redhat.com>
89
90         * gtk/gtk.symbols: 
91         * gtk/gtkstatusicon.h: 
92         * gtk/gtkstatusicon.c (gtk_status_icon_position_menu): Add a menu
93         position function for use with popups on status icons.  (#334573, 
94         Christian Persch)
95
96         * gtk/gtkwidget.c (gtk_widget_is_composited): Fix a C99ism.  (#340055,
97         Kazuki Iwamoto)
98
99 2006-04-28  Matthias Clasen  <mclasen@redhat.com>
100
101         * gtk/gtkcellrenderertext.c (get_size): Use _static variants when
102         copying and merging short-lived Pango layouts. (#340033, Morten Welinder)
103
104 2006-04-28  Behdad Esfahbod  <behdad@gnome.org>
105
106         * gtk/gtkwidget.c (gtk_widget_create_pango_layout): Fix typo in
107         docs. (#340063)
108
109 2006-04-28  Matthias Clasen  <mclasen@redhat.com>
110
111         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): Don't force
112         the standard DND icon if the user has a custom DND source.  
113         (#339522, Joe Wreschnig)
114
115 2006-04-28  Michael Natterer  <mitch@imendio.com>
116
117         * gtk/gtktextbuffer.c (create_clipboard_contents_buffer): keep a
118         reference to the source buffer while the clipboard contents buffer
119         exists, because it is needed for serializing the contents buffer.
120         Makes copying from the contents buffer possible even after the
121         resp. text view is destroyed (for example when there is a
122         clipboard manager running on app exit) (bug #339195).
123
124 2006-04-27  Behdad Esfahbod  <behdad@gnome.org>
125
126         * gdk/gdkpango.c (gdk_pango_renderer_draw_glyphs): Cast to double
127         before dividing by PANGO_SCALE. (#334582)
128
129 2006-04-27  Matthias Clasen  <mclasen@redhat.com>
130
131         * gtk/gtkentry.c (popup_position_func): Improve positioning
132         of the menu when popped up by keynav.  (#334987, Christian
133         Persch)
134
135         * gtk/gtkdnd.c (gtk_drag_set_icon_window): Handle the case
136         of being called after the drag is cancelled.  (#339224, 
137         Benjamin Otte)
138
139         * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
140         Use XFixes only if it is available.  (#339839, Marko Anastasov)
141
142 2006-04-26  Federico Mena Quintero  <federico@novell.com>
143
144         * gtk/gtkdialog.c (gtk_dialog_close): Don't make this conditional
145         on having a GTK_RESPONSE_CANCEL button -> end the idiocy.  Fixes
146         bug #101293.
147
148 2006-04-26  Kristian Rietveld  <kris@imendio.com>
149
150         * gtk/gtktreeview.c (node_is_visible): new function,
151         (validate_visible_area): when a node is validated, only queue a
152         redraw for that node, not for the entire widget (a redraw for the
153         entire widget is only needed when the sizes change, and
154         _queue_resize() will take care of that),
155         (do_validate_rows): do not queue a redraw, redraws are only needed
156         for changes in the visible area and validate_visible_area() takes
157         care of that,
158         (gtk_tree_view_row_inserted): for fixed height mode, only queue
159         a resize and redraw if the node is visible, else no redraw is needed.
160
161 2006-04-26  Kristian Rietveld  <kris@imendio.com>
162
163         If this new "row-ending-details" property is turned on, more
164         detailed "details" will be passed to the theme engine for drawing
165         the background, drop indicator and focus rectangle.  Requirement is
166         that the theme engine supports these details. (#333760).
167
168         * gtk/gtktreeview.c (gtk_tree_view_class_init): add row-ending-details
169         style property,
170         (gtk_tree_view_bin_expose): pass more detailed detail to
171         gtk_paint_flat_box() if the property is turned on,
172         (gtk_tree_view_bin_expose): likewise for the drop indicator,
173         (gtk_tree_view_bin_expose): likewise for the focus rectangle.
174
175 2006-04-26  Kristian Rietveld  <kris@imendio.com>
176
177         New "show-expanders" and "level-indentation" properties, which can
178         be used for customizing the tree view.  (For example to do
179         grouping as demonstrated in the test application).
180         Discussion in #80869.
181
182         * gtk/gtktreeprivate.h: add level_indentation field.
183
184         * gtk/gtktreeview.c (gtk_tree_view_class_init),
185         (gtk_tree_view_init), (gtk_tree_view_set_property),
186         (gtk_tree_view_get_property): add the properties to the object,
187         (gtk_tree_view_button_press), (do_prelight),
188         (gtk_tree_view_bin_expose), (validate_row),
189         (gtk_tree_view_discover_dirty_iter), (gtk_tree_view_get_cell_area),
190         (gtk_tree_view_create_row_drag_icon): take the new properties
191         into account,
192         (gtk_tree_view_start_editing): fix cell placement code.
193
194         * tests/testgrouping.c: new test application, showing how to
195         implement grouping.
196
197         * tests/Makefile.am: updated.
198
199 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
200
201         * gdk/gdk.symbols: Add gdk_screen_is_composited
202
203         * gtk/gtkprintjob.c (gtk_print_job_set_source_file): Add docs.
204
205         * gtk/gtkprintoperation.c: Add docs.
206
207 Tue Apr 25 10:25:28 2006  Søren Sandmann  <sandmann@redhat.com>
208
209         * tests/testgtk.c (create_alpha_window): Create 'composited' label.
210
211         * tests/testgtk.c (on_composited_changed): New function, change
212         the label to say whether the screen is composited or not.
213
214         * gtk/gtkwindow.c (gtk_window_on_composited_changed): When
215         composited status change, invalidate the window and propagate the signal;.
216
217         * gtk/gtkwindow.c (gtk_window_map): Set the appropriate type hint
218         if reset_type_hint is TRUE.
219
220         * gtk/gtkwindow.c (gtk_window_set_type_hint): If hint is one of
221         the old hints, store a shadow copy in the public window->type_hint
222         bitfield, otherwise set this field to normal. Set the private
223         field to the type hint.
224
225         * gtk/gtkwindow.c (gtk_window_init): Initialize priv->type_hint. 
226
227         * gtk/gtkwindow.c (struct _GtkWindowPrivate): New field
228         "reset_type_hint" indicating whether the type hint needs to be
229         reset. New field type_hint containing a GdkWindowTypeHint.
230
231         * gtk/gtkwidget.c (propagate_composited_changed): New function to
232         propagate changes in composited status.
233         (gtk_widget_class_init): Add composited_changed signal.
234         
235         * gtk/gtkwidget.h (struct _GtkWidgetClass): New signal composited-changed.
236
237         * gtk/gtkwidget.c (gtk_widget_is_composited): New function.
238
239         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Set transient for.
240
241         * gtk/gtktooltips.c (gtk_tooltips_force_window): Set the type hint
242
243         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Compute whether
244         the item belongs to a menubar. Set the type_hint appropriately
245         depending on the outcome.
246
247         * gtk/gtkmenu.c (gtk_menu_position): Set the default type hint here.
248
249         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): connect to hierarchy
250         changed on the attach widget.
251
252         * gtk/gtkmenu.c (attach_widget_hierarchy_changed): New function to
253         set the transient_for property for menus.
254
255         * gtk/gtkdnd.c (set_icon_stock_pixbuf): Set the appropriate type hint.
256
257         * gtk/gtkcombo.c (gtk_combo_popup_list): Make the popup window
258         transient for the toplevel.
259
260         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Set
261         transient-for, for the popup window.
262
263         * gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): Support for
264         new window types.
265
266         * gdk/x11/gdkwindow-x11.c (gdk_window_set_type_hint): Add support
267         for new window types.
268
269         * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
270         New function called whenever the compositing manager comes and goes.
271
272         * gdk/x11/gdkscreen-x11.c (gdk_screen_is_composited): New function.
273
274         * gdk/x11/gdkscreen-x11.c
275         (_gdk_x11_screen_request_cm_notification, make_cm_atom,
276         check_is_composited): New functions
277
278         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
279         _gdk_x11_screen_process_owner_change when an
280         XFixesSelectionNotifyEvent is received.
281
282         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Call
283         _gdk_x11_screen_request_cm_notification() on all screens.
284
285         * gdk/quartz/gdkscreen-quartz.c (gdk_screen_is_composited): Dummy
286         implementation. 
287
288         * gdk/gdkscreen.c (gdk_screen_class_init): New signal,
289         'composited-changed'.
290
291         * gdk/gdkwindow.h: Add new EWMH window types.
292
293         * gdk/win32/gdkscreen-win32.c (gdk_screen_is_composited) 
294
295 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
296         
297         * modules/printbackends/cups/gtkprintbackendcups.c: 
298         Add some more translatable PPD option names.
299
300 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
301
302         * po/POTFILES.in:
303         * po-properties/POTFILES.in: Updates
304
305         * gtk/paper_names.c: Declare PaperInfo here.
306
307         * gtk/gen-paper-names.c: Add a prefix to gettext msgids.
308
309         * gtk/paper_names_offsets.c: Regenerated.
310         
311         * gtk/gtkpapersize.c (gtk_paper_size_get_display_name):
312         Use g_strip_context() to strip the prefix.
313
314 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
315         
316         * gtk/gtkfontbutton.c: Small doc fixes.
317
318         * gtk/gtkprintunixdialog.h: 
319         * gtk/gtkpagesetupunixdialog.h: Fix includes (#338665)
320
321         * gtk/gtkprintsettings.h (GtkPageRange): Declare in a way grokked by gtk-doc.
322
323         * gdk/gdkregion-generic.c: Documentation fixes.
324
325         * gdk/directfb/gdkmain-directfb.c: Make the comment not look like
326         a doc comment.
327
328         * gtk/gtkprintunixdialog.c: Add docs.
329
330         * gtk/gtkstatusicon.c (gtk_status_icon_get_visible): Typo fix.
331
332 2006-04-24  Alexander Larsson  <alexl@redhat.com>
333
334         * gtk/gtkprinter.c:
335         Don't ref the backend since the backend owns the printer.
336
337 2006-04-24  Alexander Larsson  <alexl@redhat.com>
338
339         * gtk/gtkpagesetupunixdialog.c (update_combo_sensitivity_from_printers):
340         Remove spew.
341
342 2006-04-24  Alexander Larsson  <alexl@redhat.com>
343
344         * gtk/gtkprintunixdialog.c (create_page_setup_page):
345         Even/Odd Pages -> Even/Odd Sheets
346
347 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
348
349         * gtk/gtk.symbols:
350         * gtk/gtkprintoperation.c (gtk_print_operation_run_async): Refactor the
351         gtk_print_operation_run() code and add an _async version.
352
353         * gtk/gtkprintoperation-private.h:
354         * gtk/gtkprintoperation-unix.c
355         (_gtk_print_operation_platform_backend_run_dialog_async)
356         (gtk_print_run_page_setup_dialog_async): Variants of the run functions
357         which don't call gtk_dialog_run(), but only show the dialog and return,
358         and handle the response in a signal handler.
359
360         * gtk/gtkprintoperation-win32.c (gtk_print_run_page_setup_dialog_async) 
361         (_gtk_print_operation_platform_backend_run_dialog_async): Implement these 
362         by calling the sync versions.
363
364         * gtk/gtkprintoperation-unix.c: Cleanups.
365
366         * gtk/gtkpagesetupunixdialog.c (gtk_page_setup_unix_dialog_get_page_setup):
367         Remove redundant code.
368
369         * gtk/Makefile.am: Install gtkprintjob.h as Unix-specific print API.
370
371         * gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog): 
372         Return a copy of the original page setup if the dialog was canceled.
373
374 2006-04-24  Alexander Larsson  <alexl@redhat.com>
375
376         * gtk/gtkprintjob.h:
377         Declare GtkPrintJob.
378         
379         * gtk/gtkprintunixdialog.c: (gtk_print_unix_dialog_get_settings):
380         Change g_return_if_fail to g_return_val_if_fail.
381
382 2006-04-24  Alexander Larsson  <alexl@redhat.com>
383
384         * configure.in:
385         Check for cairo-pdf.h.
386         Check for cairo-ps.h on non-win32.
387
388 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
389
390         * gtk/gtkclipboard.h: 
391         * gtk/gtkprinter.c: 
392         * gtk/gtkprintsettings.h: 
393         * gtk/gtkprintsettings.c: Match parameter names with the headers.
394
395         * gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog): 
396         Add docs.
397
398         * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize): 
399         * gtk/gtkstatusicon.c (gtk_status_icon_get_storage_type): 
400         * gtk/gtktreeview.c (gtk_tree_view_set_search_position_func): 
401         * gtk/gtktreeview.c (gtk_tree_view_get_headers_clickable): 
402         * gtk/gtkcellrendererspin.c (gtk_cell_renderer_spin_new): 
403         * gtk/gtkmenu.c (gtk_menu_get_for_attach_widget): Fix the docs.
404
405         * gtk/gtkprinter.h: Don't declare GtkPrintJob here.
406         * gtk/gtkprinter-private.h: Instead include gtkprintjob.h.
407
408 2006-04-23  Matthias Clasen  <mclasen@redhat.com>
409
410         * gtk/gtkprinter-private.h: 
411         * gtk/gtkprintbackend.h: 
412         * gtk/gtkprinter.[hc]: 
413         * gtk/gtkprintjob.[hc]: Use g types, add documentation, and some
414         stylistic fixups.
415
416         * gtk/gtkaboutdialog.c (activate_url): Avoid a compiler warning.
417
418         * gtk/gtkpapersize.[hc]: Use g types, add documentation.
419
420         * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_get_settings): 
421         Use g_return_val_if_fail in non-void functions.
422
423         * gtk/Makefile.am: Add gtkprintutils.[hc]
424
425         * gtk/gtkprintutils.[hc]: New files, move the unit conversion
426         functions here.
427
428         * gtk/gtkpagesetupunixdialog.c: 
429         * gtk/gtkprintsettings.c: 
430         * gtk/gtkpagesetup.c: 
431         * gtk/gtkpapersize.c: Replace all static copies of to_mm/from_mm
432         by the copies in gtkprintutils.c.
433
434         * gtk/gtkpagesetup.[hc]: Use g types, add documentation.
435
436         * gtk/gtkprintsettings.c: More documentation
437
438 2006-04-22  Tor Lillqvist  <tml@novell.com>
439
440         * gtk/Makefile.am (gtk_private_h_sources): Small workaround for
441         weird bug in some versions of Automake at least on Windows.
442
443 2006-04-21  Alexander Larsson  <alexl@redhat.com>
444
445         Merge the gtk-printing branch.
446         For more detailed ChangeLog entries, see the branch.
447         
448         * .cvsignore:
449         * Makefile.am:
450         * configure.in:
451         * docs/tools/widgets.c:
452         * gtk+-unix-print-2.0.pc.in:
453         * gtk/Makefile.am:
454         * gtk/gen-paper-names.c:
455         * gtk/gtk.h:
456         * gtk/gtk.symbols:
457         * gtk/gtkenums.h:
458         * gtk/gtkiconfactory.c:
459         * gtk/gtkmarshalers.list:
460         * gtk/gtkpagesetup.[ch]:
461         * gtk/gtkpagesetupunixdialog.[ch]:
462         * gtk/gtkpapersize.[ch]:
463         * gtk/gtkprint-win32.[ch]:
464         * gtk/gtkprintbackend.[ch]:
465         * gtk/gtkprintcontext.[ch]:
466         * gtk/gtkprinter-private.h:
467         * gtk/gtkprinter.[ch]:
468         * gtk/gtkprinteroption.[ch]:
469         * gtk/gtkprinteroptionset.[ch]:
470         * gtk/gtkprinteroptionwidget.[ch]:
471         * gtk/gtkprintjob.[ch]:
472         * gtk/gtkprintoperation-private.h:
473         * gtk/gtkprintoperation-unix.c:
474         * gtk/gtkprintoperation-win32.c:
475         * gtk/gtkprintoperation.[ch]:
476         * gtk/gtkprintsettings.[ch]:
477         * gtk/gtkprintunixdialog.[ch]:
478         * gtk/paper_names.c:
479         * gtk/paper_names_offsets.c:
480         Platform independent printing API and implementations
481         for unix and windows.
482
483         * gtk/gtkstock.h:
484         * gtk/stock-icons/24/gtk-orientation-landscape.png:
485         * gtk/stock-icons/24/gtk-orientation-portrait.png:
486         * gtk/stock-icons/24/gtk-orientation-reverse-landscape.png:
487         Add stock icons for page orientation.
488         
489         * modules/Makefile.am:
490         * modules/printbackends/Makefile.am:
491         * modules/printbackends/cups/Makefile.am:
492         * modules/printbackends/cups/gtkcupsutils.[ch]:
493         * modules/printbackends/cups/gtkprintbackendcups.[ch]:
494         * modules/printbackends/cups/gtkprintercups.[ch]:
495
496         Cups printing backend for unix.
497         
498         * modules/printbackends/lpr/Makefile.am:
499         * modules/printbackends/lpr/gtkprintbackendlpr.[ch]:
500         lpr printing backend for unix.
501         
502         * modules/printbackends/pdf/Makefile.am:
503         * modules/printbackends/pdf/gtkprintbackendpdf.[ch]:
504         print-to-pdf printing backend for unix.
505         
506         * tests/.cvsignore:
507         * tests/Makefile.am:
508         * tests/print-editor.c:
509         Test application for printing.
510
511         * gdk/gdk.symbols:
512         * gdk/win32/gdkevents-win32.c:
513         * gdk/win32/gdkwin32.h:
514         Add gdk_win32_set_modal_dialog_libgtk_only so that we can pump the
515         mainloop while displaying a win32 common dialog.
516
517         * gdk/directfb/Makefile.am:
518         Whitespace cleanup.
519         
520 2006-04-20  Paolo Borelli  <pborelli@katamail.com>
521
522         * gtk/gtkcombobox.c: plug small leak (#339132)
523         * tests/testcombo.c: ditto
524
525 2006-04-19  Michael Emmel  <mike.emmel@gmail.com>
526
527         * gdk/directfb/gdkdrawable-directfb.c: fixed off by one error in
528         clip patch from (#330824)
529
530 2006-04-19  Murray Cumming  <murrayc@murrayc.com>
531
532         * gtk/gtkfilechooserbutton.c: _GtkFileChooserButtonPrivate:
533         Added has_title flag so we can remember whether a title has 
534         been set.
535         (gtk_file_chooser_button_constructor): If no title has been
536         set then set it to the default title. This means that the 
537         default title will be used if the dialog was instantiated with 
538         g_object_new(), without using the gtk_file_chooser_button_new() 
539         convenience function. This helps language bindings.
540         (gtk_file_chooser_button_set_property): Set has_title when 
541         setting the title.
542
543 2006-04-19  Tor Lillqvist  <tml@novell.com>
544
545         * gdk/win32/gdkkeys-win32.c (handle_special): Map VK_NUMPAD[0-9]
546         to GDK_KP_[0-9]. (#337562)
547
548 2006-04-18  Matthias Clasen  <mclasen@redhat.com>
549
550         * gtk/gtkrc.c: Allocate pixmap_path dynamically, rather than
551         using a fixed array of size 128.
552
553         * gtk/gtkiconcache.c: Apply a patch by Paolo Borelli to factor
554         out a strip_suffix() function and save some memory.  (#338307)
555
556 2006-04-18  Carlos Garnacho  <carlosg@gnome.org>
557
558         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): removed wrong
559         condition check that caused tab labels not to be drawn under certain
560         circumstances. Bug #338734.
561
562 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
563
564         * configure.in: Remove obsolete entry for no_NO
565         * po-properties/no.po: And the translation
566         * po/no.po: And the translation.
567
568 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
569
570         * demos/gtk-demo/colorsel.c (expose_event_callback): Small formatting
571         fix.
572
573 2006-04-17  Christian Persch  <chpe@cvs.gnome.org>
574
575         * gtk/gtkdnd.c: (gtk_drag_dest_set), (gtk_drag_dest_set_proxy): Fix
576         UMR in gtk_drag_dest_motion. Bug #338725.
577
578 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
579
580         * gtk/gtksettings.c (gtk_settings_class_init): 
581         * gtk/gtkentry.c (gtk_entry_class_init): Fix typos
582         in property blurbs.  (#338772, Clytie Siddall)
583
584 2006-04-16  Richard Hult  <richard@imendio.com>
585
586         * gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_draw_drawable): Add check 
587         for source being a window.
588
589         * gdk/quartz/gdkwindow-quartz.c: (_gdk_windowing_window_get_pointer):
590         Don't assert on window not being the root window.
591
592 2006-04-16  Richard Hult  <richard@imendio.com>
593
594         * gdk/quartz/gdkdrawable-quartz.c: Remove leading cairo/ in include.
595
596 2006-04-16  Matthias Clasen <mclasen@redhat.com>
597
598         * gdk/x11/gdkwindow-x11.c (set_initial_hints ): Avoid a
599         possible array overrun.  (Coverity)
600
601         * gtk/gtkcalendar.c (gtk_calendar_key_press): Avoid a
602         possible array overrun.  (Coverity)
603
604         * gtk/gtktextbuffer.c (_gtk_text_buffer_remove_all_tags):
605         Avoid a NULL dereference.  (Coverity)
606
607 2006-04-15  Matthias Clasen <mclasen@redhat.com>
608
609         * gtk/gtkrecentmanager.c: Make filename_warning() static,
610         and use caseless matching when looking for file:/.  
611         (#336772, Morten Welinder)
612
613 2006-04-13  Anders Carlsson  <andersca@imendio.com>
614
615         * gdk/quartz/gdkevents-quartz.c:
616         (synthesize_enter_event):
617         (synthesize_leave_event):
618         (synthesize_crossing_events):
619         Take grabs into account.
620
621         (find_window_for_event):
622         Only return grabbed window when owner_events is FALSE.
623
624 2006-04-13  Matthias Clasen  <mclasen@redhat.com>
625
626         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Reorganize slightly
627         to avoid a possible NULL dereference.  (Coverity)
628
629 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
630
631         * gtk/gtktreeview.c (gtk_tree_view_get_arrow_xrange): Don't
632         allow passing NULL for x1 or x2, adjust callers.
633
634         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_get_neighbor_sizes): 
635         Reorganize to avoid a possible NULL pointer dereference.  (Coverity)
636
637         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Reorganize
638         to avoid a possible NULL dereference.  (Coverity)
639
640         * gdk/x11/gdkimage-x11.c (gdk_image_new_bitmap): Handle
641         closed displays correctly.  (Coverity)
642
643         * contrib/gdk-pixbuf-xlib/Makefile.am:
644         * modules/engines/pixbuf/Makefile.am
645         * gdk-pixbuf/Makefile.am: Build fixes for Cygwin.  (#338262)
646
647         * gdk/x11/gdkselection-x11.c (make_list): Make this work
648         for list == NULL.  (Coverity)
649
650         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_entries_for_keycode): 
651         Rearrange the code a bit.
652
653         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange): 
654         Handle _gtk_text_line_get_data() returning NULL in all
655         cases.  (Coverity)
656
657         * gtk/gtkuimanager.c: Make find_menu_position and
658         find_toolbar_position void.  (#338100)
659
660 2006-04-12  Anders Carlsson  <andersca@imendio.com>
661
662         * gdk/quartz/gdkkeys-quartz.c:
663         Handle page up and page down.
664
665 2006-04-12  Anders Carlsson  <andersca@imendio.com>
666
667         * gdk/quartz/gdkdrawable-quartz.c:
668         (_gdk_quartz_drawable_release_context):
669         Don't flush if we're inside a begin_paint/end_paint pair.
670         
671         * gdk/quartz/gdkwindow-quartz.c:
672         (gdk_window_impl_quartz_end_paint):
673         Free clip region here.
674
675 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
676
677         * gtk/gtkuimanager.c (start_element_handler): Don't pass
678         a negative value as string length to get_child_node().  (Coverity)
679
680         * gtk/gtkicontheme.c (insert_theme): Handle dirs == NULL
681         gracefully.  (Coverity)
682
683         * gtk/gtknotebook.c (gtk_notebook_remove): Silently do nothing
684         if the widget is not a child.  (Coverity)
685
686 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
687
688         * gdk/x11/gdkkeys-x11.c (get_xkb): Return early in error
689         cases.  (Coverity)
690
691         * gtk/gtktextview.c (selection_motion_event_handler): Remove
692         some unused variables.
693
694         * gtk/gtktreeview.c ((gtk_tree_view_search_position_func): Apply
695         a patch from David Trowbridge to improve the positioning of the
696         search popup.  (#338047)
697
698 2006-04-11  Emmanuele Bassi  <ebassi@cvs.gnome.org>
699
700         * gtk/gtkrecentmanager.c (gtk_recent_manager_init)
701         (gtk_recent_manager_new): Remove the unneeded setting of the
702         storage file inside the constructor. (Murray Cumming)
703         (build_recent_items_list): Reset the dirty bit when done rebuilding
704         the list from the storage file.
705
706 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
707
708         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): Silence
709         compiler warnings.
710
711         * gtk/gtkinputdialog.c (gtk_input_dialog_set_mapping_mode): Don't
712         dereference info before checking it for NULL.  (Coverity)
713
714 2006-04-11  Anders Carlsson  <andersca@mac.imendio.com>
715
716         * gdk/quartz/GdkQuartzView.c:
717         (-[GdkQuartzView drawRect:]):
718         * gdk/quartz/gdkdrawable-quartz.c:
719         (gdk_quartz_ref_cairo_surface):
720         (_gdk_quartz_drawable_get_context):
721         (_gdk_quartz_drawable_release_context):
722         * gdk/quartz/gdkwindow-quartz.c:
723         (gdk_window_impl_quartz_finalize):
724         (gdk_window_impl_quartz_class_init):
725         (gdk_window_impl_quartz_begin_paint_region):
726         (gdk_window_impl_quartz_end_paint):
727         (gdk_window_impl_quartz_invalidate_maybe_recurse):
728         (gdk_window_impl_quartz_process_updates):
729         (gdk_window_impl_quartz_paintable_init):
730         (_gdk_window_impl_quartz_get_type):
731         * gdk/quartz/gdkwindow-quartz.h:
732         Have GdkWindowImplQuartz implement GdkPaintable.
733
734 2006-04-10  Michael Natterer  <mitch@imendio.com>
735
736         * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize):
737         pasted rich text should not be affected by tags that are active at
738         the insertion point. Therefore, remove and remember all active
739         tags, and re-apply them left and right of the inserted text after
740         pasting. Fixes bug #337653.
741
742 2006-04-11  Anders Carlsson  <andersca@imendio.com>
743
744         * gdk/gdkinternals.h:
745         * gdk/gdkwindow.c:
746         (_gdk_paintable_get_type):
747         (gdk_window_begin_paint_region):
748         (gdk_window_end_paint):
749         (gdk_window_process_updates):
750         (gdk_window_invalidate_maybe_recurse):
751         Add new GdkPaintable interface which implementation objects can 
752         implement in order to override gdk painting functions.
753
754 2006-04-10 Vladimer Sichinava  <vlsichinava@gmail.com>
755
756         * configure.in: Added "ka" (Georgian) to ALL_LINGUAS
757
758 2006-04-07  Hans Breuer  <hans@breuer.org>
759
760         * gtk/makefile.msc.in tests/makefile.msc : updated
761
762 2006-04-06  Tor Lillqvist  <tml@novell.com>
763
764         Correct the appearance of non-square icons and cursors: pad them
765         to square so that Windows won't stretch them.
766
767         * gdk/win32/gdkcursor-win32.c (create_alpha_bitmap)
768         (create_color_bitmap): Always create square bitmaps, take only
769         side length as argument.
770         (pixbuf_to_hbitmaps_alpha_winxp, pixbuf_to_hbitmaps_normal):
771         Corresponding changes.
772
773 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
774
775         * gtk/gtktextview.c (text_window_realize): Lower the window, to
776         prevent late-constructed text windows from covering child 
777         widgets.  (#336796, Yevgen Muntyan)
778
779         * gtk/gtkmain.c (gtk_grab_add, gtk_grab_remove, gtk_grab_notify) 
780         (gtk_grab_notify_foreach): Rework the code which emits ::grab-notify
781         signals to ensure that we emit enough signals. Also optimize the
782         code to not do unnecessary tree walking.
783
784         * gtk/gtkwidget.c (gtk_widget_class_init): Document ::grab-notify.
785
786 2006-04-05  Paolo Borelli  <pborelli@katamail.com>
787
788         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle the case of \r
789         and \n split across lines. Bug #337022.
790         * tests/testtextbuffer.c: add unit test.
791
792 Tue Apr  4 12:25:36 2006  Søren Sandmann  <sandmann@redhat.com>
793
794         * gdk/x11/gdkimage-x11.c (gdk_image_class_init): Add "_private" to
795         make it build.
796
797 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
798
799         * gdk/gdkdisplay.c: 
800         * gdk/gdkdisplaymanager.c:
801         * gdk/gdkdraw.c:
802         * gdk/gdkkeys.c:
803         * gdk/gdkpixmap.c:
804         * gdk/gdkscreen.c:
805         * gdk/gdkwindow.c:
806         * gdk/x11/gdkcolor-x11.c:
807         * gdk/x11/gdkdisplay-x11.c:
808         * gdk/x11/gdkdnd-x11.c:
809         * gdk/x11/gdkdrawable-x11.c:
810         * gdk/x11/gdkgc-x11.c:
811         * gdk/x11/gdkimage-x11.c:
812         * gdk/x11/gdkinput.c:
813         * gdk/x11/gdkpixmap-x11.c:
814         * gdk/x11/gdkscreen-x11.c:
815         * gdk/x11/gdkwindow-x11.c: Use G_DEFINE_TYPE.
816
817         * gdk/x11/gdkcolor-x11.c: 
818         * gdk/x11/gdkdnd-x11.c:
819         * gdk/x11/gdkimage-x11.c: Use instance private data.
820
821 2006-04-03  Matthias Clasen  <mclasen@redhat.com>
822
823         * gdk/gdkrgb.c: Get rid of a duplicate copy of the visual names.
824
825         * gtk/gtkmain.c: Make gtk_args const.
826
827         * gtk/gtkicontheme.c (pixbuf_supports_svg): Save one static.
828
829         * gtk/gtkrecentchooser.c (gtk_recent_chooser_error_quark):
830         * gtk/gtkrecentmanager.c (gtk_recent_manager_error_quark):
831         * gtk/gtkfilechooser.c (gtk_file_chooser_error_quark):
832         * gtk/gtkfilesystem.c (gtk_file_system_error_quark):
833         * gtk/gtkicontheme.c (gtk_icon_theme_error_quark): No point
834         in making the error path fast by caching quarks. 
835
836         * gtk/gtkfilesel.c (no_stat_dirs): Avoid relocation.
837
838         * gdk/gdk.c: Here too.
839
840         * gdk/gdkinternals.h: 
841         * gdk/x11/gdkmain-x11.c: 
842         * gdk/win32/gdkmain-win32.c: 
843         * gdk/directfb/gdkdisplay-directfb.c: 
844         * gdk/quartz/gdkmain-quartz.c: Make _gdk_windowing_args const.
845
846         * gdk/win32/gdkpixmap-win32.c: Include gdkscreen.h  (#337032,
847          Kazuki IWAMOTO)
848
849         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Mention
850         that %NULL is allowed.  (#336937, Christian Neumair)
851
852         * gtk/gtkmain.c: Get rid of an unnecessary static variable.
853
854         * gtk/gtktextlayout.c: Fix a warning.
855         
856         * gtk/gtktextsegment.h: 
857         * gtk/gtktextsegment.c: 
858         * gtk/gtktextchild.c:
859         * gtk/gtktextbtree.c:
860         * gtk/gtktextmark.c: 
861         * gtk/gtktexttypes.h: Make the segment class pointers const.
862
863         * gtk/gtktextbufferserialize.c: Make parser struct const.
864         
865         * gtk/gtkuimanager.c: Make parser struct const.
866
867         * gtk/gtklinkbutton.c: Make the default colors const.
868
869         * gtk/gtkuimanager.c: Avoid relocations. 
870
871         * gtk/gtkxembed.c (_gtk_xembed_message_name): Reduce size of static
872         buffer.
873
874         * gtk/gtktext.c (gtk_text_key_press): Avoid relocations.
875
876         * gtk/gtkrc.c (gtk_rc_add_initial_default_files) 
877         (gtk_rc_add_default_file): Allocate the gtk_rc_default_files array
878         dynamically.
879
880 2006-04-02  Matthias Clasen  <mclasen@redhat.com>
881
882         * gtk/gtkrc.c: Avoid relocations for the array of symbol names. 
883
884         * gtk/gtkruler.c: Remove unused strings from the ruler_metrics 
885         structs, to avoid relocations.  (#336917, Stephane Chauveau)
886
887 2006-04-02  Emmanuele Bassi  <ebassi@cvs.gnome.org>
888
889         * gtk/gtkrecentmanager.c (gtk_recent_manager_set_filename): Build
890         the items list after setting the storage file.
891
892         * gtk/gtkrecentmanager.c (display_closed): Use the right string
893         for unsetting the default manager object from the screen.       
894
895 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
896
897         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Oops. (#336784)
898
899 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
900
901         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Use a GString
902         instead of static buffer to reduce .bss by 8kb. (#336784)
903
904 2006-04-01  Dom Lachowicz <cinamod@hotmail.com>
905
906         * modules/engines/ms-windows/msw_style.c (draw_hline): Emulate WinXP's
907         drawing of menu separators
908         
909 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
910
911         * gtk/gtkrecentmanager.c: Convert filenames to UTF-8 before printing
912         them out in warning messages. (#336770, Morten Welinder)
913
914 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
915
916         * gtk/gtkrecentmanager.c (gtk_recent_info_last_application): Update
917         last_stamp inside the look. (#336771, Morten Welinder)
918
919 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
920
921         * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_get_property):
922         Add missing break. (#336769, Morten Welinder)
923
924 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
925
926         * gtk/gtkfilesystem.c (gtk_file_system_get_bookmark_label):
927         * gtk/gtklinkbutton.c (gtk_link_button_new_with_label): Return NULL
928         instead of FALSE in g_return_val_if_fail in a pointer-returning
929         function. (#336764, Morten Welinder)
930
931 2006-04-01  Gora Mohanty  <gmohanty@cvs.gnome.org>
932
933         * configure.in: Added 'or' (Oriya) to ALL_LINGUAS.
934
935 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
936
937         * gtk/gtkrecentmanager.c (gtk_recent_info_get_age): Don't
938         assert that the age is positive.  (#336773, Morten Welinder)
939
940 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
941
942         * gtk/gtkicontheme.c (load_icon_data): Don't leak the keyfile 
943         parser in the error case. 
944         
945         * gtk/gtkicontheme.c (load_icon_data, free_unthemed_icon) 
946         (icon_data_free, load_themes):
947         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon_data): Use the slice
948         allocator for GtkIconData and UnthemedIcon structs.
949
950 2006-03-30  Behdad Esfahbod  <behdad@gnome.org>
951
952         * gtk/gtkcalendar.c: Fix translation comments for localizable
953         digit formats. (fixes bug #336650)
954
955 2006-03-30  Matthias Clasen  <mclasen@redhat.com>
956
957         * gtk/gtkrecentmanager.h (struct _GtkRecentData): Fix the doc
958         comment format.
959
960         * gtk/gtkrecentmanager.c (gtk_recent_manager_has_item) 
961         (gtk_recent_manager_purge_items, gtk_recent_manager_lookup_item) 
962         (gtk_recent_manager_get_limit, gtk_recent_manager_add_full) 
963         (gtk_recent_manager_get_items, gtk_recent_manager_remove_item): 
964
965         * gtk/gtkrecentfilter.c (gtk_recent_filter_add_age): 
966         * gtk/gtkrecentchooser.c (gtk_recent_chooser_set_show_numbers) 
967         (gtk_recent_chooser_set_sort_func): 
968         * gtk/gtknotebook.h (gtk_notebook_set_tab_detachable): Sync
969         parameter names between .c and .h files to help gtk-doc.
970
971         * gdk/gdkregion-generic.c (gdk_region_get_clipbox): Reword
972         docs to help gtk-doc.
973
974         * docs/tools/widgets.c (get_all_widgets): Add 
975         GtkRecentChooserDialog.
976
977         * gtk/gtkdnd.c (gtk_drag_get_icon): Make sure to get an
978         icon window when constructing the fallback_icon. This
979         fixes a crash when dragging icons between screens in
980         nautilus.  (#325751, Hylke van der Schaaf)
981
982 2006-03-30  Michael Emmel  <mike.emmel@gmail.com>
983
984         * gdk/directfb/gdkpixmap-directfb.c implement
985             (gdk_pixmap_foreign_new_for_screen)
986
987 2006-03-30  Emmanuele Bassi  <ebassi@cvs.gnome.org>
988
989         Add documentation for the GtkLinkButton (#336592)
990
991         * docs/reference/tmpl/gtklinkbutton.sgml: Add description
992         of the GtkLinkButton.
993
994         * docs/reference/gtk/migrating-GtkLinkButton.sgml: Guidelines
995         for migrating code from GnomeHRef to the GtkLinkButton.
996
997         * docs/reference/gtk/gtk-docs.sgml:
998         * docs/reference/gtk/Makefile.am: Build glue for the porting
999         guide.
1000
1001 2006-03-29  Matthias Clasen <mclasen@redhat.com>
1002
1003         * gdk/gdk.symbols:
1004         * gdk/gdkpixmap.h:
1005         * gdk/win32/gdkpixmap-win32.c:
1006         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new_for_screen):
1007         New function to allow wrapping a native pixmap without
1008         a server roundtrip.  (#334954, David Baron) 
1009
1010         * gtk/gtk.symbols:
1011         * gtk/gtkrecent*.c: Fix some symbol aliasing glitches.
1012
1013 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
1014
1015         * gtk/gtkrecentchoosermenu.c: Make gtkalias.h the last included file.
1016
1017 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
1018
1019         * gtk/gtk.symbols: Fix a typo that broke aliasing rules.
1020
1021 2006-03-29  Richard Hult  <richard@imendio.com>
1022
1023         * gdk/quartz/gdkproperty-quartz.c: Add missing CLIPBOARD atom.
1024
1025 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
1026
1027         * docs/reference/gtk/migrating-GtkRecentChooser.sgml: Add a migration
1028         guide for porting to the new GtkRecent stuff from the old EggRecent
1029         code.
1030
1031         * docs/reference/gtk/tmpl/gtkrecentchooser.sgml:
1032         * docs/reference/gtk/tmpl/gtkrecentchooserdialog.sgml:
1033         * docs/reference/gtk/tmpl/gtkrecentchoosermenu.sgml:
1034         * docs/reference/gtk/tmpl/gtkrecentchooserwidget.sgml:
1035         * docs/reference/gtk/tmpl/gtkrecentfilter.sgml:
1036         * docs/reference/gtk/tmpl/gtkrecentmanager.sgml: Add template files
1037         for the reference guide.
1038
1039         * docs/reference/gtk/gtk-docs.sgml:
1040         * docs/reference/gtk/gtk-sections.txt:
1041         * docs/reference/gtk/Makefile.am: Build glue for add GtkRecent to
1042         the reference guide.
1043
1044 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
1045
1046         * tests/Makefile.am:
1047         * tests/testrecentchooser.c: Add a test suite for GtkRecentChooser.
1048
1049 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
1050
1051         Import GtkRecent* from libegg.
1052
1053         * gtk/gtkrecentmanager.[ch]: Add GtkRecentManager, an object
1054         for managing a list of recently used resources.
1055
1056         * gtk/gtkrecentchooser.[ch]:
1057         * gtk/gtkrecentchooserdefault.[ch]:
1058         * gtk/gtkrecentchooserdialog.[ch]:
1059         * gtk/gtkrecentchoosermenu.[ch]:
1060         * gtk/gtkrecentchooserprivate.h:
1061         * gtk/gtkrecentchooserutils.[ch]:
1062         * gtk/gtkrecentchooserwidget.[ch]: Add GtkRecentChooser, a
1063         GTypeInterface for widgets implementing viewers for recently
1064         used resources.
1065
1066         * gtk/gtkrecentfilter.[ch]: GtkRecentFilter, a filter object
1067         for GtkRecentChooser implementations.
1068
1069         * gtk/gtk.h:
1070         * gtk/gtk.symbols:
1071         * gtk/Makefile.am: Build glue for GtkRecent*.
1072
1073 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
1074
1075         * gtk/gtknotebook.c (gtk_notebook_real_insert_page): Emit
1076         page-added before switch-page.  (#335691, Christian Persch)
1077
1078 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
1079
1080         * gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
1081         double queuing, rather than asserting that it does not 
1082         happen.  (#330617)
1083
1084 2006-03-28  Matthias Clasen  <mclasen@redhat.com>       
1085
1086         * gtk/gtknotebook.c (gtk_notebook_set_tab_detachable): Fix
1087         docs syntax, also commit a patch from #335707 to improve
1088         notebook DND with window widgets.
1089
1090         * gtk/gtktextview.c (gtk_text_view_start_selection_drag): 
1091         (selection_motion_event_handler): Fix drag-selection after
1092         double-click.  (#323862, Benjamin Berg)
1093
1094         * gtk/gtktextview.c (get_iter_at_pointer): Factor this out
1095         into a function and use it in move_mark_to_pointer_and_scroll,
1096         drag_scan_timeout and selection_motion_event_handler.
1097         (Paolo Borelli)
1098
1099 2006-03-28  Matthias Clasen  <mclasen@redhat.com>
1100
1101         * gtk/gtktextview.c (gtk_text_view_do_popup) 
1102         (gtk_text_view_grab_notify): Move the call to 
1103         gtk_text_view_end_selection_drag() from gtk_text_view_do_popup
1104         to gtk_text_view_grab_notify, so that it works not only
1105         for the text views own popup, but also for other ways in which
1106         we might become grab-shadowed during a selection drag.
1107         (#74620, Li Yuan)
1108
1109 2006-03-28  Sven Herzberg  <herzi@gnome-de.org>
1110
1111         reviewed by: Tim Janik
1112         
1113         * gtk/gtkpixmap.c: (gtk_pixmap_set): only check for equal colormaps if
1114         the new pixmap is not NULL; fixes a warning when gtk_pixmap_set is
1115         called from gtk_pixmap_finalize (bug 336254)
1116
1117 2006-03-27  Anders Carlsson  <andersca@imendio.com>
1118
1119         * gdk/quartz/gdkevents-quartz.c:
1120         (select_thread_func):
1121         (got_fd_activity):
1122         (poll_func):
1123         (gdk_event_translate):
1124         Make the poll func work with real file descriptors.
1125         We do this by creating a thread which calls poll and then
1126         signals the main thread using a run loop source.
1127         
1128         * gtk/gtkclipboard-quartz.c:        
1129         (-[GtkClipboardOwner pasteboard:provideDataForType:]):
1130         Remove debugging output
1131
1132 2006-03-27  Matthias Clasen  <mclasen@redhat.com>
1133
1134         * gtk/gtkmnemonichash.c (_gtk_mnemonic_hash_activate): Check that 
1135         the widget is viewable.  (#336200, Bastian Nocera)
1136
1137 2006-03-27  Michael Natterer  <mitch@imendio.com>
1138
1139         * gtk/gtkmenu.c (gtk_menu_scroll_by): bail out if there is no need
1140         for scrolling (more obvious than adding additional conditions to
1141         the scroll offset calculation). Fixes bug #335912.
1142
1143 2006-03-27  Anders Carlsson  <andersca@imendio.com>
1144
1145         * gtk/Makefile.am:
1146         Add -xobjective-c to cflags.
1147         (#335956, Lllian Angel)
1148         
1149         * gtk/gtkdnd-quartz.c:
1150         (gtk_drag_dest_set_track_motion):
1151         (gtk_drag_dest_get_track_motion):
1152         Add stubs for new functions.
1153         (#335955, Lillian Angel)
1154         
1155 2006-03-27  Richard Hult  <richard@imendio.com>
1156
1157         * gdk/quartz: Add more stubs.
1158
1159 2006-03-27  Michael Natterer  <mitch@imendio.com>
1160
1161         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1162         add missing ')'.
1163
1164 2006-03-26  Matthias Clasen  <mclasen@redhat.com>
1165
1166         * gtk/Makefile.am: Fix a srcdir != builddir build problem.
1167         (#335915, Yevgen Muntyan)
1168
1169         * gtk/gtktextbuffer.c (gtk_text_buffer_get_property):
1170         * gtk/gtksettings.c (gtk_settings_get_property):
1171         * gtk/gtkuimanager.c (gtk_ui_manager_get_property): Fix leaks.
1172
1173         * gtk/gtktexttag.c (gtk_text_tag_get_property):
1174         * gtk/gtkcellrenderertext.c (gtk_cell_render_text_get_property):
1175         Avoid an unnecessary strdup.  (#336013)
1176
1177 2006-03-24  Matthias Clasen  <mclasen@redhat.com>
1178
1179         * gtk/gtktextview.c (gtk_text_view_value_changed): Don't call
1180         gdk_window_invalidate_rect() on unrealized widgets.  (#335717,
1181         Nicolas Setton)
1182
1183 Fri Mar 24 14:53:20 2006  Tim Janik  <timj@imendio.com>
1184
1185         * gtk/gtktreemodel.h: 
1186         * gtk/gtktextbtree.h: back out G_GNUC_WARN_UNUSED_RESULT on iterator
1187         functions which turned out to cause too much trouble.
1188
1189 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
1190
1191         * AUTHORS: small update
1192
1193 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
1194
1195         Support subclasses in RC files.  (#142417, Todd Berman, patch
1196         based on a patch by Benjamin Berg)
1197         
1198         * gtk/gtkrc.h: 
1199         * gtk/gtkrc.c: Support <classname> elements in widget_class paths 
1200         in rc files which match any classes derived from named class.
1201
1202         (_gtk_rc_init): Use the new syntax in the default rc string.
1203
1204         * gtk/gtkbindings.c: Support the new syntax for bindings too.
1205         
1206         * tests/testrc.c: Tests for widget_class path matching
1207
1208 2006-03-23  Carlos Garnacho  <carlosg@gnome.org>
1209
1210         * gtk/gtkdnd.c (gtk_drag_dest_motion): make sure that gdk_drag_event()
1211         is called when track_motion is TRUE to receive drag_motion and
1212         drag_leave events properly.
1213
1214 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
1215
1216         * gtk/gtknotebook.c (gtk_notebook_remove): Emit the ::page-removed
1217         signal after removing the page.  (#335238, Christian Persch)
1218
1219 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
1220
1221         * gtk/gtkexpander.c: Make it to expand when hovering during DnD
1222
1223 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
1224
1225         Improved DND support for GtkNotebook  (#332991, Carlos Garnacho)
1226         
1227         * gtk/gtk.symbols: 
1228         * gtk/gtkdnd.h: 
1229         * gtk/gtkdnd.c: Add a track_motion flag on GtkDragDest
1230         with getter and setter, for cases where the drag destination
1231         is interested in drag motion events independent of targets.
1232
1233         * gtk/gtksettings.c (gtk_settings_class_init): Add a setting
1234         for the timeout used when expanding during DND.
1235
1236         * gtk/gtknotebook.c: Use the track_motion flag to switch
1237         notebook tabs when hovering over tabs during DND.
1238         
1239 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
1240
1241         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to
1242         draw the inter-row drop highlight. Also draw the line all the 
1243         way across, and flip it in RTL mode. (#334906, Ian McDonald)
1244
1245 2006-03-22  Johan Dahlin  <jdahlin@async.com.br>
1246
1247         * tests/testtreeview.c: Add a column that demonstrates how to use
1248         the new spinbutton cellrenderer.
1249
1250 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
1251
1252         * tests/prop-editor.c: 
1253         * tests/testtreeview.c: Remove pointless includes of config.h,
1254         to make it easier compilable against system GTK+.
1255
1256 2006-03-22  Michael Natterer  <mitch@imendio.com>
1257
1258         * gtk/gtkentry.c: renamed last-char-timeout to
1259         password-hint-timeout and store all its data in a struct attached
1260         as QData.
1261
1262         * gtk/gtkcellrendererspin.c: fix typo in #include.
1263
1264 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
1265
1266         * gtk/gtknotebook.c: send a GtkWidget** instead of a GtkNotebookPage*
1267         when doing tabs DnD, this allows DnD interaction with other widgets,
1268         added some docs for this too.
1269         * tests/testnotebookdnd.c: add some code to test it.
1270
1271 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
1272
1273         * gtk/gtk.symbols: 
1274         * gtk/gtkcellrendererspin.h:
1275         * gtk/gtkcellrendererspin.c: Add a cell renderer which 
1276         uses a spinbutton to edit the value of a cell. (#156023,
1277         Daniel Kasak, Lorenzo Gil Sanchez, Carlos Garnacho)
1278
1279         * gtk/gtk.h: 
1280         * gtk/Makefile.am: Glue it in.
1281
1282 2006-03-21  Matthias Clasen  <mclasen@redhat.com>
1283
1284         * tests/testtreeview.c (drag_begin_cb): Test setting up
1285         drag icons for tree dnd.
1286
1287 2006-03-22  Michael Natterer  <mitch@imendio.com>
1288
1289         * gtk/gtkentry.c: applied modified patch from maemo-gtk which
1290         allows the most recently entered character in a hidden entry to be
1291         shown for a configurable period of time. Fixes bug #334560.
1292
1293 2006-03-22  Michael Natterer  <mitch@imendio.com>
1294
1295         * gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): count down
1296         from G_MAXUINT to avoid clashes with application-added DND
1297         targets.
1298
1299         * gtk/gtktextview.c (gtk_text_view_init): set an empty
1300         GtkTargetList on the drag_dest so it is not NULL when a derived
1301         class' init() function is called.
1302
1303         (gtk_text_view_target_list_notify): copy the text buffer's paste
1304         targets into the view's destinstion target list (preserving
1305         application-added DND targets), instead of replacing the view's
1306         target list. Fixes bug #334399.
1307
1308 2006-03-21  Anders Carlsson  <andersca@imendio.com>
1309
1310         * gtk/Makefile.am:
1311         Add new files.
1312         
1313         * gtk/gtkclipboard-quartz.c: Added.
1314         * gtk/gtkdnd-quartz.c: Added.
1315         * gtk/gtkquartz.c: Added.
1316         * gtk/gtkquartz.h: Added.
1317         Add dnd and clipboard implementations.
1318
1319 2006-03-21  Michael Natterer  <mitch@imendio.com>
1320
1321         * gdk/quartz/Makefile.am: removing trailing \ fixes the build.
1322
1323 2006-03-21  Anders Carlsson  <andersca@imendio.com>
1324
1325         * gdk/quartz/gdkgeometry-quartz.c:
1326         (gdk_window_scroll):
1327         Implement gdk_window_scroll.
1328
1329 2006-03-21  Anders Carlsson  <andersca@imendio.com>
1330
1331         * gdk/quartz/GdkQuartzWindow.c:
1332         (drag_operation_to_drag_action):
1333         (drag_action_to_drag_operation):
1334         (update_context_from_dragging_info):
1335         (-[GdkQuartzWindow draggingEntered:]):
1336         (-[GdkQuartzWindow draggingEnded:]):
1337         (-[GdkQuartzWindow draggingExited:]):
1338         (-[GdkQuartzWindow draggingUpdated:]):
1339         (-[GdkQuartzWindow performDragOperation:]):
1340         (-[GdkQuartzWindow wantsPeriodicDraggingUpdates]):
1341         (-[GdkQuartzWindow draggedImage:endedAt:operation:]):
1342         * gdk/quartz/gdkdnd-quartz.c:
1343         (gdk_drag_context_finalize):
1344         (gdk_drag_context_init):
1345         (gdk_drag_context_class_init):
1346         (gdk_drag_begin):
1347         (gdk_drag_status):
1348         Add the GDK part of the DND implementation.
1349
1350         * gdk/quartz/Makefile.am:
1351         Add some missing headers.
1352         
1353         * gdk/quartz/gdkdrawable-quartz.h:
1354         * gdk/quartz/gdkprivate-quartz.h:
1355         * gdk/quartz/gdkquartz.h:
1356         * gdk/quartz/gdkwindow-quartz.c:
1357         (gdk_quartz_window_get_nsview):
1358         New function, for use by the GTK part of the DND implementation
1359
1360 2006-03-21  Anders Carlsson  <andersca@imendio.com>
1361
1362         * gdk/quartz/gdkdrawable-quartz.c:
1363         (gdk_quartz_ref_cairo_surface):
1364         (gdk_quartz_draw_rectangle):
1365         (gdk_quartz_draw_arc):
1366         (gdk_quartz_draw_polygon):
1367         (gdk_quartz_draw_drawable):
1368         (gdk_quartz_draw_segments):
1369         (gdk_quartz_draw_lines):
1370         (gdk_quartz_draw_pixbuf):
1371         (gdk_quartz_draw_image):
1372         (_gdk_quartz_drawable_get_context):
1373         * gdk/quartz/gdkdrawable-quartz.h:
1374         Offset coordinates by 0.5 pixels to get consistant results for both
1375         image contexts and screen contexts.
1376
1377 2006-03-21  Anders Carlsson  <andersca@imendio.com>
1378
1379         * gdk/quartz/GdkQuartzWindow.c 
1380         ([GdkQuartzWindow -windowDidMove:]): Synthesize GDK_CONFIGURE events
1381         when the window position changes.
1382
1383 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
1384
1385         * gtk/gtkdnd.c (gtk_drag_get_cursor): Remove an unused variable.
1386
1387         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): Don't leave
1388         page->tab_label dangling.
1389         (gtk_notebook_real_remove): Use GTK_IN_DESTRUCTION to determine
1390         if we are being called during destruction of the notebook, rather
1391         than maintaining that information as a passed-in parameter.
1392         (gtk_notebook_destroy): Leave the removal of the children
1393         to the container destroy method.  (#319032, Yevgen Muntyan)
1394
1395 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
1396
1397         * gtk/gtkcombobox.c (gtk_combo_box_remove): Use the existing
1398         GTK_IN_DESTRUCTION flag, rather than roll our own.
1399
1400 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
1401         
1402         * gtk/gtk.symbols: 
1403         * gtk/gtkscrolledwindow.h: 
1404         * gtk/gtkscrolledwindow.c: Add a window-placement-set property
1405         and a gtk-scrolled-window-placement setting.  (#157025, Christian
1406         Neumair)
1407
1408 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
1409
1410         * gtk/gtkmain.c (gtk_get_option_group): Make sure gettext
1411         is initialized before using it.  (#335129, Christian Persch)
1412
1413 2006-03-19  Matthias Clasen  <mclasen@redhat.com>
1414
1415         * MAINTAINERS: Add this, at the request of the GNOME sysadmin team.
1416
1417         * AUTHORS: Updates, typo fix
1418
1419         * gtk/gtkiconview.c (gtk_icon_view_set_cursor): Document that
1420         @cell must be one of the renderers of the icon view, warn if 
1421         it is not, and ignore @start_editing if @cell is not set.
1422         (#335001, Emmanuel Rodriguez)
1423
1424 2006-03-16  Matthias Clasen  <mclasen@redhat.com>
1425
1426         * configure.in: Add a missing comma.  (#334774, Peter Breitenlohner)
1427
1428         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) 
1429         (gtk_action_group_add_toggle_actions_full) 
1430         (gtk_action_group_add_radio_actions_full): Check for a stock 
1431         icon, not a stock item, when deciding whether to use stock-id 
1432         or icon-name.  (#334760, Jody Goldberg)
1433
1434         * gtk/gtkimage.c (gtk_image_clear): Update the size of the image, 
1435         by swapping the implementations of gtk_image_clear and
1436         gtk_image_reset.  (#334657)
1437
1438         * README.in: Add a note about GtkNotebook signals.
1439
1440 2006-03-15  Matthias Clasen  <mclasen@redhat.com>
1441
1442         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released) 
1443         (gtk_combo_box_list_key_press): Popdown the list before changing
1444         the active iter, otherwise people will be surprised by the
1445         grabs that are still in place when their ::changed handler
1446         runs. 
1447
1448 2006-03-15  Dom Lachowicz <cinamod@hotmail.com>
1449
1450         * modules/engines/ms-windows/msw_style.c: Override style->realize/
1451         style->unrealize, so that GTK+ doesn't automatically attempt to apply
1452         shading to the GC colors, causing a mismatch with the Win32 native
1453         colors. Problem found by (and suggested solution by) "Cosmic Integer"
1454
1455         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Make expander-size
1456         a bit closer to Microsoft's values (bug 325699, Brad Taylor)
1457         
1458 2006-03-14  Matthias Clasen  <mclasen@redhat.com>
1459
1460         * tests/testcellrenderertext.c: Add test cases for alignment.
1461
1462         * gtk/gtkcellrenderertext.c: Add an alignment property,
1463         and fix some cases where ellipsize_set was being used to
1464         mean "we're ellipsizing" even when ellipsize was set to NONE.  
1465         (#318761, Ross Burton)
1466
1467         * gtk/gtkimcontextsimple.c: Make return and release work again
1468         to commit a hex sequence. Additionally, make escape reset the
1469         im context when in a hex sequence.  (#334423, Behdad Esfahbod)
1470
1471 2006-03-13  Matthias Clasen  <mclasen@redhat.com>
1472
1473         Make actions work with named icons.  (#323484, Jorn Baayen)
1474         
1475         * gtk/gtkactiongroup.c: If the stock-id field of a GtkActionEntry
1476         does not contain a registered stock id, interpret it as an
1477         icon name.
1478
1479         * gtk/gtkaction.c: Add an icon-name property to actions and
1480         use it for icons if a stock-id is not specified.
1481
1482 2006-03-12  Matthias Clasen  <mclasen@redhat.com>
1483
1484         * gtk/gtkwindow.c (gtk_window_compute_configure_request): Don't
1485         for the creation of geometry info here.  (#114533)
1486
1487 2006-03-11  Tor Lillqvist  <tml@novell.com>
1488
1489         * gdk/win32/gdkdrawable-win32.c (draw_polygon): Use Polygon() for
1490         outlined polygons, too. Same idea as in draw_rectangle(): Set pen
1491         to NULL_PEN if drawing a filled polygon, set brush to HOLLOW_BRUSH
1492         if drawing a polygon outline. (#332662)
1493         (gdk_win32_draw_polygon): Corresponding simplification: no need to
1494         add an extra final copy of the starting point.
1495
1496 2006-03-11  Dom Lachowicz <cinamod@hotmail.com>
1497
1498         * modules/engines/ms-windows: Speed up the Windows theme
1499         considerably (#163724, John Ehresman)
1500         Be more careful about setting Pango font descriptions (#333372)
1501         
1502 2006-03-11  Matthias Clasen  <mclasen@redhat.com>
1503
1504         * gtk/gtkrange.c (gtk_range_key_press): Allow to cancel 
1505         a drag with ESC.  (#58389, Søren Sandmann)
1506
1507 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
1508
1509         * gtk/gtkrange.c: Add a style property ::activate_slider that
1510         allows themes to draw the slider active while dragged.  (#311992,
1511         Benjamin Berg)
1512
1513         * gtk/gtkcolorsel.c (gtk_color_selection_init): Fix two labels.
1514
1515         * gtk-engine-check-abi.sh: Add a script to check that theme
1516         engines don't export any extra functions. 
1517
1518 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
1519
1520         * gtk/gtkcolorsel.c (gtk_color_selection_init): Avoid a mnemonic
1521         conflict.  (#163850, Dennis Cranston)
1522
1523         * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Make the behaviour
1524         of the about dialog consistent with other dialogs in gtk. If the
1525         dialog is constructed with gtk_about_dialog_new(), the creator
1526         is reponsible for handling the response by hiding or closing the
1527         dialog. gtk_show_about_dialog() handles it by hiding the dialog.
1528         (#333360, Daniel Drake)
1529
1530         * README.in: Mention this change.
1531
1532 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
1533
1534         Apply a patch from Dennis Cranston to make dialogs more
1535         consistent  (#163850)
1536         
1537         * gtk/gtkcolorsel.c (make_label_spinbutton): Left-align labels.
1538         
1539         * gtk/gtkfontsel.c (gtk_font_selection_init): 
1540         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): 
1541         * gtk/gtkcolorsel.c (gtk_color_selection_init): 
1542         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
1543         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Update the layout
1544         of the dialog to follow HIG recommendations. Also update labels.
1545
1546         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): HIG-compatible 
1547         spacing.
1548         (gtk_message_dialog_font_size_change): Merged into 
1549          gtk_message_dialog_style_set.
1550
1551 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
1552
1553         * gtk/gtkstyle.c: Remove g_return_if_fail() checks
1554         from static functions.
1555
1556 2006-03-10  Federico Mena Quintero  <federico@novell.com>
1557
1558         Make Shift-P and Shift-N activate typeahead in GtkTreeView
1559         (i.e. they are just normal capital letters).  Fixes bug #334098.
1560
1561         * gtk/gtktreeview.c (gtk_tree_view_add_move_binding): Add an
1562         "add_shifted_binding" argument which determines whether we'll add
1563         the same binding with GDK_SHIFT_MASK.
1564         (gtk_tree_view_class_init): Use add_shifted_binding=FALSE for GDK_p
1565         and GDK_n; use TRUE for all the rest.
1566
1567 2006-03-10  Michael Natterer  <mitch@imendio.com>
1568
1569         * gtk/gtkentry.[ch]: applied refactored patch from maemo-gtk that
1570         replaces the INNER_BORDER define by an "inner-border" style
1571         property of type GtkBorder. Additionally, add an "inner-border"
1572         object property plus API which allows to override any theme
1573         border, to allow pixel-perfect positioning of entries for inline
1574         editing. Fixes bug #333922.
1575
1576         * gtk/gtk.symbols: add the new public functions.
1577
1578 2006-03-09  Matthias Clasen  <mclasen@redhat.com>
1579
1580         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Replace the
1581         popup-show and popup-hide signals with a readonly popup-shown
1582         property.  (#162531, Christian Persch)
1583
1584 2006-03-09  Ross Burton  <ross@openedhand.com>
1585
1586         * gtk/gtkwidget.c:
1587         * gtk/gtkrange.c:
1588         * gtk/gtktogglebutton.c:
1589         Turn off prelighting when gtk-touchscreen-mode is enabled (#135666)
1590
1591 Thu Mar  9 14:29:43 2006  Tim Janik  <timj@gtk.org>
1592
1593         * gtk/gtkobject.c (gtk_object_init): move the floating flag from
1594         the GInitiallyUnowned bit to GTK_FLOATING. fixes tests/floatingcheck.
1595         kudos to mitch for debugging this.
1596
1597 2006-03-09  Matthias Clasen <mclasen@redhat.com>
1598
1599         * Makefile.am: Add ChangeLog.pre-2.8 to EXTRA_DIST.
1600
1601 2006-03-09  Tor Lillqvist  <tml@novell.com>
1602
1603         * gtk/gtk.symbols: No gtk_tray_icon_get_type on Win32.
1604
1605 2006-03-08  Carlos Garnacho  <carlosg@gnome.org>
1606
1607         Rename ::tab-added and ::tab-removed signals to ::page-added and
1608         ::page-removed for not conflicting with other tab reordering
1609         implementations. Fixes bug #333743.
1610
1611         Also rename ::tab-reordered to ::page-reordered, and emit it in
1612         gtk_notebook_reorder_child () to make it behave consistently with the
1613         other two signals.
1614
1615         * gtk/gtknotebook.c (gtk_notebook_class_init): rename signals.
1616         (gtk_notebook_reorder_tab)
1617         (gtk_notebook_button_release)
1618         (gtk_notebook_remove)
1619         (gtk_notebook_real_insert_page): emit respectively renamed signals
1620         (gtk_notebook_reorder_child): also emit ::page-reordered here
1621
1622         * tests/testnotebookdnd.c: use renamed signals
1623
1624 2006-03-08  Michael Natterer  <mitch@imendio.com>
1625
1626         * gdk/gdkscreen.h
1627         * gdk/x11/gdkscreen-x11.c
1628         * gdk/gdk.symbols: added gdk_screen_get_active_window() and
1629         gdk_screen_get_window_stack() (patch from maemo-gtk).
1630         Fixes bug #320881.
1631
1632         * gdk/directfb/gdkscreen-directfb.c
1633         * gdk/quartz/gdkscreen-quartz.c
1634         * gdk/win32/gdkscreen-win32.c: added the functions as stubs.
1635
1636 2006-03-08  Michael Natterer  <mitch@imendio.com>
1637
1638         * tests/prop-editor.c (unichar_changed): zero-initialize the
1639         GValue before calling g_value_init().
1640
1641 2006-03-08  Michael Natterer  <mitch@imendio.com>
1642
1643         * gtk/gtkentry.c (gtk_entry_adjust_scroll): make sure that the
1644         text_area_width is always >= 0. Fixes bug #316712 (Dan Winship).
1645
1646 2006-03-07  Federico Mena Quintero  <federico@novell.com>
1647
1648         Cancel drags when the grabs get broken.  Fixes bug #333056:
1649
1650         * gtk/gtkdnd.c (gtk_drag_selection_received): The time argument is
1651         a guint, not guint32.
1652         (gtk_drag_source_event_cb): Return gboolean, not gint.
1653         (gtk_drag_anim_timeout): Likewise.
1654         (gtk_drag_motion_cb): Likewise.
1655         (gtk_drag_key_cb): Likewise.
1656         (gtk_drag_button_release_cb): Likewise.
1657         (gtk_drag_abort_timeout): Likewise.
1658         (gtk_drag_begin_internal): Connect to "grab-broken-event" on the
1659         ipc_widget.
1660         (gtk_drag_source_info_destroy): Disconnect from the
1661         "grab-broken-event" callback.
1662         (gtk_drag_end): Likewise.
1663         (gtk_drag_grab_broken_event_cb): New callback.  We cancel the drag
1664         if the grab was broken and not regrabbed by the DnD code.
1665
1666 2006-03-07  Federico Mena Quintero  <federico@novell.com>
1667
1668         * gtk/gtkfilechooserdefault.c (shortcuts_button_press_event_cb):
1669         Hack to let the treeview's button-press-event handler run before
1670         ours.  This lets the selection be updated before we pop up a
1671         context menu.
1672
1673 Tue Mar  7 17:16:34 2006  Tim Janik  <timj@gtk.org>
1674
1675         * configure.in: depend on glib-2.10.1.
1676
1677         * gtk/gtkobject.c: fixed up messing with non-GtkObject floating flags.
1678         this requires glib-2.10.1.
1679
1680 2006-03-07  Michael Natterer  <mitch@imendio.com>
1681
1682         Add infrastructure for copy/paste and DND of rich text for
1683         GtkTextBuffer. Fixes bug #324177.
1684
1685         * gtk/gtktextbufferrichtext.[ch]: new files implementing a
1686         per-buffer registry of rich text formats.
1687
1688         * gtk/gtk.h: #include gtktextbufferrichtext.h
1689
1690         * gtk/gtktextbufferserialize.[ch]: new files implementing an
1691         internal serialization format that can handle all of a text
1692         buffer's tags and pixbufs. It's not useful for anything except
1693         tranfer between instances of GtkTextBuffer (Anders Carlsson).
1694
1695         * gtk/Makefile.am: build the new files.
1696
1697         * gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
1698         just as they exist for plain text and pixbufs.
1699
1700         * gtk/gtkselection.[ch]: added rich text convenience APIs here
1701         too.  Return the target list from gtk_target_list_ref(). Register
1702         GtkTargetList as boxed type. Added
1703         gtk_target_table_new_from_list() and gtk_target_table_free(),
1704         which make converting between GtkTargetList and arrays of
1705         GtkTargetEntry considerably easier.
1706
1707         * gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
1708         which creates a fancy rich text icon (Matthias Clasen).
1709
1710         * gtk/gtktextbuffer.[ch]: use all the new stuff above and
1711         implement copy and paste of rich text. Added APIs for getting the
1712         target lists used for copy and paste. Added public enum
1713         GtkTextBufferTargetInfo which contains the "info" IDs associated
1714         with the entries of the target lists.
1715
1716         * gtk/gtktextview.c: use the new rich text APIs and
1717         GtkTextBuffer's new target list API to enable DND of rich text
1718         chunks.
1719
1720         * gtk/gtk.symbols: export all the new symbols added.
1721
1722         * tests/testtext.c: added rich text testing stuff.
1723
1724 2006-03-06  Matthias Clasen  <mclasen@redhat.com>
1725
1726         * gtk/gtktextview.c (text_window_invalidate_cursors): Take
1727         cursor width into account when calculating the area to 
1728         be invalidated.  (#333377, #323401 Steve Frécinaux)
1729
1730         * gtk/gtkmain.c (post_parse_hook): Set error when returning
1731         FALSE.  (#333268, Paolo Maggi, Christian Persch)
1732         
1733         * gtk/gtkpixmap.c (gtk_pixmap_set): Check that the pixmap
1734         has the right depth.  (#333363, Ed Catmur)
1735
1736 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
1737
1738         * gtk/gtkiconview.c (adjust_wrap_width): Apply some
1739         arbitrary lower limit for the guessed wrap width. (#332466,
1740         Donald Straney)
1741
1742 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
1743
1744         Fix handling of image-only buttons.  (#332985, Kalle 
1745         Vahlmann, #333555)
1746         
1747         * gtk/gtkbutton.c (gtk_button_construct_child): Don't
1748         return early if there an image to show.
1749         (show_image): Always return TRUE if there is no text.
1750
1751 2006-03-04  Matthias Clasen  <mclasen@redhat.com>
1752
1753         * gdk/x11/gdkinput-x11 (gdk_input_translate_coordinates):
1754         Adjust the handling of min values for the x and y axes of 
1755         extended input devices  (#324562, #142536, Denis Auroux and 
1756         Robert Ã–gren)
1757
1758         * gtk/gtkexpander.c (gtk_expander_paint_focus): Position
1759         the focus rectangle correctly in RTL mode.  (#333291,
1760         Benjamin Berg)
1761
1762 2006-03-03  Tor Lillqvist  <tml@novell.com>
1763
1764         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_commit_char)
1765         (gtk_im_context_simple_reset): Avoid emitting superfluous
1766         preedit_changed signals. Thanks to Matthias. (#319407)
1767
1768 2006-03-03  Michael Natterer  <mitch@imendio.com>
1769
1770         Applied modified patch from maemo-gtk which makes separators more
1771         themeable. Fixes bug #332022.
1772
1773         * gtk/gtkwidget.c: added style properties "wide-separators",
1774         "separator-width" and "separator-height".
1775
1776         * gtk/gtkhseparator.c
1777         * gtk/gtkvseparator.c
1778         * gtk/gtkmenuitem.c
1779         * gtk/gtktoolbar.c: honor the new settings and paint separators
1780         using gtk_paint_box() if wide-separators is true.
1781
1782 2006-03-02  Dom Lachowicz <cinamod@hotmail.com>
1783
1784         * modules/engines/ms-windows/msw_style.c: Fix combobox theming
1785         regression noted in bug 321301
1786         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
1787         
1788 2006-03-02  Matthias Clasen  <mclasen@redhat.com>
1789
1790         * gtk/gtkiconview.c (gtk_icon_view_layout) 
1791         (gtk_icon_view_row_inserted, gtk_icon_view_scroll_to_path): 
1792         Make scroll_to_path work for newly inserted items, by delaying
1793         the scroll until layout is done.  (#332923, Cory Dodt)
1794
1795         * gtk/gtkcolorbutton.c (render): Use GTK_WIDGET_IS_SENSITIVE,
1796         not GTK_WIDGET_SENSITIVE.  (#333133, Christian Persch)
1797
1798 2006-03-02  Ross Burton  <ross@openedhand.com>
1799
1800         * gtk/gtktooltips.c:
1801         Disable tooltips if gtk-touchscreen-mode is activated (#315112).
1802
1803 2006-03-01  Kristian Rietveld  <kris@imendio.com>
1804
1805         * gtk/gtktreeselection.c (row_is_selectable): rename to
1806         _gtk_tree_selection_row_is_selectable and export internally,
1807         (gtk_tree_selection_real_select_node): changed so it is always
1808         possible to unselect insensitive nodes, changed the logic a bit to
1809         be more clear.
1810
1811         * gtk/gtktreeprivate.h: add _gtk_tree_selection_row_is_selectable.
1812
1813         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Unselect a row if
1814         it became insensitive.
1815
1816 2006-02-27  Federico Mena Quintero  <federico@novell.com>
1817
1818         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Check that
1819         the fontsel has a screen assigned before doing anything.  This
1820         will at least warn the caller of what is wrong, since we only
1821         populate the family_list until we get a screen.  Also, put the
1822         reference docs here.  Fixes bug #332756.
1823         (gtk_font_selection_dialog_get_font_name): Document this here.
1824         (gtk_font_selection_get_font_name): Document this here; mention
1825         that the font names get normalized, so the result of this function
1826         may not be the same as what you set with
1827         gtk_font_selection_set_font_name().
1828
1829 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
1830
1831         * gtk/gtk.symbols:
1832         * gtk/gtktrayicon-x11.c: Fix symbol lists for make check.
1833
1834 2006-02-27  Michael Natterer  <mitch@imendio.com>
1835
1836         * gdk/x11/gdksettings.c: map "gtk-touchscreen-mode" to the
1837         "Gtk/TouchscreenMode" XSettings property, remove trailing
1838         whitespace.
1839
1840         * gdk/x11/checksettings.c: #include <string.h> and sprinkled some
1841         newlines.
1842
1843 Mon Feb 27 14:52:50 2006  Tim Janik  <timj@imendio.com>
1844
1845         * gdkevents-x11.c:
1846         * gdksettings.c: moved and renamed the gdk_settings_names and 
1847         gdk_settings_map.
1848
1849         * gdk/x11/checksettings.c: test program for the gdk_settings_map array.
1850
1851         * gdk/x11/Makefile.am: run checksettings as part of make check.
1852
1853 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
1854
1855         * gtk/gtkdnd.c (gtk_drag_get_cursor): Comment out some unused
1856         code, and fix the reference point of composited drag cursors.
1857         (#320132, Christian Neumair)
1858
1859 Sun Feb 26 10:24:10 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
1860         
1861         *gdk/directfb/README
1862         Updated README to remove old build instructions
1863
1864 Sat Feb 25 10:35:23 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
1865         
1866         *gdk/directfb/gdkdisplay-directfb.c
1867         *gdk/directfb/gdkwindow-directfb.c
1868         Added stubs for shape window functions to fix compile problems
1869
1870 2006-02-24  Federico Mena Quintero  <federico@novell.com>
1871
1872         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Make the
1873         column header visible, and make it be "_Places".  Changed the
1874         accessible object name to Places as well.  Fixes bug #331306.
1875         (file_pane_create): Do not create the path bar and "create folder"
1876         button here...
1877         (browse_widgets_create): ... but create them here instead.  This
1878         moves the path bar to be above both the hpaned, giving it the full
1879         width of the dialog.  Fixes bug #327733.
1880
1881 Thu Feb 23 13:28:21 2006  Tim Janik  <timj@imendio.com>
1882
1883         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): remove unconditional
1884         warnings about missing X locale support. Gdk properly handles this
1885         situation anyway.
1886
1887 Fri Feb 17 14:20:29 2006  Tim Janik  <timj@imendio.com>
1888
1889         * gtk/gtktreemodel.h: 
1890         * gtk/gtktextbtree.h: added G_GNUC_WARN_UNUSED_RESULT warnings for
1891         iterator functions, to avoid invalid iterators go unnoticed,
1892         suggested by Markku Vire <markku.vire@movial.fi>.
1893
1894 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
1895
1896         * tests/Makefile.am: 
1897         * tests/testnotebookdnd.c: Add notebook DND tests.
1898
1899         * gtk/gtknotebook.h: Add a reorder_tab keynav signal and an
1900         insert_page vfunc to GtkNotebook.
1901
1902         * gtk/gtk.symbols:
1903         * gtk/gtknotebook.c: Support notebook DND. New API includes
1904         gtk_notebook_set_window_creation_hook, 
1905         gtk_notebook_[gs]et_group_id,
1906         gtk_notebook_[gs]et_tab_reorderable, 
1907         gtk_notebook_[gs]et_tab_detachable (#73240, Carlos Garnacho)
1908
1909 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
1910
1911         * gtk/gtktextiter.c: Fix macro declaration
1912
1913         * gtk/gtkaboutdialog.c: Remove an accidentally included function.
1914
1915 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
1916
1917         * gtk/gtktextbtree.c: 
1918         * gtk/gtktextiter.c: Minor optimizations.  (#332059, Arnaud Charlet)
1919
1920         * gtk/gtkradiobutton.c (gtk_radio_button_clicked): Emit notify::active
1921         here, when changing the value of this property.  (#331651)
1922
1923         * gtk/gtknotebook.c: Apply a patch by Paolo Borelli to
1924         make the tab menu keynavigatable.  (#331440)
1925
1926 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
1927
1928         * gtk/gtkaboutdialog.c: Change Close buttons to GTK_RESPONSE_CANCEL
1929         so Escape works. (#331940, Daniel Drake)
1930
1931 2006-02-22  Michael Natterer  <mitch@imendio.com>
1932
1933         * gtk/gtksettings.c: added boolean property gtk-touchscreen-mode,
1934         which essentially means "there are no motion notify events", so
1935         widgets can't use the pointer hovering them for anything.
1936
1937         * gtk/gtkmenu.c: if gtk-touchscreen-mode is TRUE, scroll menus
1938         when clicking the scroll arrows, since hovering goes undetected.
1939         Fixes bug #323028.
1940
1941         Added boolean style property "double-arrows" which always makes
1942         both scroll arrows visible when the menu is too long.
1943         For pushed-in popup menus, both arrows are always shown
1944         (regardless of double-arrows), in order to fix user confusion
1945         about the blank area. Fixes bug #129463.
1946
1947 2006-02-21  Kristian Rietveld  <kris@imendio.com>
1948
1949         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
1950         Make sure we always update the virtual root, also when ->priv->root
1951         is still NULL.  (Markku Vire)
1952
1953 2006-02-21  Anders Carlsson  <andersca@imendio.com>
1954
1955         * gdk/quartz/gdkselection-quartz.c:
1956         (make_list):
1957         (gdk_text_property_to_utf8_list_for_display):
1958         Add these from the win32 backend.
1959
1960 2006-02-20  Matthias Clasen  <mclasen@redhat.com>
1961
1962         * gtk/gtknotebook.c: Properly update internal state
1963         when child visibility changes.  (#331785, Sebastien Bacher)
1964
1965         * gdk/gdkgc.c (_gdk_gc_update_context): Obtain the
1966         background color from the gc when it is needed.  (#331820)
1967
1968 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
1969
1970         * gdk/gdkgc.c (_gdk_gc_update_context): Add a gc_changed
1971         argument, and avoid setting the clip region if the gc
1972         has not changed. 
1973
1974         * gdk/gdkgc.c: Update all callers.
1975
1976         * gdk/gdkpango.c (get_cairo_context): Avoid updating the
1977         context if nothing changed.
1978
1979 2006-02-20  Anders Carlsson  <andersca@imendio.com>
1980
1981         * gdk/quartz/gdkdisplay-quartz.c:
1982         (gdk_display_supports_shapes):
1983         (gdk_display_supports_input_shapes):
1984         * gdk/quartz/gdkwindow-quartz.c:
1985         (gdk_display_warp_pointer):
1986         (gdk_window_input_shape_combine_mask):
1987         (gdk_window_input_shape_combine_region):
1988         (gdk_window_set_child_input_shapes):
1989         (gdk_window_set_accept_focus):
1990         (gdk_window_merge_child_input_shapes):
1991         Add stubs for input shape functions.
1992
1993 2006-02-20  Anders Carlsson  <andersca@imendio.com>
1994
1995         * gdk/quartz/gdkevents-quartz.c:
1996         (get_keyboard_modifiers_from_nsevent):
1997         Fix typo so ctrl gets passed on to the gdk event.
1998         
1999         * gdk/quartz/gdkproperty-quartz.c:
2000         (gdk_atom_name):
2001         g_strdup the atom name.
2002
2003 2006-02-20  Tor Lillqvist  <tml@novell.com>
2004
2005         * gdk/win32/gdkdisplay-win32.c (gdk_display_supports_shapes):
2006         New function, return TRUE.
2007         (gdk_display_supports_input_shapes): New function, return FALSE.
2008
2009         * gdk/win32/gdkwindow-win32.c (do_shape_combine_region): New
2010         function. Factor out code from gdk_window_shape_combine_mask().
2011         (gdk_window_shape_combine_region): Actually do something. Convert
2012         region to a HRGN and call do_shape_combine_region().
2013         (gdk_window_input_shape_combine_mask)
2014         (gdk_window_input_shape_combine_region)
2015         (gdk_window_set_child_input_shapes)
2016         (gdk_window_merge_child_input_shapes): New functions, dummy
2017         implementations.
2018
2019 2006-02-20  Michael Natterer  <mitch@imendio.com>
2020
2021         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): adding boolean
2022         have_shapes and have_input_shapes members fixes the build.
2023
2024 2006-02-20  Tor Lillqvist  <tml@novell.com>
2025
2026         * gdk/win32/gdkfont-win32.c: Replace all calls to g_strcasecmp()
2027         with g_ascii_strcasecmp().
2028
2029 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
2030
2031         Support input shapes:  (#331070)
2032         
2033         * gdk/gdk.symbols: 
2034         * gdk/gdkdisplay.h: 
2035         * gdk/gdkwindow.h: 
2036         * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_shapes) 
2037         (gdk_display_supports_input_shapes): Functions to determine
2038         if a display supports shaped windows or input shapes.
2039
2040         * gdk/x11/gdkwindow-x11.c (gdk_window_input_shape_combine_region): 
2041         (gdk_window_input_shape_combine_mask): 
2042         (gdk_window_set_child_input_shapes): 
2043         (gdk_window_merge_child_input_shapes): Input shape versions
2044         of the window shape API.
2045
2046         * gtk/gtk.symbols: 
2047         * gtk/gtkwidget.h: 
2048         * gtk/gtkwidget.c (gtk_widget_input_shape_combine_mask): 
2049         New function to set an input shape on a widget.
2050
2051 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
2052
2053         * gtk/gtklinkbutton.c (gtk_link_button_class_init): Fix
2054         a cast.
2055
2056 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
2057
2058         DND keynav support:
2059         
2060         * gtk/gtkdnd.c (gtk_drag_update_idle): Protect against 
2061         info->last_event being NULL.
2062         (gtk_drag_key_cb): Handle arrow keys to move the drag icon
2063         and space or enter to drop.
2064
2065 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
2066
2067         * gdk/gdkregion-generic.c (gdk_region_union_with_rect):
2068         Be robust and reject rectangles with negative width or
2069         height.  (#331467, Benjamin Berg)
2070
2071
2072 2006-02-17  Kristian Rietveld  <kris@imendio.com>
2073
2074         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
2075         Only update the virtual root if the child path is an ancestor
2076         of the virtual root.  (Patch from Markku Vire).
2077
2078 2006-02-16  Federico Mena Quintero  <federico@novell.com>
2079
2080         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_map): Call
2081         ::initial_focus() on the child before calling ::map() on our
2082         parent class.  This will prevent the shortcuts treeview from
2083         highlighting its first row as a result of getting assigned focus
2084         by gtk_dialog_map().
2085
2086 2006-02-14  Matthias Clasen  <mclasen@redhat.com>
2087
2088         * gtk/gtkwidget.c (gtk_widget_send_expose): Remove redundant
2089         check.  Pointed out by Bodo-Merle Sandor.
2090
2091         * gtk/gtkcolorbutton.c (gtk_color_button_[un]realize):
2092         Remove unnecessary checks.  
2093
2094 2006-02-12  Matthias Clasen  <mclasen@redhat.com>
2095
2096         * gtk/gtkicontheme.c (gtk_icon_theme_list_icons): Give working
2097         examples in the docs.  (#330944, John Spray)
2098
2099 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
2100         
2101         * gtk/gtkiconview.c (gtk_icon_view_get_item_at_coords): Fix
2102         row_spacing/column_spacing confusion.  (#330732, Donald Straney)
2103
2104 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
2105
2106         * gtk/gtkstyle.c: Add some docs. (#330073, Mart Raudsepp)
2107
2108         * gtk/gtkentrycompletion.c (gtk_entry_completion_match_selected): 
2109         Guard against NULL.  (#330177, Raphael Slinckx)
2110
2111 2006-02-10  Murray Cumming  <murrayc@murrayc.com>
2112
2113         * docs/reference/gtk/tmpl/gtkcomboboxentry.sgml: Mention that 
2114         the changed signal is emitted when typing - not just when 
2115         selecting from the list. Suggest use of GtkEntry::action to 
2116         etect end of typing.
2117          gtk/gtkcombobox.c: (gtk_combo_box_class_init): changed signal 
2118         ocumentation: Mention that the GtkComboBoxEntry emits it when 
2119         he users types, not just when he selects from the list.
2120
2121 2006-02-10  Murray Cumming  <murrayc@murrayc.com
2122
2123         * gtk/gtkassistant.h: Correct the declaration of the prepare 
2124         default signal handler to match its registration and use.
2125
2126 2006-02-09  Ross Burton  <ross@burtonini.com>
2127
2128         * gtk/gtkfontbutton.c:
2129         Work out the font size in floating point, and display the font
2130         size with %g instead of %d (#317590)
2131
2132 2006-02-09  Tor Lillqvist  <tml@novell.com>
2133
2134         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
2135         <WM_MOUSELEAVE>: If we don't know where we went, and have
2136         generated a leave event, set current_window to the root
2137         window. This assures we will generate proper enter and leave
2138         events for popup windows. (#325521)
2139
2140 2006-02-08  John Ehresman  <jpe@wingware.com>
2141
2142         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
2143         <WM_MOUSEACTIVATE>
2144         * gdk/win32/gdkwindow-win32.c (show_window_internal)
2145         (gdk_window_raise): Call SetWindowPos() instead of
2146         SetForegroundWindow() or BringWindowToTop() if the window
2147         shouldn't accept focus. (#327375)
2148         
2149 2006-02-08  John Ehresman  <jpe@wingware.com>
2150
2151         * gdk/win32/gdkwindow-win32.c: Let gdk_window_set_decorations()
2152         take precedence over anything derived from hints. Restructure
2153         related code and logic, add some new helper functions. (#327217)
2154
2155 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
2156
2157         * gtk/gtkfilechooserbutton.c: Don't put relevant callss
2158         in g_assert().  (#329876, Kristian Rietveld)
2159
2160 2006-02-08  Tor Lillqvist  <tml@novell.com>
2161
2162         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab)
2163         (gdk_display_pointer_ungrab, gdk_keyboard_grab)
2164         (gdk_display_keyboard_ungrab): Consistenly use assign_object()
2165         when assigning GdkWindow pointers so that the ref counting doesn't
2166         get off whack.
2167
2168         (handle_stuff_while_moving_or_resizing): Don't use deprecated API.
2169
2170         (gdk_event_translate) <WM_MOUSEMOVE>: When the pointer is grabbed
2171         with owner_events FALSE, generate enter and leave events only for
2172         the grab window. (#321054)
2173
2174 2006-02-08  Kristian Rietveld  <kris@imendio.com>
2175
2176         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
2177         (gtk_tree_model_filter_unref_path): free temporary paths after
2178         usage (patch from maemo-gtk),
2179         (gtk_tree_model_filter_clear_cache): fix little typo in the docs
2180         (patch from maemo-gtk).
2181
2182         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
2183         stale FIXME.
2184
2185 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
2186
2187         * gtk/gtkfilesystem.c (gtk_file_info_copy): Copy the display_key
2188         as well.  (#330389, Markku Vire)
2189
2190 2006-02-08  Tor Lillqvist  <tml@novell.com>
2191
2192         * gtk-zip.sh.in: Drop the timestamp from the zipfile names.
2193
2194 2006-02-07  Sven Neumann  <sven@gimp.org>
2195
2196         * gdk/directfb/AUTHORS: updated mine and Dok's email address.
2197
2198 2006-02-06  Kristian Rietveld  <kris@gtk.org>
2199
2200         * gtk/gtktreeview.c (gtk_tree_view_get_search_entry): fix compiler
2201         warning.
2202
2203 2006-02-05  Dom Lachowicz <cinamod@hotmail.com>
2204
2205         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Bug #330022
2206         Wrong pixel values are computed when color = 0xFF and alpha = 0xFF
2207         
2208 2006-02-04  Michael Emmel  <mike.emmel@gmail.com>
2209         Added new directfb backend located in gdk/directfb
2210         plus patches to compile new backend
2211         compile with --with-gdktarget=directfb
2212
2213 2006-02-03  Federico Mena Quintero  <federico@ximian.com>
2214
2215         Work around https://bugs.freedesktop.org/show_bug.cgi?id=4320,
2216         which used to be our own
2217         http://bugzilla.gnome.org/show_bug.cgi?id=314616.  If one uses a
2218         pixmap for a pattern in Cairo, and sets the pattern to
2219         CAIRO_EXTEND_REPEAT; and if the destination surface is also a
2220         pixmap, Cairo does a slow copy instead of using XCopyArea().  So,
2221         we use the same code that we used in GTK+ 2.6 (pre-cairo), by
2222         filling the double-buffer pixmap with a tiled GC and
2223         XFillRectangle().
2224
2225         * gdk/gdkwindow.c (BackingRectMethod): New structure with a
2226         cairo_t and a GdkGC field.  Depending on which of these fields
2227         gets filled in, we'll use Cairo or GDK to clear the double-buffer
2228         pixmap when painting a window.
2229         (setup_backing_rect_method): Fill a BackingRectMethod as
2230         appropriate, depending on the window's configuration and our
2231         knowledge of whether Cairo is fast or slow when doing repeating
2232         patterns.
2233         (gdk_window_clear_backing_rect): Call
2234         setup_backing_rect_method().  Depending on what it returns, use
2235         Cairo to clear the double-buffer pixmap, or plain GDK.
2236
2237 2006-02-03  Matthias Clasen  <mclasen@redhat.com>
2238
2239         * gtk/gtklabel.c (get_layout_location): Fix handling
2240         of padding in RTL.  (#329099, Hooman Mesgary) 
2241
2242 2006-02-02  Matthias Clasen  <mclasen@redhat.com>
2243
2244         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
2245         Make drops on the root window work again.  (#145243, Andrew S. Dixon)
2246
2247 2006-02-01  Matthias Clasen  <mclasen@redhat.com>
2248
2249         * gtk/gtkwidget.c (gtk_widget_class_init): Wrap dnd signal
2250         docs to 80 columns.
2251
2252 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
2253
2254         * autogen.sh: Touch README and INSTALL here to pacify 
2255         automake.  (#329124, Kjartan Maraas, Tim Janik)
2256
2257 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
2258
2259         * gtk/gtk.symbols:
2260         * gtk/gtkassistant.h: 
2261         * gtk/gtkassistant.c: Actually implement visibility handling,
2262         and add gtk_assistant_update_buttons_state.
2263
2264         * tests/testassistant.c: Test visibility handling.
2265
2266 2006-01-31  Kristian Rietveld  <kris@imendio.com>
2267
2268         * gtk/gtkstyle.c (gtk_default_draw_flat_box): Add support for row
2269         hinting for the selected state.
2270
2271 2006-01-30  Matthias Clasen  <mclasen@redhat.com>
2272
2273         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
2274         Make sure the tree view is realized, since we grab the
2275         focus to it.  (#329144, Wouter Bolsterlee)
2276
2277         * gtk/gtkspinbutton.h: 
2278         * gtk/gtkspinbutton.c: Add a wrapped signal.  (#322933,
2279         Carlos Garnacho Parro)
2280
2281         * gtk/gtkassistant.c: More generous spacing. (#328082,
2282         Christian Persch, patch by Carlos Garnacho)
2283         
2284         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property): 
2285         Use the setter for active.  (#329208, Guillaume Cottenceau)
2286
2287         * docs/tools/widgets.c (get_all_widgets): Add GtkLinkButton
2288
2289         * gtk/gtkassistant.c (gtk_assistant_init): Move the
2290         last button to the left where it does not affect
2291         the positioning of forward/back.
2292
2293 2006-01-29  Matthias Clasen  <mclasen@redhat.com>
2294
2295         More GtkAssistant work, by Carlos Garnacho.
2296         
2297         * tests/testassistant.c: Additions.
2298
2299         * gtk/gtkassistant.c: Handle page visibility, other 
2300         small fixes.
2301
2302         * docs/tools/widgets.c: Add GtkAssistant.
2303
2304 2006-01-28  Behdad Esfahbod  <behdad@gnome.org>
2305
2306         * configure.in: If major.minor of required and available glib versions
2307         are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
2308
2309         * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
2310
2311 2006-01-28  Dom Lachowicz <cinamod@hotmail.com>
2312
2313         * modules/engines/ms-windows/msw-style.c: Re-sync with gtk-wimp
2314         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
2315         
2316 2006-01-28  Matthias Clasen  <mclasen@redhat.com>
2317
2318         * gtk/gtk.symbols: 
2319         * gtk/gtklinkbutton.h: 
2320         * gtk/gtklinkbutton.c: Allow to set a global hook function
2321         thats called whenever a link button is clicked.
2322
2323         More work on GtkAssistant by Carlos Garnacho:
2324         
2325         * demos/gtk-demo/Makefile.am: 
2326         * demos/gtk-demo/assistant.c: Add a  GtkAssistant demo.
2327
2328         * gtk/gtkassistant.c: Handle focus, several small fixes to the
2329         flow computations.
2330
2331 2006-01-27  Federico Mena Quintero  <federico@ximian.com>
2332
2333         Fixes bug #328820:
2334
2335         * gtk/gtkfilechooserdefault.c
2336         (gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
2337         the location dialog populated to "/".
2338         (tree_view_keybinding_cb): Likewise.
2339         (trap_activate_cb): Likewise.
2340
2341 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
2342
2343         * gtk/gtkcalendar.c (gtk_calendar_size_request): Use translated format
2344         strings for L10n in size calculation too.
2345
2346         * gtk/gtkcalendar.c (calendar_paint_week_numbers): Expand buffer to
2347         accomodate localized digits.
2348
2349 2006-01-26  Matthias Clasen  <mclasen@redhat.com>
2350
2351         * tests/prop-editor.c: Introspect child properties. too.
2352
2353 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
2354
2355         * gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
2356         Use contexed translated strings calendar:week:digits|%d and
2357         calendar:day:digits|%d to let translators choose localized digits for
2358         week and day numbers. (bug #317171, Hamed Malek)
2359
2360 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
2361
2362         * gtk/gtklabel.c (get_layout_location): Use logical extents of the
2363         layout instead of ink extents.  According to Pango docs, that's what
2364         should be used for placement.  Moreover, simply use
2365         pango_layout_get_pixel_size instead of getting the extents and
2366         dividing ourselves.
2367
2368 2006-01-25  Matthias Clasen  <mclasen@redhat.com>
2369
2370         * gtk/gtkentrycompletion.c: 
2371         * gtk/gtkentry.c: Be more careful when blocking signals. 
2372
2373         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
2374         set the cursor size if it is != 0.
2375
2376         * gtk/gtksettings.c (gtk_settings_class_init): Change the default value
2377         of gtk-cursor-theme-size to 0, meaning "use default".
2378
2379 2006-01-24  Kristian Rietveld  <kris@gtk.org>
2380
2381         #322591, Jonathan Blandford.
2382
2383         * gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
2384         (gtk_tree_view_set_search_entry),
2385         (gtk_tree_view_get_search_position_func),
2386         (gtk_tree_view_set_search_position_func): New functions,
2387         and small adaptions to the tree view code to allow for setting
2388         the entry and search position function.
2389
2390         * gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
2391         typedef, which is now in gtktreeview.h as
2392         GtkTreeViewSearchPositionFunc.  Add/update fields.
2393
2394         * gtk/gtk.symbols: Add new functions.
2395
2396         * tests/testtreesort.c: Add a little test for _set_search_entry().
2397
2398 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
2399
2400         Add GtkLinkButton, a port of GnomeHRef.  (#314808, Emmanuele Bassi)
2401         
2402         * gtk/gtklinkbutton.h: 
2403         * gtk/gtklinkbutton.c: New files.
2404
2405         * gtk/gtk.h:
2406         * gtk/gtk.symbols: 
2407         * gtk/Makefile.am: Glue.
2408
2409         * gtk/gtkaboutdialog.c: Use GtkLinkButton.
2410         
2411         * gtk/gtkwidget.c: Add link-color and visited-link-color style
2412         properties.  (#113649, Leena Gunda)
2413
2414         * gtk/gtkaboutdialog.c: Use the new style properties here instead
2415         of the about dialogs own link-color property. 
2416
2417 2006-01-23  Kristian Rietveld  <kris@gtk.org>
2418
2419         * gtk/gtktreemodel.c (gtk_tree_model_base_init): don't copy
2420         tree paths when emitting signals. (#325041, Matthias Clasen).
2421
2422 2006-01-23  Behdad Esfahbod  <behdad@gnome.org>
2423
2424         * gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
2425         text in ellipsized GtkLabel: use layout width if set, otherwise
2426         fallback to ink extents width. (#322042)
2427
2428 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
2429
2430         * gtk/gtkassistant.c (compute_last_button_state): Only show the
2431         last button if we can jump to the end. 
2432         (gtk_assistant_init): Make the spacing and button order more
2433         HIG compliant.
2434
2435         Fix drawing issues in progress bars.  (#328081, Christian Persch)
2436         
2437         * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Always
2438         request enough space. 
2439         (gtk_progress_bar_paint_activity) 
2440         (gtk_progress_bar_paint_continuous) 
2441         (gtk_progress_bar_paint_discrete): Clip when drawing the bar.
2442
2443 2006-01-23  Michael Natterer  <mitch@imendio.com>
2444
2445         * gtk/gtkcolorbutton.c: move destruction of the private GdkGC
2446         from finalize() to unrealize(). Fixes BadMatch on display change
2447         (bug #85715).
2448
2449 2006-01-22  Kristian Rietveld  <kris@gtk.org>
2450
2451         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
2452         commit after more searching in the bugzilla archives (see #309221).
2453
2454 2006-01-22  Kristian Rietveld  <kris@gtk.org>
2455
2456         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
2457         to gtk_tree_view_column_cell_set_cell_data, since we also set the
2458         cell data before iterating over the columns for exposure. (Fixes
2459         #322471, Duncan Coutts).
2460
2461 2006-01-21  Matthias Clasen  <mclasen@redhat.com>
2462
2463         * tests/testassistant.c: Add some tests for GtkAssistant
2464
2465         * tests/Makefile.am: Glue
2466
2467 2006-01-20  Matthias Clasen  <mclasen@redhat.com>
2468
2469         * gtk/gtkassistant.c: Fix the docs to reflect the actual signal
2470         signatures.
2471
2472         * gtk/gtktextview.c (gtk_text_view_set_virtual_cursor_pos): Don't
2473         crash if layout is NULL.  (#327934, Christian Kirbach)
2474
2475 2006-01-20  Dan Winship  <danw@novell.com>
2476
2477         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
2478         tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
2479         "Open Location" window on "~" as well as "/". #153213
2480         (location_entry_create): Fix this so autocompletion still works
2481         correctly in that case.
2482
2483 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
2484
2485         * configure.in: Explicitly link against Xrender.  
2486         (#327538, Christophe Belle)
2487         
2488         * gdk/x11/gdkprivate-x11.h (XID_FONT_BIT): 
2489         * gdk/x11/gdkfont-x11.c: 
2490         * gdk/x11/gdkxid.c: Use an unused high bit in the
2491         XID to mark fonts in the global xid hash table.
2492
2493         * gdk/x11/gdkcursor-x11.c (update_cursor): Skip fonts
2494         when iterating over the xid hash table, since calling
2495         GDK_IS_WINDOW () on an GdkFont can cause a segfault.
2496         (#327751, Ryan Lovett)
2497
2498 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
2499         
2500         * gtk/gtkassistant.[hc]: Use a priv pointer for
2501         cheap access to the priv struct.  (#327725, Christian
2502         Persch)
2503
2504         * gtk/gtkassistant.h: Fix line endings.
2505
2506 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
2507
2508         * gtk/gtkassistant.[hc]: Add GtkAssistant, a widget to
2509         construct multi-step wizards.  (#115348, Martyn Russell, 
2510         Matthias Clasen, Carlos Garnacho Parro)
2511
2512         * gtk/gtk.symbols:
2513         * gtk/Makefile.am: 
2514         * gtk/gtk.h: Necessary glue.
2515
2516 2006-01-18  Anders Carlsson  <andersca@imendio.com>
2517
2518         * gdk/quartz/gdkevents-quartz.c:
2519         (get_mm_from_pixels):
2520         (gdk_screen_get_width_mm):
2521         (gdk_screen_get_height_mm):
2522         Implement these functions.
2523         (#327228, Thomas Broyer).
2524
2525 2006-01-18  Anders Carlsson  <andersca@imendio.com>
2526
2527         * gdk/quartz/gdkdrawable-quartz.c:
2528         (gdk_quartz_draw_polygon):
2529         (gdk_quartz_draw_lines):
2530         Implement these functions.
2531         (#327226, Thomas Broyer)
2532         
2533 2006-01-18  Anders Carlsson  <andersca@imendio.com>
2534
2535         * gdk/quartz/gdkkeys-quartz.c:
2536         (maybe_update_keymap):
2537         Support non-MacRoman keyboard layouts.
2538         (#322585, Wolfgang Thaller)
2539         
2540 2006-01-18  Anders Carlsson  <andersca@imendio.com>
2541
2542         * gdk/quartz/gdkmain-quartz.c:
2543         (_gdk_windowing_init):
2544         Make the process a foreground application.
2545         (#322481, Wolfgang Thaller)
2546         
2547 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
2548
2549         * gtk/gtkrbtree.c: 
2550         * gtk/gtktreemodel.c: Fix several g_new() calls which
2551         were using extra indirections or pointless casts.  
2552         (#327423, Morten Welinder)
2553
2554 Tue Jan 17 19:27:59 2006  Tim Janik  <timj@imendio.com>
2555
2556         * gtk/gtkprogress.c: fix adopted from maemo-gtk.
2557         gtk_progress_create_pixmap(): clear out the newly created offscreen 
2558         pixmap, so themes making use of transparency don't draw onto garbage.
2559
2560 2006-01-17  Michael Natterer  <mitch@imendio.com>
2561
2562         * gtk/gtkbutton.c: remove the "child-spacing" style property again
2563         and add "inner-border" instead. That's far more flexible and
2564         "child-spacing" was a bad name anyway.
2565
2566 2006-01-17  Michael Natterer  <mitch@imendio.com>
2567
2568         * configure.in (ALL_LINGUAS): remove "ang" again until all po
2569         files are there.
2570
2571 2006-01-16  Abel Cheung  <maddog@linuxhall.org>
2572
2573         * configure.in: Added "ang" "zh_HK" to ALL_LINGUAS.
2574
2575 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
2576
2577         * README.in: Mention new pixbuf engine features.
2578
2579         * gtk/gtk.symbols: 
2580         * gtk/gtkradioaction.[hc]: Add a current-value property and a
2581         setter for it.  (#322735, Jorn Baayen)
2582         
2583 2006-01-16  Michael Natterer  <mitch@imendio.com>
2584
2585         * gtk/gtkbutton.c: applied patch from maemo-gtk which adds a
2586         child-spacing style property. Fixes bug #327202.
2587
2588 2006-01-16  Anders Carlsson  <andersca@imendio.com>
2589
2590         * gdk/quartz/gdkdisplay-quartz.c:
2591         * gdk/quartz/gdkevents-quartz.c:
2592         (gdk_keyboard_grab):
2593         (gdk_display_keyboard_ungrab):
2594         (gdk_keyboard_grab_info_libgtk_only):
2595         (find_window_for_event):
2596         Implement keyboard grabs.
2597         
2598         (_gdk_quartz_send_map_events):
2599         * gdk/quartz/gdkmain-quartz.c:
2600         * gdk/quartz/gdkprivate-quartz.h:
2601         New function that synthesizes map events.
2602         
2603         * gdk/quartz/gdkwindow-quartz.c:
2604         (_gdk_windowing_window_init):
2605         The root window is always visible.
2606         
2607         (all_parents_shown):
2608         (show_window_internal):
2609         Send map events.
2610         
2611         (gdk_window_hide):
2612         Ungrab keyboard and pointer
2613
2614 2006-01-15  Kristian Rietveld  <kris@gtk.org>
2615
2616         Fixes #324099, Tommi Komulainen.
2617
2618         * gtk/gtktreestore.[ch] (gtk_tree_store_insert_with_values),
2619         (gtk_tree_store_insert_with_valuesv): new functions, analog to
2620         those found in GtkListStore.
2621
2622         * gtk/gtktreestore.c (gtk_tree_store_real_set_value),
2623         (gtk_tree_store_set_valist), (gtk_tree_store_set_valist_internal),
2624         (gtk_tree_store_sort_iter_changed): refactored.
2625
2626         * gtk/gtk.symbols: updated.
2627
2628         * tests/treestoretest.c: added a test for this new functionality.
2629
2630 2006-01-14  Matthias Clasen  <mclasen@redhat.com>
2631
2632         * gtk/gtkentry.c (gtk_entry_drag_data_received): Remove 
2633         an unused variable.
2634
2635         * gtk/gtkiconfactory.c (get_default_icons): Register RTL 
2636         versions of the indent and unindent icons.  (#326857,
2637         Itai Bar-Haim)
2638
2639         * gtk/Makefile.am (STOCK_ICONS): And add them here.
2640
2641         Fix a crash with combo boxes in RESIZE_IMMEDIATE
2642         containers.  (#326806, Sebastian Bacher)
2643         
2644         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate) 
2645         (gtk_combo_box_size_request): Don't call 
2646         gtk_combo_box_check_appearance() from here, as that 
2647         can lead to recursion. 
2648         (gtk_combo_box_init): Instead, call it here.
2649
2650 2006-01-14  Kristian Rietveld  <kris@gtk.org>
2651
2652         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_iter_children): fix
2653         a typo which caused this whole thing to not function ...
2654
2655 2006-01-14  Kristian Rietveld  <kris@gtk.org>
2656
2657         * gtk/gtktreeview.c (gtk_tree_view_size_allocate),
2658         (validate_visible_area): fixup adjustments and top_row if the
2659         current dy + page_size exceeds the new tree view height. (Fixes
2660         #316689, reported by Chris Lord).
2661
2662 2006-01-13  Matthias Clasen  <mclasen@redhat.com>
2663
2664         * */abicheck.sh: Make this work on more platforms.
2665
2666 2006-01-13  Kristian Rietveld  <kris@imendio.com>
2667
2668         * tests/testtreefocus.c (set_indicator_size), (main): add a little
2669         test for the newly introduced indicator-size property.
2670
2671 2006-01-13  Kristian Rietveld  <kris@imendio.com>
2672
2673         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
2674         initialize the inconsistent field in the private structure,
2675         (gtk_cell_renderer_toggle_class_init),
2676         (gtk_cell_renderer_toggle_{set,get}_property),
2677         (gtk_cell_renderer_toggle_get_size): introduce a indicator-size
2678         property.
2679
2680 2006-01-13  Michael Natterer  <mitch@imendio.com>
2681
2682         * gtk/gtktreeview.c (gtk_tree_view_real_expand_row)
2683         (gtk_tree_view_real_collapse_row): don't animate the expander
2684         arrows if gtk-enable-animations is FALSE (bug #142582).
2685
2686 2006-01-12  Matthias Clasen  <mclasen@redhat.com>
2687
2688         * gtk/gtknotebook.c: Replace hardcoded values for tab-overlap and
2689         tab-curvature with style properties.  (#325282, Alexander Nedotsukov)
2690
2691         * gtk/gtktextview.c (gtk_text_view_commit_text) 
2692         (gtk_text_view_delete_from_cursor, gtk_text_view_backspace): 
2693         Reset the virtual cursor position.  (#326003, Evert Verhellen)
2694
2695         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add some docs
2696         about RGBA windows. (#326486, Benjamin Otte)
2697
2698 2006-01-12  Michael Natterer  <mitch@imendio.com>
2699
2700         * gdk/gdkimage.c (scratch_image_info_for_depth): connect to the
2701         display's "closed" signal and free the cached scratch images upon
2702         display closing (bug #85715).
2703
2704 2006-01-12  Michael Natterer  <mitch@imendio.com>
2705
2706         * gtk/gtkexpander.c (gtk_expander_set_expanded): skip the
2707         animation if the gtk-enable-animations setting is FALSE
2708         (bug #142582).
2709
2710 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
2711
2712         * gtk/gtklabel.c: Fix a C99ism (#326658, Kazuki Iwamoto)
2713
2714 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
2715
2716         * gtk/gtklabel.c: Add some notify batching, always
2717         emit notify after setting the new value.
2718
2719         * gtk/gtkmessagedialog.c: Add properties.  (#311254,
2720         Johan Dahlin)
2721         (gtk_message_dialog_new): Remove some redundant code, pointed
2722         out by Gustavo Carneiro.
2723
2724         * gdk/x11/gdkwindow-x11.c (create_moveresize_window): Clean
2725         up properly if the grab fails.
2726         (finish_drag): Don't leak a reference to moveresize_window
2727         here.
2728
2729 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
2730
2731         * gdk/x11/gdkevents-x11.c: Fix string offsets.
2732
2733         Allow falling back to another icon theme before 
2734         hicolor.   (#325546, Rodney Dawes)
2735         
2736         * gtk/gtksettings.c: Add a gtk-fallback-icon-theme setting.
2737
2738         * gdk/x11/gdkevents-x11.c: Map it to the XSetting Net/FallbackIconTheme.
2739         
2740         * gtk/gtkicontheme.c: Consult the fallback icon theme before
2741         looking in hicolor. 
2742
2743 2006-01-10  Matthias Clasen  <mclasen@redhat.com>
2744
2745         * tests/testgtk.c: Add an expander example.
2746
2747         * gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
2748         when losing the focus.  (#326064, Andrew Conkling)
2749
2750         * gtk/gtkimmulticontext.c: 
2751         * gtk/gtkhsv.c: 
2752         * gtk/gtkhandlebox.c: Convert to use instance private data.
2753
2754         * gtk/gtk.h: Remove duplicate include.  (#326429, 
2755         Benoît Carpentier)
2756
2757         * gtk/gtkpaned.c: Convert to use instance private data.
2758
2759 2006-01-10  Michael Natterer  <mitch@imendio.com>
2760
2761         * gdk/gdkpango.c (on_renderer_display_closed): disconnect from the
2762         right object ("closed" is emitted by the display, not the screen).
2763         (bug #85715)
2764
2765 2006-01-10  Anders Carlsson  <andersca@imendio.com>
2766
2767         * gdk/quartz/gdkproperty-quartz.c:
2768         (ensure_atom_tables):
2769         (intern_atom_internal):
2770         (gdk_atom_intern):
2771         (gdk_atom_intern_static_string):
2772         (gdk_atom_name):
2773         Implement local-only atoms.
2774
2775 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
2776
2777         * gdk/gdkgc.c (gc_get_foreground): Correct a warning.
2778         (#326341, Benoît Carpentier)
2779
2780         * gtk/gtk.symbols:
2781         * gtk/gtkwindow.h:
2782         * gtk/gtkwindow.c (gtk_window_get_group): Make this function
2783         public API.  (#307099, Todd Berman)
2784
2785         * gtk/gtkmenu.c: 
2786         * gtk/gtkmain.c: 
2787         * gtk/gtkentrycompletion.c: 
2788         * gtk/gtkcombo.c: 
2789         * gtk/gtkcombobox.c: Update all callers.
2790
2791         * gtk/gtkentry.c (paste_received):  Make GtkEntryCompletion
2792         complete on pastes at the end.  (#165714, Christian Neumair)
2793
2794         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
2795         Prevent the first row being focused on map.  (#137351,
2796         Niklas Knutsson)
2797
2798 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
2799
2800         * gtk/gtk.symbols:
2801         * gtk/gtkeditable.h:
2802         * gtk/gtksizegroup.c: (gtk_size_group_get_widgets):
2803         * gtk/gtksizegroup.h:
2804         (struct _GtkSizeGroup): 
2805
2806         Add gtk_size_group_get_widgets, fixes #326324.
2807         Also mark all fields of GtkSizeGroup as private
2808
2809 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
2810
2811         * gtk/gtktextlayout.c (gtk_text_layout_finalize): Don't
2812         leak preedit_string and preedit_attrs.  (#322332, Paolo
2813         Borelli)
2814
2815         * gtk/gtk.symbols:
2816         * gtk/gtkaction.h: 
2817         * gtk/gtkaction.c (gtk_widget_get_action): New function to
2818         get the action for a proxy.  (#326288)
2819
2820         * gtk/gtkaction.c: Go back to the old key for attaching the
2821         action to the proxy.  (#326288, Diego González)
2822
2823 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
2824
2825         * gtk/gtkactiongroup.c (dgettext_swapped): Don't translate
2826         empty strings.  (#326200, Christian Stimming)
2827
2828 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
2829
2830         * gtk/gtkentry.[hc]: 
2831         * gtk/gtklabel.[hc]: Shrink the private structs of these a bit.
2832
2833         * gtk/gtklabel.c (get_layout_location): Fix label alignment 
2834         when width-chars is set.  (#326098, Benjamin Otte)
2835
2836         * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the 
2837         single-rectangle case.  (#326127, Benjamin Berg)
2838         (gdk_region_copy): Use miRegionCopy() here.
2839
2840 2006-01-07  Matthias Clasen  <mclasen@redhat.com>
2841
2842         Fix actiongroup-action interaction that relied on 
2843         actions connecting to notify on themselves:
2844         
2845         * gtk/gtkaction.[hc]: Factor out the code updating the
2846         visibility/sensitivity of proxies into _gtk_action_sync_visible()
2847         and _gtk_action_sync_sensible().
2848
2849         * gtk/gtkactiongroup.c: Call the new functions when the
2850         group visibility/sensitivity changes. 
2851
2852 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
2853
2854         * gtk/gtkactiongroup.c (gtk_action_group_set_sensitive) 
2855         (gtk_action_group_set_visible): Add missing property change
2856         notification.
2857
2858 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
2859
2860         * gtk/gtkfilechooserbutton.c (model_add_special): Just use the
2861         directory name for the home dir.  (#325817, Federico Mena Quintero)
2862         
2863         * gtk/gtktexttag.c (gtk_text_attributes_new): Initialize editable 
2864         to TRUE. 
2865         (gtk_text_tag_class_init): The default value for the direction 
2866         property is GTK_TEXT_DIR_NONE. Add notes about the initial values 
2867         of the font and language properties.
2868
2869         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Make clicked
2870         an action signal.  (#325782, Martyn Russell)
2871
2872         * gtk/gtkviewport.c (viewport_set_adjustment): Disconnect from
2873         the old adjustments signals.  (#325869, Jorn Baayen)
2874
2875 2006-01-06  Hans Breuer  <hans@breuer.org>
2876
2877         * tests/makefile.msc : added a bunch of tests
2878         * tests/testcellrenderertext.c : use g_snprintf()
2879         * tests/testfilechooserbutton.c : don't include unistd.h twice.
2880         Removed the unconditional one and added direct.h for G_OS_WIN32
2881         
2882 2006-01-05  Hans Breuer  <hans@breuer.org>
2883
2884         * gdk/makefile.msc : also recurse into win32 for ::clean
2885         * gtk/makefile.msc.in : create gtkbuiltincache.h (most code
2886         to simulate links) and file renames
2887
2888 2006-01-05  Johan Dahlin  <jdahlin@async.com.br>
2889
2890         * gtk/gtkprogressbar.c: Set minimum for activity-step property to 0
2891         instead of -G_MAXUINT.
2892         
2893 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
2894
2895         * gtk/gtkwindow.c: Only connect to the event if we have
2896         a frame, since the handler is only relevant in that case.
2897
2898         * gtk/gtkaction.c (connect_proxy, disconnect_proxy): 
2899         Use a weak reference rather than the destroy signal to track 
2900         proxies going away.
2901
2902         * gtk/gtkbindings.c (binding_signal_new): Revert the last change.
2903
2904         * gtk/gtkaction.c (gtk_action_sync_property): 
2905         (gtk_action_sync_stock_id): Removed.
2906
2907 2006-01-05  Rodrigo Moya <rodrigo@novell.com>
2908
2909         * gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
2910         signal and arguments.
2911
2912 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
2913
2914         * gtk/gtklabel.c (gtk_label_grab_focus): Don't return a value from
2915         a void function.
2916
2917 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
2918
2919         * gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
2920         changes.
2921         
2922         * gtk/gtkbindings.c: Use the slice allocator and allocate signal
2923         and arguments in one block.
2924
2925         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
2926         a list of NULLs.  (#325723, Steve Chaplin)
2927
2928 2006-01-04  Rodrigo Moya <rodrigo@novell.com>
2929
2930         * gtk/gtkbindings.c (binding_signal_new): guard against multiplying
2931         by -1 (when n_args is 0).
2932
2933 2006-01-04  Michael Natterer  <mitch@imendio.com>
2934
2935         * gtk/gtkmenutoolbutton.c
2936         (gtk_menu_tool_button_set_menu)
2937         (gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
2938         and gtk_menu_detach() instead of reffing/unreffing the menu
2939         manually. Also fixes brokenness on screen change (bug #85715).
2940
2941 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
2942
2943         * gtk/gtkaccelmap.c: 
2944         * gtk/gtkactiongroup.c: 
2945         * gtk/gtkdialog.c: 
2946         * gtk/gtkfilesystemunix.c: 
2947         * gtk/gtkgc.c: 
2948         * gtk/gtkkeyhash.c: 
2949         * gtk/gtkplug.c: 
2950         * gtk/gtktextiter.c: 
2951         * gtk/gtktextlayout.c: 
2952         * gtk/gtkuimanager.c: 
2953         * gtk/gtkwidget.c: 
2954         * gtk/gtkwindow.c: 
2955         * gtk/gtkxembed.c: Use the slice allocator for many small 
2956         allocations.
2957
2958         * gtk/gtkcolorsel.c: 
2959         * gtk/gtktreeview.c: Use IPN.
2960
2961         * gtk/gtkwidget.c: Remove an unused field from the AccelPath 
2962         struct.
2963
2964 2006-01-04  Tor Lillqvist  <tml@novell.com>
2965
2966         * gtk-zip.sh.in: Include also the gtk20-properties message catalogs.
2967
2968 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
2969         
2970         * gtk/gtkdnd.c: Make it compile
2971
2972         * gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
2973         for non-motion events.  (#325443, Peter Harvey)
2974
2975         * gtk/gtkaction.c: Avoid connecting to notify on our own
2976         properties. 
2977
2978 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
2979
2980         * gtk/gtkentry.c (gtk_entry_delete_from_cursor): When deleting
2981         words, delete preceding whitespace as well.  (#325358,  Akkana Peck)
2982
2983 2006-01-02  Anders Carlsson  <andersca@imendio.com>
2984
2985         * gdk/quartz/GdkQuartzWindow.c:
2986         (-[GdkQuartzWindow canBecomeMainWindow]):
2987         (-[GdkQuartzWindow canBecomeKeyWindow]):
2988         Have these return TRUE
2989         
2990         * gdk/quartz/gdkevents-quartz.c:
2991         (pointer_grab_internal):
2992         Remove FIXME
2993         
2994         (find_child_window_by_point_helper):
2995         Fix bug in offset calculation
2996         
2997         (find_window_for_event):
2998         Use grab window toplevel when a grab is in effect
2999         
3000         (gdk_event_translate):
3001         Don't call _gdk_event_button_generate on mouse up
3002         
3003         * gdk/quartz/gdkgc-quartz.c:
3004         (_gdk_quartz_gc_new):
3005         Fix indentation
3006         
3007         * gdk/quartz/gdkwindow-quartz.c:
3008         (gdk_window_new):
3009         Make TEMP windows borderless
3010         
3011         (gdk_window_hide):
3012         Hide window
3013         
3014         (gdk_window_get_origin):
3015         Implement
3016         
3017 2006-01-02  Tor Lillqvist  <tml@novell.com>
3018
3019         * gdk/win32/gdkwindow-win32.c
3020         (gdk_window_impl_win32_get_visible_region): Make identical to the
3021         X11 implementation. (#322264, John Ehresman)
3022
3023         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
3024         invalidated region from ScrollWindowEx() instead of an incorrect
3025         attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
3026
3027         * gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
3028
3029         * gdkprivate-win32.h: Declare it.
3030
3031 2005-12-31  Matthias Clasen  <mclasen@redhat.com>
3032
3033         * gtk/gtkaction.c: 
3034         * gtk/gtkentry.c: Connect to notify instead of multiple
3035         detailed signals.
3036
3037 2005-12-30  Matthias Clasen  <mclasen@redhat.com>
3038
3039         * gdk/gdk.symbols: 
3040         * gdk/gdkcairo.h: 
3041         * gdk/gdkcairo.c: Add gdk_cairo_set_source_pixmap.  (#318805,
3042         Alexander Larsson)
3043
3044         * gdk/gdkdisplaymanager.c (gdk_display_manager_set_property): Call
3045         gdk_display_manager_set_default_display() to change the default
3046         display.  (#153623, Stefan Kost)
3047
3048         * gtk/gtkmessagedialog.c (gtk_message_dialog_init):
3049          (setup_type): Alert dialogs should not have titles and should 
3050         not be displayed in the taskbar.  (#310443, Carlos Garnacho Parro,
3051         Dennis Cranston)
3052
3053 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
3054
3055         * gtk/gtkliststore.c: 
3056         * gtk/gtktreestore.c: Always call the get_path and get_iter
3057         implementations directly, rather than the current mixture whith
3058         some calls going through the GtkTreeModel interface.
3059
3060         * gtk/gtktreemodelsort.c: 
3061         * gtk/gtkliststore.c: 
3062         * gtk/gtktreestore.c: Remove excessive g_return_if_fail() checks
3063         in static functions.
3064         
3065         * gtk/gtktreedatalist.c: Use the slice allocater for 
3066         GtkTreeDataSortHeader.
3067
3068         * gtk/gtktreedatalist.h: 
3069         * gtk/gtktreedatalist.c (_gtk_tree_data_list_set_header): New function.
3070
3071         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): 
3072         * gtk/gtkliststore.c (gtk_list_store_set_sort_func): 
3073         * gtk/gtktreestore.c (gtk_tree_store_set_sort_func): Use it here.
3074
3075 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
3076
3077         * gtk/gtkbindings.h (GtkBindingSignal): 
3078         * gtk/gtkbindings.c (binding_signal_new): Make the
3079         args a flexible array inside the struct, and allocate them
3080         together.
3081
3082 Wed Dec 28 00:45:46 2005  Tim Janik  <timj@gtk.org>
3083
3084         * gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
3085         clist rows which crashes in gslice later on.
3086
3087 2005-12-27  Federico Mena Quintero  <federico@ximian.com>
3088
3089         * gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
3090         FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
3091         not NULL.  Fixes bug #317687.
3092
3093 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
3094
3095         * gdk/x11/gdkevents-x11.c (check_transform): Fix a typo.
3096         (gdk_screen_get_setting): Avoid relocations for the settings
3097         map.
3098
3099         * gdk/x11/gdkproperty-x11.c: Avoid relocations for the list
3100         of standard atoms.
3101
3102         * gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
3103         the set_name by interning it.
3104
3105 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
3106
3107         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Precache atoms
3108         before calling gdk_window_new().
3109
3110         * gtk/gtktextbtree.c: Use the slice allocator for some other small
3111         auxiliary structures as well.
3112
3113         * gtk/gtkimcontext.c (gtk_im_context_filter_keypress): Clarify
3114         docs.  (#324996)
3115
3116         * gtk/gtktextbtree.c (gtk_text_btree_get_tag_info) 
3117         (gtk_text_btree_remove_tag_info): Use the slice allocator for 
3118         tag info.
3119
3120         * README.in: Mention the stripping of (_F) suffixes.
3121
3122         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of 
3123         the form "(_<single character>)", since this is the preferred way
3124         for some languages to indicate accelerators.  (#323956, Yang Hong)
3125
3126         * gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
3127         setting.
3128         (gtk_label_grab_focus): And use it here to select the contents of
3129         the label when appropriate.
3130         (gtk_label_class_init): Use the same keybindings for select all/
3131         unselect all as GtkEntry and GtkTextView.
3132
3133         * gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
3134         focus, avoid leaving a selection in a label.
3135
3136 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
3137
3138         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
3139         Ross Burton)
3140
3141         * configure.in: Require GLib 2.9.2
3142
3143 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
3144
3145         * gdk/gdkregion-generic.c: 
3146         * gdk/gdkpolyreg-generic.c: 
3147         * gdk/gdkregion.h: 
3148         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
3149         extra allocation for rectangular regions.
3150
3151 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
3152
3153         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
3154
3155 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
3156
3157         * gtk/gtkobject.h: parent type fixups in structure declarations.
3158
3159 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
3160
3161         * gtk/gtkobject.c: derive GtkObject from GUnowned,
3162         so it initially has a floating reference count.
3163         gtk_object_class_init(): installa floating flag handler with
3164         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
3165         in the ->flags member.
3166
3167         * tests/floatingtest.c: test floating flag uses.
3168
3169 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
3170
3171         * gdk/gdkregion-generic.c: Use the slice allocator
3172         for regions. Still todo: avoid extra allocations for
3173         the single-rectangle case.
3174
3175         * gtk/gtksettings.c (gtk_settings_class_init): Update
3176         class_n_properties after installing color-hash, since
3177         other classes install settings, too.
3178
3179         * gtk/gtkctree.c: 
3180         * gtk/gtkclist.c: Fix some mistakes in the conversion
3181         from mem chunks to slice allocator.
3182
3183         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
3184         wrap-width also if an explicit item width is set.  
3185         (#322475, Alex Graveley)
3186         
3187 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
3188
3189         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
3190         pressed_button to -1 after handling a double click, so that
3191         motion events occurring between here and the release event
3192         don't trigger DND.  (#324588, Dave Andreoli)
3193
3194 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
3195
3196         * gtk/gtkcellrenderer.c: 
3197         * gtk/gtkselection.c: 
3198         * gtk/gtkcalendar.c: 
3199         * gtk/gtkitemfactory.c: 
3200         * gdk/gtkcombo.c: 
3201         * gdk/gdkpixbuf-render.c: Documentation updates
3202
3203         * gtk/gtktreemodel.c: 
3204         * gtk/gtkplug.c: 
3205         * gtk/gtkwindow.c: Documentation fixes.
3206
3207 2005-12-19  Michael Natterer  <mitch@imendio.com>
3208
3209         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
3210         which, when enabled, truncates multi-line pastes or drops to their
3211         first line. Fixes bug #322252.
3212
3213         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
3214         truncate-multiline here.
3215
3216 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
3217
3218         * gtk/gtksettings.c (get_color_hash): Don't crash if
3219         there is no color scheme.  (#324429, Diego Gonzalez)
3220
3221 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
3222
3223         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
3224         * gtk/gtkimmodule.c (gtk_im_module_load): 
3225         * gtk/gtkthemes.c (gtk_theme_engine_load): 
3226         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
3227         opening modules.
3228
3229         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
3230         is inherited. Now the overriding is done on a per-color basis,
3231         rather than for the setting as a whole. This has the effect
3232         that themes can declare defaults for all the symbolic colors they
3233         use by specifying a value for the gtk-color-scheme setting in 
3234         their rc file, while still allowing the XSetting to override
3235         "standard" symbolic colors. The hash table is now available
3236         through the color-hash property.
3237         
3238         * gtk/gtkrc.c: Use the new color-hash property.
3239         
3240 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
3241
3242         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
3243         children when doing focus sorting.  (#323995, Dan Winship)
3244
3245 2005-12-14  Rodney Dawes  <dobey@novell.com>
3246
3247         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
3248         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
3249         (get_icon_for_mime_type): Look up the mime type icons according to the
3250         Icon Naming Specification and then fall back to the gnome-mime- prefix
3251         for the mime type icons
3252
3253         Fixes #323655
3254         
3255 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
3256
3257         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
3258         cannot be loaded.  (#323504, Kjartan Maraas)
3259
3260         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
3261         for the row-activated signal.  (#324044, Davyd Madeley)
3262
3263 2005-12-14  Michael Natterer  <mitch@imendio.com>
3264
3265         * tests/test-images/valid_jpeg_progressive_test: new test image.
3266
3267 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
3268
3269         * README.in: added a link to the floating reference docs in the
3270         2.10 release NEWS section.
3271
3272 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
3273
3274         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
3275         Speed this function up, using the fact that visibility is 
3276         constant across segments. (#321548, Paolo Borelli)
3277
3278         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
3279         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
3280         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
3281
3282         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
3283         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
3284         upon initial theme load.  (#323876, Peter Lund)
3285
3286         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
3287         the size-changed signal correctly.  (#323848, Murray Cumming)
3288
3289         * gtk/gtkmarshalers.list: Add necessary marshaller.
3290
3291         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
3292         fall thru to the wrong window types.  (#323843)
3293
3294         Make the gtk-color-scheme setting work.
3295         
3296         * gtk/gtksettings.h: 
3297         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
3298         that takes care of initializing the color hash if it is not 
3299         already there.  
3300
3301         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
3302         And use it here.        
3303
3304 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
3305
3306         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
3307         not if it succeeds. 
3308
3309 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
3310
3311         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
3312         leak list[0].  (#323629, Markku Vire)
3313
3314         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
3315         when freeing the RequestData.  (#323577)
3316
3317 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
3318
3319         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
3320         leak text.
3321
3322         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
3323         variable name clash.  (#323475, Ross Burton)
3324
3325 2005-12-07  Ross Burton  <ross@burtonini.com>
3326
3327         * docs/reference/gtk/tmpl/gtkenums.sgml:
3328         * gtk/gtktoolbutton.c:
3329         If the toolbar mode is ICONS and there is no icon set then show
3330         the label, and vice versa (#322019)
3331
3332 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
3333
3334         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
3335         variable name clash.  (#323475, Ross Burton)
3336
3337         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
3338         window when synthesizing the key event.  (#323077,
3339         Sadrul Habib Chowdhury)
3340         
3341         (gtk_tree_view_search_key_press_event): Also listen for
3342         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
3343
3344         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
3345         Only scroll if we have focus.  (#316310, Paolo Borelli)
3346
3347         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
3348         spotted by Crispin Flowerday.
3349
3350 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
3351
3352         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
3353         hinting on (part of #307196)
3354
3355 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
3356
3357         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
3358         commit from reset, it upstets GtkTextView.
3359
3360         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
3361         careful when turning blinking on and off.
3362         (gtk_text_view_focus_out_event): Make the cursor really invisible
3363         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
3364         (cursor_blinks): Check the gtk-cursor-blink setting first.
3365
3366         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
3367         issues with new_event and its window.
3368
3369         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
3370         as a detach func.  (#323386, Jorn Baayen)
3371
3372         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
3373         the libdate routines.  (#323045, Kazuki Iwamoto)
3374
3375         * gdk/gdk.c (gdk_parse_args): 
3376         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
3377         from g_option_context_parse(). 
3378
3379 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
3380
3381         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
3382         initialization.
3383
3384 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
3385
3386         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
3387         compiles again.
3388
3389 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
3390
3391         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
3392         modifiers", not "event->state && modifiers".  Patch by Sadrul
3393         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
3394
3395 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
3396
3397         * gtk/gtkwidget.c: 
3398         * gtk/gtkuimanager.c: 
3399         * gtk/gtktreedatalist.c: 
3400         * gtk/gtktext.c: 
3401         * gtk/gtkmain.c: 
3402         * gtk/gtkitemfactory.c: 
3403         * gtk/gtkseparator.[hc]:
3404         * gtk/gtkclist.[hc]: 
3405         * gtk/gtkctree.c:
3406         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
3407
3408 2005-12-05  Michael Natterer  <mitch@imendio.com>
3409
3410         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
3411         "timeout-initial", "timeout-repeat", "color-scheme" and
3412         "enable-animations" to X settings.
3413
3414 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
3415
3416         * gdk/gdkevents.c: 
3417         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
3418
3419         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
3420         after sending it to the search entry.  (#323209, Crispin Flowerday)
3421
3422         * README.in: Add a note about GTK_FLOATING.
3423
3424         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
3425
3426 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
3427
3428         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
3429         a pixbuf.  (#323024, Paolo Borelli)
3430
3431 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
3432
3433         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
3434         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
3435
3436 2005-12-02  Michael Natterer  <mitch@imendio.com>
3437
3438         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
3439         adds a "horizontal-padding" style property. Fixes bug #323036.
3440
3441 2005-12-01  Michael Natterer  <mitch@imendio.com>
3442
3443         Merged modified patch from maemo-gtk that allows to disable
3444         toolbar animations. Addresses bug #142582.
3445
3446         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
3447         (patch from Christian Neumair)
3448
3449         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
3450         property is FALSE. Replaced the individual "notify::foo"
3451         connections to GtkSettings by a single "notify" callback and
3452         dispatch internally.
3453
3454 2005-12-01  Michael Natterer  <mitch@imendio.com>
3455
3456         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
3457         assignment of widget_class->motion_notify_event
3458
3459 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
3460
3461         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
3462         an active property.  (#322673, Jorn Baayen)
3463
3464         Properly handle model changes in GtkTreeSelection: (#322569,
3465         Milosz Derezynski)
3466         
3467         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
3468         Get a reference to the model, and stop the iteration if the model
3469         of the treeview is changed on the way.
3470
3471         * gtk/gtktreeprivate.h: 
3472         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
3473         private function to emit the GtkTreeSelection::changed signal.
3474
3475         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
3476         _gtk_tree_selection_emit_changed() when the model changes.
3477
3478 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
3479
3480         Fixes the critical warnings from bug #317999, thus fixing the bug
3481         completely:
3482
3483         * gtk/gtkfilechooserdefault.c
3484         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
3485         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
3486         impl->current_folder directly.  The latter may be null if we are
3487         in RELOAD_NONE state.
3488
3489 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
3490
3491         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
3492
3493         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
3494         current_folder to the pending select paths here; the path bar will
3495         give it to us now.
3496         (path_bar_clicked): Add the child_path to the pending select paths
3497         here.
3498         (show_and_select_paths): Don't filter out folders.
3499         (show_and_select_paths): Don't take separate arguments for
3500         only_one_path and multiple paths.
3501
3502         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
3503         New test about preserving the filters when we change folders.
3504
3505 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
3506
3507         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
3508         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
3509
3510         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
3511         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
3512         Milosz Derezynski)
3513
3514         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
3515         handle the cell list and indices into it.  (#321856)
3516
3517 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
3518
3519         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
3520         the timeout is done.  (#322291, Jean-Yves Lefort)
3521
3522 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
3523
3524         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
3525         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
3526         by Paolo Borelli)
3527
3528 2005-11-28  Tor Lillqvist  <tml@novell.com>
3529
3530         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
3531         Implement the conditional use of FlashWindowEx() properly for MSVC
3532         compilations. The code was confusingly assuming that if compiled
3533         with a "new" compiler, it will only be run on "new" Windows
3534         versions. We want it to run on "old" versions, too, even if
3535         compiled with a "new" compiler. There are two orthogonal issues:
3536         whether the compiler defines the necessary API in its headers, and
3537         whether it is present at run-time. (#318077)
3538
3539         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
3540         Windows to get the localized weekday and month names. strftime()
3541         in the Microsoft C library returns strings in the default codepage
3542         for the locale of the process, not the system codepage. Thus
3543         g_locale_to_utf8() isn't useable on the return value from
3544         strftime(). (#322603)
3545
3546 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
3547
3548         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
3549         Fix an example.  (#322493, Elie De Brauwer)
3550         
3551         Fix two memory handling problems in GtkTreeView: (#322350, 
3552         Søren Sandmann)
3553         
3554         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
3555         (gtk_tree_view_set_model): Remove all references to nodes in
3556         the old model.
3557         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
3558         before removing the children.
3559
3560         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
3561         PangoLayout here.  (#322505, Paolo Borelli)
3562
3563 2005-11-27  Tor Lillqvist  <tml@novell.com>
3564
3565         Once again rework Win32 window decoration code. Doesn't break
3566         #104514. The dialogs in gtk-demo now have the same decorations and
3567         behaviour as on X11. Tried to fix #322516 but it seems very hard
3568         to make the trivial sample program there behave as expected. OTOH,
3569         simply moving the gtk_window_decorate() call in the #322516 sample
3570         program after the call to gtk_widget_show() helps...
3571             
3572         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
3573         the correct semantics. Each call to gdk_window_set_decorations()
3574         which calls this function is supposed to affect all decorations.
3575
3576         (decorate_based_on_hints): New function, looks at both geometry
3577         hints and type hint and sets window decorations based on
3578         that. Consolidate code from gdk_window_set_geometry_hints() and
3579         gdk_window_set_type_hint() here.
3580
3581         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
3582         decorate_based_on_hints().
3583
3584 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
3585
3586         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
3587         Includes improved menu icon spacing, [+]/[-] expander drawing,
3588         status-bar gippie drawing, and notebook tab drawing.
3589         
3590 2005-11-24  Michael Natterer  <mitch@imendio.com>
3591
3592         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
3593         that used to hold signal handler IDs to two guint of padding.
3594
3595         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
3596         gulong here.
3597
3598         (gtk_toolbar_screen_changed): changed accordingly.
3599
3600 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
3601
3602         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
3603         in terms of the GObject floating/sink API.
3604
3605         * gtk/gtkaboutdialog.c:
3606         * gtk/gtkaction.c:
3607         * gtk/gtkcellview.c:
3608         * gtk/gtkclist.c:
3609         * gtk/gtkcolorsel.c:
3610         * gtk/gtkcombobox.c:
3611         * gtk/gtkfilechooserdefault.c:
3612         * gtk/gtkiconview.c:
3613         * gtk/gtkinvisible.c:
3614         * gtk/gtkitemfactory.c:
3615         * gtk/gtklayout.c:
3616         * gtk/gtkmenu.c:
3617         * gtk/gtkmenutoolbutton.c:
3618         * gtk/gtknotebook.c:
3619         * gtk/gtkprogress.c:
3620         * gtk/gtkrange.c:
3621         * gtk/gtkspinbutton.c:
3622         * gtk/gtkstatusicon.c:
3623         * gtk/gtktext.c:
3624         * gtk/gtktextview.c:
3625         * gtk/gtktoolbar.c:
3626         * gtk/gtktoolbutton.c:
3627         * gtk/gtktoolitem.c:
3628         * gtk/gtktreeitem.c:
3629         * gtk/gtktreeview.c:
3630         * gtk/gtktreeviewcolumn.c:
3631         * gtk/gtkuimanager.c:
3632         * gtk/gtkviewport.c:
3633         * gtk/gtkwidget.c:
3634         * gtk/gtkwindow.c:
3635         ported to use GObject's g_object_ref_sink().
3636
3637         * gtk/gtkcolorsel.c:
3638         * gtk/gtkfilechooserdefault.c:
3639         * gtk/gtkaboutdialog.c:
3640         fixed compiler warnings.
3641
3642 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
3643
3644         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
3645         about gtk-color-scheme.
3646
3647 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
3648
3649         * configure.in (enable_explicit_deps): Fix typo when checking
3650         libtool config deplibs_check_method. Moreover, enable explicit
3651         deps if we get anything other than pass_all from libtool. (part of
3652         #318750)
3653
3654 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
3655
3656         * gtk/updateiconcache.c (write_csource): Don't create a big
3657         string, since Visual C++ doesn't like strings longer than 64k. 
3658         (#322238, Kazuki IWAMOTO
3659
3660         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
3661         Kazuki IWAMOTO)
3662
3663 2005-11-23  Michael Natterer  <mitch@imendio.com>
3664
3665         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
3666         windows on other screens (correctly remove all temporary
3667         references).
3668
3669 2005-11-23  Michael Natterer  <mitch@imendio.com>
3670
3671         Added symbolic themable colors. Patch is a merged version of
3672         proposals from Matthias and maemo-gtk. Fixes bug #114355.
3673
3674         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
3675
3676         * gtk/gtksettings.c: added property "color-scheme" which is a
3677         string defining colors like "foreground:black\nbackground:grey".
3678         Automatically provide a name->GdkColor hash table mapping for the
3679         color scheme.
3680
3681         * gtk/gtkrc.[ch]: added list of color hashes that works like the
3682         list of icon factories. Append the color scheme hash from
3683         GtkSettings if it exists. Extended gtkrc syntax to allow defining
3684         and referencing of logical colors. Also allow to modulate colors
3685         in gtkrc by using arbitrary expressions of mix(), shade(),
3686         lighter() and darker(). Added internal function
3687         _gtk_rc_style_get_color_hashes().
3688
3689         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
3690         Get the list from _gtk_rc_style_get_color_hashes(). Export
3691         internal function _gtk_style_shade() (used by above color
3692         expressions). Added public API gtk_style_lookup_color() which
3693         looks up a logical color by name.
3694
3695         * gtk/gtk.symbols: add gtk_style_lookup_color
3696
3697         * tests/testgtkrc: use symbolic colors for making
3698         the scrollbars red.
3699
3700 2005-11-22  Michael Natterer  <mitch@imendio.com>
3701
3702         Made button-press timeouts which work like key repeat timeouts
3703         configurable. Addresses bug #142582:
3704
3705         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
3706         "gtk-timeout-repeat" which defalt to 200/20 (ms).
3707
3708         Use the values from GtkSettings instead of hardcoding them
3709         (the repeat value is either taken as-is for fast repeat or
3710         multiplied by 5 for slow repeat). Changed all places to use these
3711         two standard initial/repeat timings:
3712
3713         * gtk/gtkcalendar.c (unchanged 200/20)
3714         * gtk/gtknotebook.c (unchanged 200/100)
3715         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
3716         * gtk/gtkrange.c (changed from 250/100 to 200/100)
3717         * gtk/gtkspinbutton.c (unchanged 200/20)
3718
3719 2005-11-21  Anders Carlsson  <andersca@imendio.com>
3720
3721         * configure.in:
3722         * gtk/Makefile.am:
3723         * gdk/Makefile.am:
3724         * gdk/quartz/*:
3725         Add quartz backend.
3726         
3727         * docs/tools/Makefile.am:
3728         Only build docshooter when the X11 backend is used.
3729         
3730         * gtk/gtkplug-stub.c:
3731         Include gtkplug.h here.
3732         
3733         * gtk/gtksocket-stub.c:
3734         Include gtksocket.h here.
3735         
3736 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
3737
3738         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
3739         g_type_class_add_private.
3740
3741         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
3742
3743         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
3744
3745         * gtk/gtk.symbols:
3746         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
3747         with getter and setter.  (#316482, Olexiy Avramchenko)
3748
3749         * tests/testcombo.c (main): Test gtk_combo_box_set_title
3750
3751         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
3752         pointed out by Michael Natterer.
3753
3754         Fix for bug #321542, Benedikt Meurer:
3755         
3756         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
3757         Emit notify::active.
3758         
3759         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
3760         g_signal_emit, not g_signal_emit_by_name.
3761
3762 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
3763
3764         Fix crashes in connection with pathbar scrolling (#321560,
3765         Bogdan Nicula)
3766         
3767         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
3768         Stop scrolling when desensitising slider buttons.
3769         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
3770         And use it here.  
3771
3772         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
3773         scrolling_down flag.
3774
3775 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
3776
3777         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
3778         (#321777, Jens Granseuer)
3779
3780         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
3781         sync callback for the visibility property.  (#321761,
3782         Philip Langdale)
3783
3784         Turn off input methods in invisible entries, since
3785         they are confusing.  (#317002, James Su)
3786         
3787         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
3788         methods if visibility changes.
3789         (popup_targets_received): Don't show the input method
3790         menu if the entry is invisible.  
3791
3792 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
3793
3794         * README.in: Add a note about range arrow sensitivity.
3795
3796         * perf/treeview.c: const correctness fixes
3797         found by Arjan van de Ven and gcc.
3798
3799 2005-11-16  Michael Natterer  <mitch@imendio.com>
3800
3801         * gtk/gtkimage.c (animation_timeout): call
3802         gtk_window_process_updates() so the animation keeps running even
3803         if the main loop is busy with sources that eat a lot of cpu with
3804         high priority. Fixes bug #321444.
3805
3806         (gtk_image_new_from_animation): document the fact that the
3807         animation will stop running if the main loop is busy with sources
3808         that have priorities higher than G_PRIORITY_DEFAULT.
3809
3810         * tests/testimage.c: added test case that shows an animation even
3811         though a cpu-eating idle function is running.
3812
3813 2005-11-16  Michael Natterer  <mitch@imendio.com>
3814
3815         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
3816         function which destroys the display's event source. Also removes
3817         the source from the global display_sources list and unrefs it.
3818
3819         * gdk/x11/gdkprivate-x11.h: declare the function.
3820
3821         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
3822         instead of half-destroying the source here.
3823
3824 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
3825
3826         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
3827         leak.  (#321032, Peter Zelezny)
3828
3829 2005-11-15  Michael Natterer  <mitch@imendio.com>
3830
3831         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
3832         display->xid_ht as late as possible (right before XCloseDisplay)
3833         because it still needs to be around when the display's screens are
3834         finalized. (#85715)
3835
3836 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
3837
3838         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
3839         leak result.  (#321441, Tommi Komulainen)
3840
3841 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
3842
3843         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
3844         Don't crash if there is no builtin icon.
3845
3846 2005-11-14  Michael Natterer  <mitch@imendio.com>
3847
3848         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
3849         removed redundant calls to g_object_notify().
3850
3851 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
3852
3853         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
3854         improvements.  (#321338)
3855
3856         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
3857         limit an inclusive boundary.  (#321299)
3858
3859 2005-11-12  Michael Natterer  <mitch@imendio.com>
3860
3861         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
3862         rebuilt if needed.
3863
3864 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
3865
3866         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
3867         theme's handling of toolbars, handleboxes, and menubars more in-line
3868         with Microsoft's IE style.
3869         * modules/engines/ms-windows/*.c: Indentation cleanups
3870         
3871 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
3872
3873         Make builtin icons work in gtk_window_set_icon_name() 
3874         (#321046, Maxim Udushlivy)
3875
3876         * gtk/gtkicontheme.c (insert_theme): Always insert the default
3877         theme.
3878         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
3879         from here.
3880         (theme_lookup_icon, find_builtin_icon): ...and not from here.
3881         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
3882         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
3883
3884 2005-11-12  Tor Lillqvist  <tml@novell.com>
3885
3886         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
3887         dotfiles, no such convention on Win32. Just hide files with the
3888         hidden attribute. (#314627)
3889
3890 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
3891
3892         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
3893         check whether the path is a folder.  It is useful to bookmark
3894         files as well (e.g. todo.txt), and this will also help
3895         performance.
3896         (shortcuts_add_bookmark_from_path): Likewise.
3897         (shortcuts_activate_iter): Change folders or select files, as
3898         appropriate.
3899
3900 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
3901
3902         * tests/autotestfilechooser.c (main): Use
3903         g_log_set_default_handler() instead of explicitly setting a
3904         handler for each domain.
3905
3906         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
3907         the base path of the volume if it is mounted.
3908
3909 2005-11-11  Michael Natterer  <mitch@imendio.com>
3910
3911         Added per-stepper API for GtkRange's stepper sensitivity as
3912         discussed in bug #321056:
3913
3914         * gtk/gtkenums.h: added GtkSensitivityType which can be
3915         { AUTO, ON, OFF }.
3916
3917         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
3918         and "upper-stepper-sensitivity" and public getters/setters for
3919         them. Changed stepper drawing to honor the new properties.
3920
3921         * gtk/gtk.symbols: added the new symbols.
3922
3923 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
3924
3925         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
3926         emit them when the popup is shown or hidden.  (#162531, Tommi
3927         Komulainen)
3928
3929         * tests/testcombo.c: Add an example of popuplating a combobox
3930         on click.
3931
3932         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
3933         erroneous semicolon.
3934
3935         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
3936         semicolon. 
3937
3938         Don't corrupt odd keymaps (#316638, Kean Johnston)
3939         
3940         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
3941         handle frobbing keymaps with odd numbers of syms/code.
3942         
3943         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
3944         frob the keymap.
3945
3946         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
3947         
3948         * gtk/gtkpathbar.[hc]: Add a child_path argument to
3949         the path_clicked signal.
3950         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
3951         child_path, if it is provided.
3952         * gtk/marshalers.list (path_bar_clicked): Add the necessary
3953         glue.
3954
3955         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
3956         Kjartan Maraas)
3957         
3958         * gtk/gtk.symbols: 
3959         * gtk/gtktreeview.h: 
3960         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
3961         (#163851, Richard Hult)
3962
3963 2005-11-10  Michael Natterer  <mitch@imendio.com>
3964
3965         Applied patch from maemo-gtk that addresses many issues wrt
3966         display migration and display closing (bug #85715).
3967
3968         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
3969         default display to NULL when it's closed. Instead set the most
3970         recently opened display as new default (if one exists).
3971
3972         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
3973         of this callback.
3974
3975         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
3976         exist before unrefing them.
3977
3978         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
3979         is closed, allow destruction of the root window.
3980
3981         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
3982         dispose(), free stuff that was leaked before.
3983
3984         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
3985         the xsettings_client still exists before destroying it.
3986
3987         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
3988         X resources.
3989
3990         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
3991         dispose() implementation.
3992
3993         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
3994         dispose() and check if it still exists before unrefing it. Set
3995         their pointers to NULL/None *after* upchaining in dispose(),
3996         because X11 implementations of members of the parent class still
3997         need them for their own destruction.
3998
3999         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
4000         was g_error()ing when finalizing a visual.
4001
4002         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
4003         get_clipboard_widget() because it would create the widget if it
4004         doesn't exist. Use g_object_get_data() directly instead.
4005
4006         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
4007         of this callback.
4008
4009 2005-11-10  Simos Xenitellis  <simos@gnome.org>
4010
4011         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
4012
4013 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
4014
4015         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
4016         to render its arrows insensitive when the adjustment is in
4017         its min or max position. this makes range arrow behaviour 
4018         consistent with spin button behaviour. (#321056)
4019
4020 2005-11-09  Tor Lillqvist  <tml@novell.com>
4021
4022         * gdk/gdkinternals.h
4023         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
4024         the GdkDebugFlag enum.
4025
4026         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
4027         this file instead of MISC. Now asking for MISC will give mainly
4028         window manipulation debugging output with the Win32 backend.
4029
4030 2005-11-09  Tor Lillqvist  <tml@novell.com>
4031
4032         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
4033
4034         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
4035         function which was used only in one place.
4036
4037         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
4038
4039         (gdk_window_set_geometry_hints): If we have identical minimum and
4040         maximum size hints, remove the resize and maximize
4041         decorations/functions. (#104514)
4042
4043         If we have a maximum size hint, remove the maximize
4044         decoration/function but ensure the resize decoration/function is
4045         available. Otherwise ensure both resize and maximize
4046         decorations/functions are there.
4047
4048         (set_or_clear_style_bits): Factored out common code from
4049         gdk_window_set_decorations() and gdk_window_set_functions(). 
4050
4051         Hack the window style setting once more: Only touch the window
4052         style bits corresponding to the GdkWMDecoration or GdkWMFunction
4053         parameter bitmasks. Hopefully this finally is the correct thing to
4054         do. We used to clear all other bits than those that were being
4055         set, or set all other bits than those that were being cleared.
4056
4057         Take into account that adding or removing decorations leaves the
4058         window's outer size unchanged, i.e., the client area's size and
4059         position change. This is apparently not what we want, so change
4060         also the window's (outer) position and size appropriately so that
4061         the client area's position and size stay constant.
4062
4063         gtk-demo's color selector dialog is now non-resizable like on X11
4064         (I tested with metacity in GNOME). Torn off menus are shrinkable
4065         vertically but have a maximum size, and are not maximizable or
4066         minimizable, like on X11.
4067
4068         (gdk_window_set_decorations, gdk_window_set_functions): Let
4069         set_or_clear_decorations() do most of the job.
4070
4071         * gdk/win32/gdkprivate-win32.h: Remove declaration of
4072         _gdk_win32_get_adjusted_client_rect().
4073
4074 2005-11-09  Tor Lillqvist  <tml@novell.com>
4075
4076         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
4077         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
4078         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
4079         type hint. Implement gdk_window_get_type_hint() by just returning
4080         the hint stored.
4081
4082 2005-11-09  Tor Lillqvist  <tml@novell.com>
4083
4084         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
4085         Remove code that has been permanently ifdeffed out for two years.
4086
4087 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
4088
4089         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
4090         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
4091
4092         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
4093         icons if they would make the request large enough to cause
4094         Xlib to loose the connection.  (#320909, Claudio Saavedra)
4095
4096 2005-11-08  Michael Natterer  <mitch@imendio.com>
4097
4098         * gdk/gdk.symbols
4099         * gdk/gdkwindow.h
4100         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
4101         extracted from maemo-gtk). Fixes bug #320872.
4102
4103 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
4104
4105         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
4106         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
4107
4108         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
4109         Don't grab focus when a slider button is pressed, instead, use
4110         a bit in the pathbar struct to determine whether to scroll up
4111         or down.  (#314486, Carlos Garnacho)
4112
4113         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
4114         Don't popup the completions if the focus has already been
4115         moved somewhere else.  (#319914, Christian Persch)
4116
4117         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
4118         Raise the drag_window after reconfiguring the 
4119         toolbar.  (#320803, Christian Persch)
4120
4121         * gtk/gtk.symbols: 
4122         * gtk/gtkfilechooserbutton.h: 
4123         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
4124         with setter and getter.  (#318945, Christian Persch)
4125         
4126 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
4127
4128         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
4129
4130 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
4131
4132         * configure.in: Adjust to the stock icon changes.
4133         
4134 2005-11-07  Tor Lillqvist  <tml@novell.com>
4135
4136         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
4137         Correct the calculation of maskstride. (#320152, Peter Zelezny)
4138         
4139 2005-11-06  Michael Natterer  <mitch@imendio.com>
4140
4141         * gtk/Makefile.am (icons): fixed rule to actually create the
4142         symlinks, erroring out if anything goes wrong.
4143
4144 2005-11-06  Tor Lillqvist  <tml@novell.com>
4145
4146         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
4147         target exists on Win32. First rename the target temporarily, then
4148         if the renaming of the source to target fails, restore the
4149         original name for the target.
4150
4151         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
4152
4153 2005-11-06  Tor Lillqvist  <tml@novell.com>
4154
4155         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
4156         like pixbuf_to_hbitmaps_normal().
4157         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
4158         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
4159         setting the G_WIN32_PRETEND_WIN9X environment variable.
4160         
4161 2005-11-06  Tor Lillqvist  <tml@novell.com>
4162
4163         Make icon masks work on Win98 (#320152, Peter Zelezny)
4164
4165         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
4166         parameter for the depth of the bitmap, so that this function can
4167         be used to create 1-bit bitmaps, too.
4168         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
4169         and initialize it properly.
4170
4171 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
4172
4173         Store builtin stock icons in an icon cache, instead of
4174         populating a hash table with pixbufs at startup, to save both
4175         memory and startup time.
4176
4177         * gtk/stock-icons/*: Reorganize the icons in a directory structure
4178         suitable for gtk-update-icon-cache, and rename them to match the
4179         stock ids.
4180
4181         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
4182         add _gtk_icon_cache_has_icon_in_directory().
4183
4184         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
4185         to store the contents of the icon cache in a C header.
4186
4187         * gtk/gtkbuiltincache.h: Generated private header which contains 
4188         the icon cache for the builtin icons.
4189
4190         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
4191         icons, and use that in addition to the hash table whenever
4192         builtin icons are searched.
4193
4194         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
4195         use it for static stock ids. 
4196         (get_default_icons): Don't add the builtin
4197         icons to the icon theme, just register the stock ids.
4198         (render_fallback_image): Take the fallback image out of the
4199         builtin icon cache.
4200         
4201         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
4202         the necessary machinery to rebuild gtkbuiltincache.h.
4203
4204 2005-11-04  Michael Natterer  <mitch@imendio.com>
4205
4206         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
4207         from maemo-gtk that changes the mtime check for rc files from
4208         '>' to '!=', otherwise theme changes go unnoticed when turning
4209         back the clock (Tommi Komulainen).
4210
4211 2005-11-04  Tor Lillqvist  <tml@novell.com>
4212
4213         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
4214         leak on Win32.
4215
4216 2005-11-03  Tor Lillqvist  <tml@novell.com>
4217
4218         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
4219         the Win32 backend, check that GdkDisplay* parameters are equal to
4220         _gdk_display instead of using the unnecessarily general
4221         GDK_IS_DISPLAY().
4222
4223         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
4224         color bitmap to have "color" in their name, for similarity with
4225         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
4226         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
4227         the mask bitmap's contents, ones for those pixels in the color
4228         bitmap where the alpha is zero, zero for other pixels. We used to
4229         use an uninitialized mask bitmap! This meant that icons and
4230         cursors created presumably worked more or less by accident.
4231         Totally blank icons with zero alpha everywhere (as used by
4232         gtktrayicon.c) definitely did not work as expected.
4233
4234         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
4235
4236         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
4237         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
4238         necessary and can be removed from CVS. It has never been mentioned
4239         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
4240         are used on Win32. One label widget is used (but never shown) as
4241         gtk_widget_render_icon() needs a widget.
4242
4243         Ifdefs used as necessary in several places. It might be cleaner to
4244         split out the backend-specific parts to separate files, or at
4245         least collect them into separate blocks in the file.
4246
4247         (wndproc): New function. Window procedure to monitor mouse events
4248         in the system tray icon. Call gtk_status_icon_button_press() as
4249         needed.
4250         (create_tray_observer): New function. Creates a hidden window that
4251         only serves as a tray icon message observer.
4252
4253         * tests/teststatusicon.c (icon_activated): Position the dialog
4254         with GTK_WIN_POS_CENTER.
4255         (do_quit): New function, hide and unref the GtkStatusIcon, and
4256         call gtk_main_quit().
4257         (popup_menu): Add a Quit menu item that calls do_quit().
4258         
4259 2005-11-02  Tor Lillqvist  <tml@novell.com>
4260
4261         * gdk/win32/gdkcolor-win32.c
4262         * gdk/win32/gdkscreen-win32.c
4263         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
4264         fixes. Remove superfluous test for GdkWindow* parameters being
4265         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
4266         GdkScreen and one GdkDisplay in the Win32 backend, use those
4267         variables instead of the getter functions. For GdkDisplay* and
4268         GdkScreen* parameters, check that they are equal to the
4269         corresponding singleton variables instead of the more general
4270         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
4271
4272 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
4273
4274         * gtk/gtktextview.c: Remove some g_return_if_fail() from
4275         static functions, replace some others by g_assert().
4276         
4277         * gtk/gtktextview.c (selection_motion_event_handler) 
4278         (gtk_text_view_start_selection_drag): Keep track of the original
4279         selection boundaries during a drag selection, in order to correctly
4280         decide when to extend or shrink the selection.  (#320167,
4281         reported by Arvind S N, patch by Paolo Borelli)
4282
4283         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
4284         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
4285         manual offset calculations by g_utf8_offset_to_pointer().
4286         (#320360, Paolo Borelli)
4287
4288 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
4289
4290         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
4291         nodes via the g_slice_*() API.
4292         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
4293
4294 2005-11-01  Tor Lillqvist  <tml@novell.com>
4295
4296         * gdk/win32/gdkprivate-win32.h
4297         * gdk/win32/gdkglobals-win32.c
4298         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
4299         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
4300         their declarations, definitions and assignments into a more
4301         logical and consistent order.
4302
4303         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
4304         CF_ prefix for the predefined clipboard format names. Put quotes
4305         around registered format names to distinguish them.
4306         
4307         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
4308         immediately with a warning if the property type is STRING, TEXT,
4309         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
4310         should never pretend to handle on Win32. Handle only UTF8_STRING
4311         here, other formats with delayed rendering. Use \uc1 instead of
4312         \uc0 when generating Rich Text Format for easier testability on
4313         XP, where WordPad misinterprets \uc0 encoded characters. Add more
4314         GDK_NOTE debugging output for Clipboard operations.
4315
4316         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
4317         (gdk_selection_convert): Don't pretent to handle STRING, just
4318         UTF8_STRING. Streamline error handling, don't unnecessarily have a
4319         GError which then isn't used for anything anyway if it gets set.
4320         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
4321         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
4322
4323         * config.h.win32.in: Sync with what configure produces.
4324
4325         * configure.in: Don't look for X_PACKAGES unless building for
4326         x11. (#313986, John Ehresman)
4327
4328 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
4329
4330         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
4331                         Wondered why there was no ku there before??
4332
4333 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
4334
4335         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
4336         window to the toplevels window group.  (#319912, Christian Persch)
4337
4338 2005-10-28  Kristian Rietveld  <kris@gtk.org>
4339
4340         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
4341         stupid thinko.
4342
4343 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
4344
4345         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
4346         drag cursors.  (#319200, Federico Mena Quintero)
4347
4348         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
4349         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
4350         Neumair)
4351
4352         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
4353         C99ism.  (#320000, Kazuki Iwamoto)
4354
4355         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
4356         stars.  (#319985, Bastien Nocera)
4357
4358         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
4359         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
4360
4361 2005-10-26  Michael Natterer  <mitch@imendio.com>
4362
4363         Fix bug #319974:
4364
4365         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
4366         make sure that setting any of pixbuf/stock-id/icon-name resets the
4367         others because they are mutually exclusive, and that unsetting any
4368         of them only resets the pixbuf and nothing else. Also added
4369         some missing g_object_notify().
4370
4371         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
4372         g_value_set_object().
4373
4374         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
4375         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
4376         g_object_notify ("pixbuf").
4377
4378 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
4379
4380         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
4381         careful about initializing cell_area.  (#319382, Tommi
4382         Komulainen)
4383
4384         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
4385         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
4386
4387         * demos/gtk-demo/clipboard.c (paste_received): Only set the
4388         text if it is not NULL.  (#319930, Thomas Klausner)
4389
4390         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
4391         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
4392
4393 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
4394
4395         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
4396         * gtk/gtkthemes.c (gtk_theme_engine_load): 
4397         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
4398         when dlopening modules.  (#319557, Laszlo Peter)
4399
4400 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
4401
4402         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
4403         segments when determining text direction.  (#319065, Tommi Komulainen)
4404
4405         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
4406         on duplicate destroy.  (#318953, Gustavo Carneiro)
4407
4408         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
4409         Point out that destroy-with-parent is a bad idea for the dialog
4410         passed to this function.  (#318943, Christian Persch)
4411
4412         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
4413         glib-mkenums.  (#318582, Damien Carbery)
4414
4415         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
4416         docs.  (#317682, Christian Neumair)
4417
4418         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
4419         seem to affect the placement of the data in the readonly 
4420         section, and causes problems with some compilers.  (#317844)
4421
4422 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
4423
4424         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
4425         Fix some issues with background drawing in RTL.  (#318781,
4426         Eric Cazeaux)
4427
4428         * tests/Makefile.am:
4429         * tests/testentrycompletion.c: Apply a patch by Christian
4430         Persch to add property editors.
4431
4432         * gtk/gtkstatusicon.c: Emit activate on single-click,
4433         not on double-click, change proposed by Milosz Derezynski.
4434
4435 2005-10-25  Kristian Rietveld  <kris@gtk.org>
4436
4437         Fixes #311955, reported by Markku Vire; and a lot more.
4438
4439         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
4440         Levels can now have invisible nodes cached, functions have been
4441         rewritten/refactored to take this into account; also the logic in
4442         some functions has been corrected.
4443         
4444         Each referenced node now references all visible children or a single
4445         invisible child, in order to be able to monitor all changes in the
4446         child model required for correct operation.
4447
4448         When a virtual root is set, all nodes on the virtual root level are
4449         referenced.
4450
4451         At last, a bunch of random bug fixes and comment updates.
4452
4453 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
4454
4455         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
4456         more docs.  (#319722, Paolo Borelli)
4457
4458         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
4459         initialization of screen_x11->xft_rgba more explicit.  (#319627,
4460         Bogdan Nicula)
4461
4462         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
4463         in a blurb.  (#319499, Francisco Javier F. Serrador)
4464
4465 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
4466
4467         Add settings to hide the input method and Unicode control character
4468         submenus in the context menus of GtkEntry and GtkTextView.  
4469         
4470         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
4471         
4472         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
4473
4474         * gtk/gtktextview.c (popup_targets_received): 
4475         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
4476
4477 2005-10-24  Kristian Rietveld  <kris@gtk.org>
4478
4479         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
4480         row-has-child-toggled when the level is not in the cache does not
4481         make sense.  (This bug probably crept in during the early stages
4482         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
4483         implementation yet),
4484         (gtk_tree_model_sort_real_unref_node): only get the child iter
4485         when we will actually also use it.
4486
4487 2005-10-22  Michael Natterer  <mitch@imendio.com>
4488
4489         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
4490         widget being realized, in addition to being visible, to avoid
4491         running into precondition check in gtk_tree_view_get_cell_area().
4492         (approved by Kris).
4493
4494 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
4495
4496         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
4497         Experimentally, scrollbar steppers can shrink to 8 pixels on 
4498         Win32. Reflect that in the theme.
4499         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
4500         there is a 1-pixel border between a scrollbar and its child
4501         in ScrolledWindows on Win32. Reflect that in the theme.
4502         
4503 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
4504
4505         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
4506         for the selection window.  (#318806, Alex Larsson)
4507
4508 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
4509
4510         Fixes bug #317999:
4511
4512         * tests/autotestfilechooser.c
4513         (test_button_folder_states_for_action): Test that we have either
4514         $cwd or the explicitly-set folder.
4515         (test_reload_sequence): Likewise.
4516
4517         * gtk/gtkfilechooserdefault.c
4518         (gtk_file_chooser_default_get_current_folder): If our reload_state
4519         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
4520
4521 2005-10-14  Tor Lillqvist  <tml@novell.com>
4522
4523         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
4524         It didn't really do anything useful, and was just confusing and
4525         incomplete. Comments claimed we don't do delayed rendering, but in
4526         fact we do, for images. (The delayed rendering code has other
4527         problems, though, see #168173.) The clipboard viewer code was
4528         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
4529         the message when necessary). It was just test code, it said so in
4530         a comment. Add something similar back later if necessary.
4531
4532         (_win32_on_clipboard_change,
4533         _gdk_win32_register_clipboard_notification): Remove.
4534
4535         (gdk_display_supports_selection_notification,
4536         gdk_display_request_selection_notification): Always just return
4537         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
4538
4539 2005-10-13  Tor Lillqvist  <tml@novell.com>
4540
4541         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
4542         Alt-Enter specially. It does not have any special meaning and
4543         should be passed on to the application. (#318378, Tim Evans)
4544
4545 2005-10-13  Tor Lillqvist  <tml@novell.com>
4546
4547         Set visual depth to 24 for 32 bits-per-pixel devices on
4548         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
4549         optimized composite_0888() function rather than the slower image
4550         dithering functions to draw pixbufs (#313993, John Ehresman)
4551
4552         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
4553         _gdk_windowing_get_bits_for_depth() to initialize
4554         GdkImage::bits_per_pixel.
4555         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
4556
4557         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
4558         _gdk_windowing_get_bits_for_depth() to initialize
4559         BITMAPINFOHEADER::biBitCount.
4560
4561         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
4562         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
4563         32.
4564
4565 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
4566
4567         * demos/gtk-demo/appwindow.c: (about_cb):
4568           use PACKAGE_VERSION,bump year (#318654)
4569
4570 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
4571
4572         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
4573         toggle here with the matching on toggle if it immediately follows. 
4574         This is a common case, and handling it here prevents quadratic blowup 
4575         in cleanup_line() below.  (#317125)
4576
4577         * gtk/gtktextsegment.h: 
4578         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
4579         the character counts into this function instead of computing them
4580         again.
4581
4582 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
4583
4584         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
4585         code.
4586         * gtk/gtkfilechooserdefault.c
4587         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
4588         when the shortcut already exists in the sidebar.  (#147521)
4589
4590 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
4591
4592         * tests/testcombo.c: Demonstrate how to use custom widgets in
4593         a GtkComboBox.  
4594
4595 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
4596
4597         Fixes bug #317999:
4598
4599         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
4600         the the result of gtk_file_chooser_get_folder() is NULL or
4601         non-NULL at the right times.  Log the tests.
4602         (test_button_folder_states): New test for the initial states of
4603         the current folder in GtkFileChooserButton.
4604         (main): Test that the number of warnings/errors/critical errors is
4605         zero.
4606
4607         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
4608         Clarify the documentation on when this can return NULL.
4609         (gtk_file_chooser_get_current_folder_uri): Likewise.
4610
4611         * gtk/gtkfilechooserbutton.c (struct
4612         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
4613         we use it to keep track of whether a folder has been set.
4614         (gtk_file_chooser_button_map):  Implement.  If no folder has been
4615         loaded before, we at least try to load $cwd here.
4616         (gtk_file_chooser_button_constructor): If the construct-time
4617         dialog already has a folder set, turn on our folder_has_been_set
4618         flag.
4619         (dialog_current_folder_changed_cb): Turn on our
4620         folder_has_been_set flag.
4621
4622 2005-10-07  Michael Natterer  <mitch@gimp.org>
4623
4624         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
4625         PROFILE_FILE_CHOOSER because they break compilation after the
4626         removal of <unistd.h>.
4627
4628 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
4629
4630         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
4631         by moving it out of the profiling ifdef.
4632
4633         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
4634         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
4635
4636         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
4637         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
4638         Kazuki Iwamoto)
4639
4640 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
4641                 
4642         * gtk/gtk.symbols:
4643         * gtk/gtktextbuffer.h:
4644         * gtk/gtktextbuffer.c: Add a readonly has-selection property
4645         with a getter.  (#318161, Paolo Borelli)
4646
4647 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
4648
4649         * README.in: Start collecting release notes for 2.10.
4650
4651         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
4652         leak fix, since the assertion failures were traced to 
4653         an xchat bug.  (#314696)
4654         
4655         * gtk/gtkstyle.c (gtk_style_detach):
4656         (gtk_style_attach):  Documentation improvements.
4657         (gtk_style_detach): Assert that the attach_count is > 0.
4658
4659 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
4660
4661         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
4662         shortcut position, not a ShortcutsIndex, to make the function more
4663         generic.
4664         (home_folder_handler): Pass the resolved index to
4665         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
4666         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
4667         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
4668         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
4669         make the respective key switch to the first, second, ..., tenth
4670         bookmark.
4671         (quick_bookmark_handler): Implement.
4672
4673 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
4674
4675         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
4676         Desktop; just use their real names on the file system for the
4677         user-visible names.
4678
4679         * gtk/gtkfilechooserdefault.c
4680         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
4681         binding signal, and bind it to M-d by default.
4682         (desktop_folder_handler): Implement the default handler.
4683         (home_folder_handler): Use a helper function.
4684         (switch_to_shortcut): New helper function.
4685         (shortcuts_append_home): Don't special-case the name of "Home";
4686         just use the folder name.
4687
4688 2005-10-04  Tor Lillqvist  <tml@novell.com>
4689
4690         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
4691         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
4692
4693 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
4694
4695         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
4696         from yesterday, since it leads to assertion failures.  (#317879,
4697         Sebastian Bacher)
4698
4699 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
4700
4701         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
4702         calendar_compute_days() after setting priv->week_start.
4703
4704 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
4705
4706         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
4707         removing it from the hash table.  (#314696, Benjamin Berg)
4708
4709 2005-10-01  Tor Lillqvist  <tml@novell.com>
4710
4711         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
4712         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
4713         is that the the desktop isn't visible because the session has been
4714         switched, the screen is locked, or a terminal server session
4715         disconnected, so no error message necessary. (#137796)
4716
4717         It is of course remotely possible that BitBlt() failing with
4718         ERROR_INVALID_HANDLE might also be caused by some other
4719         problem. We could strive for perfection and track whether the
4720         desktop is visible by using WTSRegisterSessionNotification() and
4721         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
4722         this issue, though. If we would track desktop visibility, we
4723         should then avoid even trying to update the display at all while
4724         the desktop isn't visible.
4725
4726 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
4727
4728         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
4729         to correct the calculations for the first week day. We may
4730         just have to remove this code if too many locales turn out 
4731         to have broken data. 
4732
4733         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
4734         some cases.  (#317611, Tommi Komulainen)
4735
4736         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
4737         Prevent overflow when storing size hints in an unsigned
4738         short variable. Tracked down by Ray Strode and Søren Sandmann.
4739
4740 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
4741
4742         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
4743         Paolo Borelli)
4744
4745         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
4746         grab shadowed.  (#317332)
4747
4748 2005-09-29  Tor Lillqvist  <tml@novell.com>
4749
4750         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
4751
4752 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
4753
4754         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
4755         if the unmap test fails.
4756         (test_reload_sequence): Use gtk_widget_show_now() instead of
4757         gtk_widget_show() for the dialog.
4758         Thanks to Tim Janik for noticing these.
4759
4760 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
4761
4762         * tests/testcellrenderertext.c: New file with a set of tests for
4763         GtkCellRendererText.  The idea is to run a text renderer through
4764         most of its interesting property values to see that it works
4765         correctly.
4766
4767         * tests/Makefile.am: Added testcellrenderertext.
4768
4769         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
4770         entry/exit of this function for profiling.
4771         (gtk_file_chooser_default_style_set): Mark the start/end of the
4772         calls to the parent class and the the signal emission for profiling.
4773
4774 2005-09-29  Tor Lillqvist  <tml@novell.com>
4775
4776         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
4777         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
4778         system codepage using g_win32_locale_filename_from_utf8().
4779         (#317457, Kazuki Iwamoto)
4780
4781 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
4782
4783         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
4784         here. (#317039, Paolo Borelli)
4785
4786         * gtk/gtktexttag.h: 
4787         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
4788         to make this function work as boxed copy function.  (#317455,
4789         Gustavo Carneiro)
4790
4791         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
4792         NULL.  (#316828, Tor Lillqvist)
4793
4794 2005-09-28  Tor Lillqvist  <tml@novell.com>
4795
4796         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
4797         Iwamoto)
4798
4799 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
4800
4801         Don't reload the current folder unnecessarily on ::map().
4802
4803         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
4804         the reloading state.
4805         (struct _GtkFileChooserDefault): Added a "reload_state" field.
4806
4807         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
4808         Initialize impl->reload_state.
4809         (gtk_file_chooser_default_map): Check the impl->reload_state; load
4810         a default folder if no folder has been set, or reload the current
4811         one only if we had been unmapped first.
4812         (gtk_file_chooser_default_update_current_folder): Set the
4813         reload_state to RELOAD_HAS_FOLDER.
4814         (gtk_file_chooser_default_unmap): Implement, and set the
4815         reload_state to RELOAD_WAS_UNMAPPED.
4816         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
4817         here; they'll get (re)loaded on ::map() anyway.
4818
4819         * gtk/gtkfilechooserwidget.c
4820         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
4821
4822         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
4823         a dialog; build it ourselves.
4824         (test_reload): New test to ensure that we don't load the default
4825         folder more than once, and that we reload it when
4826         unmapping/remapping.
4827         (get_impl_from_dialog): New utility function.
4828         (test_widgets_for_current_action): Use get_impl_from_dialog().
4829
4830 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
4831
4832         * gtk/gtkfilechooserdefault.c
4833         (gtk_file_chooser_default_constructor): Mark the entry/exit of
4834         this function for profiling.
4835         (check_icon_theme): Likewise.
4836         (change_icon_theme): Likewise.
4837         (settings_notify_cb): Likewise.
4838         (gtk_file_chooser_default_screen_changed): Likewise.
4839         (update_chooser_entry): If the selection is empty, clear the file
4840         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
4841         nothing will be selected when the user starts typeahead in the
4842         treeview, and we don't want to clear the file name entry in that
4843         case --- the user could be typing-ahead to look for a folder name.
4844         Fixes bug #308332, patch by Jürg Billeter.
4845
4846 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
4847
4848         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
4849         Pop below the entry if there's more free space below the entry
4850         than above.  (#316948, Tommi Komulainen)
4851
4852 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
4853
4854         Do not create the save mode-specific widgets in the open modes, so
4855         that we don't carry their baggage around.
4856
4857         * gtk/gtkfilechooserdefault.c
4858         (gtk_file_chooser_default_constructor): Don't create the
4859         save_widgets here.
4860         (save_widgets_create): Set the impl->save_widgets directly here,
4861         instead of passing the widgets back to the caller.  Also, pack
4862         them into the impl's box.
4863         (update_appearance): Create or destroy the save widgets as
4864         appropriate.  Set the action of the save_file_name_entry here.
4865         (shortcuts_add_current_folder): Set the active item in the
4866         save_folder_combo only if it exists.
4867         (gtk_file_chooser_default_set_property): Don't set the action of
4868         the save_file_name_entry here.
4869         (gtk_file_chooser_default_update_current_folder): Set the base
4870         folder of the save_file_name_entry only if the entry exists.
4871         (shortcuts_drag_data_received_cb): Cast the selection_data->data
4872         to (const char *) since that's what shortcuts_drop_uris() expects.
4873         (file_list_drag_data_received_cb): Likewise, for
4874         g_uri_list_extract_uris().
4875
4876 2005-09-26  Tor Lillqvist  <tml@novell.com>
4877
4878         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
4879         the shaped flag here, too. (#316871)
4880         (gdk_window_shape_combine_region): Currently unimplemented, so
4881         don't do anything to the shaped flag here.
4882
4883 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
4884
4885         Fix #316871, reported by Dan Winship:
4886         
4887         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
4888
4889         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
4890         (gdk_window_shape_combine_region): Set it here.
4891
4892         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
4893         remove the child area for shaped windows.
4894
4895 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
4896
4897         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
4898         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
4899
4900 2005-09-22  Michael Natterer  <mitch@imendio.com>
4901
4902         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
4903         consistent with GTK+ terminology:
4904
4905         * gtk/gtkcellrendererkeys.[ch]
4906         * tests/testkeys.c: removed...
4907
4908         * gtk/gtkcellrendereraccel.[ch]
4909         * tests/testaccel.c: ...and added.
4910
4911         * gtk/Makefile.am
4912         * gtk/gtk.h
4913         * gtk/gtk.symbols
4914         * tests/Makefile.am: changed accordingly.
4915
4916 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
4917
4918         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
4919         for the grab-broken-event signal, noticed by Damon Chaplin.
4920
4921 2005-09-21  Tor Lillqvist  <tml@novell.com>
4922
4923         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
4924         gdk_text_property_to_text_list_for_display,
4925         gdk_text_property_to_utf8_list_for_display,
4926         gdk_win32_selection_add_targets,
4927         _gdk_win32_selection_convert_to_dib): Free return value from
4928         gdk_atom_name().
4929         (gdk_text_property_to_text_list_for_display): Drop GError variable
4930         that isn't actually used after being set.
4931
4932 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
4933
4934         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
4935         documentation.
4936
4937 2005-09-20  Tor Lillqvist  <tml@novell.com>
4938
4939         * gdk/win32/gdkselection-win32.c
4940         (gdk_selection_owner_get_for_display): Do return the correct owner
4941         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
4942         a window GDK knows about). The reason to return NULL seems to have
4943         gone when in the fix for bug #163702 the artificial
4944         GDK_SELECTION_CLEAR event generation was removed from
4945         gdk_selection_send_notify_for_display(). Fixes bug #316552.
4946
4947 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
4948
4949         Avoid unnecessary XkbGetState() calls and XkbStateNotify
4950         events.  (#151555, Søren Sandmann)
4951
4952         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
4953         XkbSelectEventDetails() to select XkbStateNotify events
4954         for only the state we care about.
4955
4956         * gdk/x11/gdkprivate-x11.h:
4957         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
4958         the event into the function and update the keymap state from
4959         the state information contained in the event. Adjust all callers.
4960         
4961 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
4962
4963         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
4964         in multiple places to avoid segfaults if the index is out of range.  
4965         (#316422, Guillaume Cottenceau)
4966         (gtk_icon_view_set_drag_dest_item): 
4967         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
4968         #316424, Guillaume Cottenceau)
4969
4970 2005-09-18  Hans Breuer  <hans@breuer.org>
4971
4972         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
4973         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
4974
4975 2005-09-18  Hans Breuer  <hans@breuer.org>
4976
4977         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
4978         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
4979         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
4980         the icon and is blinking with teststatusicon. More to come ...
4981
4982 2005-09-18  Hans Breuer  <hans@breuer.org>
4983
4984         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
4985         cause gtkprogressbar.c has #include <config.h> conditionally; less
4986         noise from generated gtk.def
4987         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
4988         
4989         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
4990         For me it works as well as the *NIX implemenation, that is not at all.
4991
4992         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
4993
4994         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
4995         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
4996         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
4997         again - if compiled properly.
4998
4999         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
5000         already coming with Gtk+. Makes it compile on win32.
5001
5002 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
5003
5004         * README.cvs-commits: fixed some tiny typos
5005
5006 2005-09-16  Tor Lillqvist  <tml@novell.com>
5007
5008         * modules/engines/ms-windows/msw_style.c (draw_extension,
5009         draw_box_gap): Check whether the widget actually is a GtkNotebook
5010         before treating it as such. Drop some unneeded local variables,
5011         use parameter with same information instead. (#316412)
5012
5013 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
5014
5015         * tests/autotestfilechooser.c: Start a set of automated tests for
5016         the file chooser.  The only test in there right now doesn't pass
5017         yet.  It specifies the intended behavior of the first optimization
5018         of a series which I'll do on the file chooser (see
5019         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
5020         details of this optimization).
5021
5022         * tests/Makefile.am: Added autotestfilechooser.c.
5023
5024         * gtk/gtkfilechooserprivate.h (struct
5025         _GtkFileChooserDialogPrivate): Move all the file chooser's private
5026         structures to here, so that they can be accessed by
5027         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
5028         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
5029
5030         * gtk/gtkfilechooserdialog.c: See above.
5031
5032         * gtk/gtkfilechooserwidget.c: See above.
5033
5034         * gtk/gtkfilechooserdefault.c: See above.
5035
5036 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
5037
5038         * gtk/gtkwindow.c: 
5039         gtk_window_map_event(): new function to work around lost unmap requests.
5040         fixes bug #316180.
5041
5042 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
5043
5044         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
5045         an easy-to-find profiling marker when starting to create a file
5046         chooser.
5047         (browse_files_model_finished_loading_cb): Likewise, for when the
5048         chooser is finished loading.
5049
5050 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
5051
5052         * gtk/gtkcolorbutton.c: Check "color" argument in 
5053         gtk_color_button_set_color ()
5054
5055 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
5056
5057         * gtk/gtklabel.c (gtk_label_get_type): 
5058         * gtk/gtkbutton.c (gtk_button_get_type): 
5059         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
5060         using a mem chunk for window groups, buttons, labels.
5061
5062         * gtk/updateiconcache.c (foreach_remove_func): Fix
5063         a use-after-free bug.  (#316256, Alexander Nedotsukov)
5064
5065 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
5066
5067         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
5068
5069         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
5070         
5071 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
5072
5073         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
5074         Let GDK_Return pass through in some more cases.
5075
5076         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
5077         activating the entry. 
5078
5079         * gtk/gtkiconview.c (gtk_icon_view_class_init):
5080         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
5081         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
5082
5083         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
5084         (#316001, Guillaume Cottenceau)
5085
5086         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
5087         mistake in the docs.  (#315993, Guillaume Cottenceau)
5088
5089         * tests/testentrycompletion.c (create_simple_completion_model): Add
5090         some strings containing multibyte characters.
5091
5092         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
5093         Fix prefix insertion for multibyte characters.  (#316095,
5094         Tommi Komulainen)
5095
5096         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
5097         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
5098         return NULL if the widget is not realized.  (#316023,
5099         Guillaume Cottenceau)
5100
5101 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
5102
5103         * gdk/gdk.symbols: 
5104         * gdk/gdkproperty.h: 
5105         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
5106         New function to avoid pointless strdups when creating atoms
5107         from static strings.  
5108
5109         * gdk/x11/*.c:
5110         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
5111         appropriate.
5112
5113 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
5114
5115         * gtk/gtkcellrendererkeys.h: 
5116         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
5117         and editing accelerators, a port of EggCellRendererKeys .
5118
5119         * gtk/gtk.symbols:
5120         * gtk/gtk.h:
5121         * gtk/Makefile.am: Add the keys cell renderer.
5122
5123         * tests/Makefile.am: 
5124         * tests/testkeys.c: Test GtkCellRendererKeys
5125
5126 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
5127
5128         Make it possible to determine if a key event is for a
5129         modifier key:
5130         
5131         * gdk/x11/gdkprivate-x11.h: 
5132         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
5133         New function to determine if a keycode is mapped to a modifier.
5134         (get_xkb): Get the modmap.
5135
5136         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
5137         is_modifier bit by calling _gdk_keymap_key_is_modifier().
5138
5139         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
5140         bit.
5141
5142 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
5143
5144         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
5145         unused variable, noticed by Kjartan Maraas.
5146
5147 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
5148
5149         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
5150         Make drag reordering work properly for columns other than the
5151         first.  (#315054, Dan Winship)
5152         
5153         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
5154         invalid fontnames better. (#136926, Michael R. Walton)
5155         
5156         Stop cursor blinking in non-editable regions of a text view.
5157         (#311508, Torbjörn Andersson)
5158         
5159         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
5160         (cursor_blinks): Take editability into account when deciding
5161         whether the cursor blinks.
5162         (gtk_text_view_button_release_event): 
5163         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
5164
5165         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
5166         Use connect_after to connect to the focus_out event. This
5167         ensures that the entry has already stopped blinking by the time
5168         we emit the edited signal.  (#315229, Thomas Leonard)
5169
5170         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
5171
5172         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
5173         unsigned ints to -1.  (#315481, Kjartan Maraas)
5174
5175         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
5176         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
5177         (#314473, Stanislav Brabec)
5178
5179 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
5180
5181         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
5182         memory handling.  (#314975, Torsten Schoenfeld)
5183
5184         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
5185         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
5186         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
5187         * gtk/gtklabel.c (gtk_label_class_init): 
5188         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
5189         Stylistic improvements and clarifications for some blurbs. 
5190         (#315520, Clytie Siddall)
5191
5192 2005-09-09  Tor Lillqvist  <tml@novell.com>
5193
5194         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
5195         display name. There is only one GdkDisplay on Win32, and
5196         constructing the display name isn't entirely trivial, so cacheing
5197         is probably worth it. For instance GIMP calls this function a lot.
5198         (gdk_display_open): Call gdk_display_get_name() to prime the
5199         cached name.
5200         (gdk_display_get_n_screens, gdk_display_get_screen,
5201         gdk_display_get_default_screen): Verify parameter correctness like
5202         the X11 backend does.
5203
5204         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
5205         Return a freshly allocated string, as the API specifies. Fixes a
5206         heap corruption problem that caused random errors and crashes in
5207         GIMP, for instance.
5208
5209 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
5210
5211         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
5212         Make C-u commit and restart hex input if we are already in a
5213         hex sequence.
5214
5215 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
5216
5217         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
5218         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
5219         if they are mapped to the same modifier.
5220
5221         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
5222         to gtkstatusicon.c and gtktrayicon-x11.c
5223
5224         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
5225         default accel mod mask.
5226
5227         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
5228         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
5229         Don't use GDK_ALT_MASK.
5230
5231         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
5232
5233 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
5234
5235         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
5236         
5237         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
5238         modifiers.
5239
5240         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
5241         Mod2 - Mod5 and against Super, Hyper, Meta.
5242
5243         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
5244         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
5245         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
5246
5247         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
5248         modmap to maintain the information which X modifiers map to
5249         virtual modifiers.
5250         (get_xkb): Set up the modmap from the XKB tables.
5251         (update_keymaps): Set up the modmap from the information returned
5252         by XGetModifierMapping in the non-XKB case.
5253
5254         * gdk/x11/gdkprivate-x11.h: 
5255         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
5256         function to set the virtual modifiers in the state.
5257
5258         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
5259         _gdk_keymap_add_virtual_modifiers here.
5260
5261         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
5262         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
5263         for GDK_MOD1_MASK.
5264
5265 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
5266
5267         * gtk/gtkaction.c (connect_proxy): Set the label of a button
5268         if it has no child.  (#315253, John Finlay)
5269
5270 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
5271
5272         * gtkimcontextsimple.h: Add a modifiers_dropped bit
5273
5274 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
5275
5276         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
5277         on destroy to avoid problems when they are called on a destroyed
5278         widget.  (#315135, John Cupitt)
5279         
5280         * gtk/gtkentry.c (gtk_entry_class_init):
5281         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
5282         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
5283
5284         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
5285         code. Now we only steal a single key combination, Ctrl-Shift-U,
5286         instead of sixteen. 
5287         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
5288         by a sequence of hex digits entered with Ctrl-Shift still held.
5289         Releasing one of the modifiers or pressing space while the modifiers
5290         are still held commits the character. It is possible to erase
5291         digits using backspace.
5292         As an extension to the above, we also allow to start the sequence
5293         with Ctrl-Shift-U, then release the modifiers before typing any
5294         digits, and enter the digits without modifiers.
5295         (#82011, Owen Taylor)
5296         
5297 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
5298
5299         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
5300         we still need to deliver the destroy event.  (#314980, Chris Lahey)
5301
5302         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
5303         im context before committing \n or \t.
5304
5305 2005-09-02  Alexander Larsson  <alexl@redhat.com>
5306
5307         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
5308         (shortcuts_activate_volume):
5309         Handle base_path being null in the rest of the cases (#310270)
5310
5311 2005-09-02  Tor Lillqvist  <tml@novell.com>
5312
5313         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
5314         cursor position also in root window coordinates. Prune out
5315         superfluous WM_MOUSEMOVE events even earlier, based on root window
5316         coordinates. Windows sends WM_MOUSEMOVE messages after a new
5317         window has ben mapped below the cursor even if the mouse doesn't
5318         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
5319         confused at least gtk_menu_motion_notify(). (#314995)
5320
5321         * gtk/gtkintl.h: No need to include config.h here. It caused
5322         warnings about GTK_LOCALEDIR being redefined on Win32 when
5323         compiling files where gtkintl.h is included after gtkprivate.h
5324         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
5325
5326         * gtk/gtkplug.c: Include config.h.
5327
5328 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
5329
5330         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
5331         xdg_mime_get_mime_type_for_file() where possible, to avoid
5332         useless re-stating.  
5333         
5334         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
5335         typo.  (#314921, Guillaume Cottenceau)
5336
5337         * gdk/*.c: Intern some more strings.
5338         * gtk/gtkintl.h: 
5339         * gtk/*.c: Define an I_() macro and use it instead of the 
5340         bulky g_intern_static_string().
5341
5342 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
5343
5344         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
5345         instead of copying it.
5346
5347         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
5348
5349         * gtk/*.c: Also intern static strings passed to 
5350         g_object_set_data().
5351
5352         * gdk/Makefile.am: 
5353         * gtk/Makefile.am: Intern type names in code generated by 
5354         glib-mkenums, too.
5355
5356         * gtk/*.c: 
5357         * gdk/x11/*.c: 
5358         * gdk/*.c: Intern type names before registering the type to avoid 
5359         unnecessary copies.
5360
5361         * configure.in: Require GLib 2.9.0
5362
5363 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
5364
5365         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
5366         and add icon-size and icon-size-set properties.  (#314172)      
5367
5368         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
5369         groups across transient parents.  (#312918, Christian Persch)
5370
5371         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
5372         Guillaume Cottenceau)
5373
5374         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
5375         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
5376
5377 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
5378
5379         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
5380         make C-/ select all and C-\ unselect all.  (#309301,
5381         Kathy Fernandez)
5382
5383         * gtk/gtkimcontextsimple.c: Change the compose sequence for
5384         soft hyphen to be multi_key-minus-minus-space, and add
5385         compose sequences multi_key-minus-minus-period and 
5386         multi_key-minus-minus-minus for en dash and em dash.
5387         (#172653, Christian Lohmaier)
5388
5389         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
5390         code.  (#313946, Christian Persch)
5391
5392         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
5393         fix for the default value of the "ui" property.
5394
5395 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
5396
5397         * gtk/gtk.symbols: 
5398         * gtk/gtkselection.h:
5399         * gtk/gtkselection.c: Add functions which look for text, image
5400         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
5401
5402         * gtk/gtk.symbols: 
5403         * gtk/gtkselection.h:
5404         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
5405         Add a function to check wether targets include uri.  
5406         (#314092, Mark Wielaard)
5407         
5408         * gtk/gtk.symbols: 
5409         * gtk/gtkwindow.h: 
5410         * gtk/gtkwindow.c: Add a deletable property with getter
5411         and setter, to control the close button in the window 
5412         frame.  (#59718, Havoc Pennington)
5413
5414 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
5415
5416         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
5417         to the arrow keys for menu navigation.  (#162825, Carl Worth)
5418
5419         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
5420
5421         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
5422
5423         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
5424         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
5425         refer to nonexisting stock ids.
5426
5427         * gtk/gtktextview.c (popup_targets_received): 
5428         * gtk/gtkentry.c (popup_targets_received): Construct
5429         the "Select All" menuitem from stock.
5430
5431         * gtk/stock-icons/stock_select_all_{16,24}.png:
5432         * gtk/stock-icons/Makefile.am: 
5433         * gtk/gtkiconfactory.c:
5434         * gtk/gtkstock.h: 
5435         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
5436         Calum Benson)
5437
5438         * gtk/gtktrayicon.c: Add a pointer to the spec.
5439
5440         * gtk/gtkstatusicon-x11.c: Add docs.
5441
5442         * gtk/gtkstatusicon.h: Fix a typo.
5443
5444         Add a cross-platform "tray icon" API, by
5445         porting EggStatusIcon/EggTrayIcon (#105101)
5446         
5447         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
5448         displays an icon in a notification area.
5449
5450         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
5451         X11, using GtkTrayIcon.
5452
5453         * gtk/gtktrayicon.h: 
5454         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
5455         system tray specification, not public API.
5456
5457         * gtk/gtk.symbols: Add new exported functions.
5458
5459         * gtk/gtk.h: Include gtkstatusicon.h.
5460
5461         * gtk/Makefile.am: Add new files.
5462
5463         * tests/Makefile.am:
5464         * tests/teststatusicon.c: Test for GtkStatusIcon.
5465
5466 2005-08-29  Christopher Aillon  <caillon@redhat.com>
5467
5468         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
5469         and GTK_STOCK_DISCONNECT
5470         
5471 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
5472
5473         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
5474         Use XFixesChangeSaveSet if available.  (#314682)
5475
5476         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
5477         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
5478
5479 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
5480
5481         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
5482         accidentally leftover duplicate pixbuf creation.  (#314700,
5483         Kjartan Maraas)
5484
5485         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
5486         leak the cursor theme name.  (#314693, Kjartan Maraas)
5487
5488         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
5489         state.children in all cases.  (#313862, Kjartan Maraas)
5490
5491 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
5492
5493         * po/POTFILES.in, po-properties/POTFILES.in:
5494         Add gdk/gdkscreen.c
5495
5496 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
5497
5498         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
5499         value of the ui property. (#314532, Yong Wang)
5500
5501         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
5502         when G_MAXLONG is passed as length.  
5503
5504 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
5505
5506         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
5507         to avoid overloading --force.  (JP Rosevaar)
5508
5509 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
5510
5511         * configure.in: Bump version to 2.9.0
5512
5513         * gdk/gdk.symbols: 
5514         * gdk/gdkscreen.h: 
5515         * gdk/gdkscreen.c: Make the GdkScreen font options api
5516         public, and add properties GdkScreen::font-options and
5517         GdkScreen::resolution.  (#314004)
5518
5519         * gdk/gdkpango.c:
5520         * gtk/gtksettings.c:
5521         * gtk/gtkwidget.c: Adjust all callers.
5522         
5523         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
5524         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
5525         * gdk/gdkscreen.c: Include gdkintl.h.
5526
5527         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
5528         variable warning, pointed out by Colin Walters. (#314585)
5529
5530 2005-08-26  Tor Lillqvist  <tml@novell.com>
5531
5532         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
5533         printouts.
5534         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
5535
5536 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
5537
5538         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
5539         of week_start.  (#314473, JP Rosevaar)
5540
5541 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
5542
5543         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
5544         lock.  (#314533, Thomas Fitzsimmons)
5545
5546 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
5547
5548         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
5549         NULL gracefully.  (#314523, Ed Catmur)
5550
5551 2005-08-25  Owen Taylor  <otaylor@redhat.com>
5552
5553         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
5554         Handle theme == NULL.
5555
5556 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
5557
5558         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
5559         y offset into account when positioning the popup.  (#314470,
5560         Christian Persch)
5561
5562 2005-08-25  Owen Taylor  <otaylor@redhat.com>
5563
5564         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
5565         as instance_init, not base_init! (#314452, Fix from Frederic
5566         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
5567         rather than 1 for a negative flag value.
5568
5569 2005-08-24  Owen Taylor  <otaylor@redhat.com>
5570
5571         * gdk/gdkpango.c (draw_error_underline): Add a note about
5572         cut-and-paste between here and Pango.
5573
5574 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
5575
5576         * === Released 2.8.2 ===
5577
5578         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
5579         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
5580         Wielaard)
5581
5582         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
5583         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
5584         Sebastien Bacher)
5585         
5586         * NEWS: Updates
5587
5588         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
5589         and cursor settings get propagated down to the screen initially.
5590         Pointed out by Frederic Crozat.
5591
5592         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
5593         message if the screen is NULL. Noticed by Kjartan Maraas.
5594
5595 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
5596
5597         * Bump version
5598
5599         * === Released 2.8.1 ===
5600
5601         * NEWS: Updates
5602         
5603 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
5604
5605         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
5606         against lazy filterers which return values other than TRUE or
5607         FALSE from their visible func.  (#314335)
5608
5609 2005-08-23  Owen Taylor  <otaylor@redhat.com>
5610
5611         Fix for #314004, reported by Michael Reinsch:
5612
5613         * gdk/gdk.symbols:
5614         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
5615         Add gdk_screen_get/set_resolution_libgtk_only()
5616
5617         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
5618         the options for the screen on the newly created context.
5619
5620         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
5621         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
5622         the font options on the screen.
5623
5624         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
5625         the font options from the screen and set them on the context.
5626
5627 2005-08-23  Kristian Rietveld  <kris@gtk.org>
5628
5629         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
5630         bother inserting new rows in a level with a zero refcount and
5631         immediately free the level. (Fixes #312350, reported by Markku Vire).
5632
5633 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
5634
5635         * gtk/updateiconcache.c: Complain when there is no index.theme file
5636         in the specified directory, unless --force is used. Also add an
5637         --index-only option to create caches without image data.
5638
5639         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
5640         C99ism.  (#314262, Robert Jeff Mitchell)
5641         
5642 2005-08-22  Manish Singh  <yosh@gimp.org>
5643
5644         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
5645
5646         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
5647
5648 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
5649
5650         * gtk/gtkwindow.c (gtk_window_client_event): 
5651         * gtk/gtkicontheme.c (ensure_valid_themes) 
5652         (_gtk_icon_theme_check_reload): Implement a clientmessage based
5653         scheme for makeing sure that all GTK+ applications notice if an
5654         icon theme has been updated. This should prevent multiple versions
5655         of an icon theme cache to be mapped in memory at the same time,
5656         which can cause excessive memory consumption.  (#313156, Chris 
5657         Lahey)
5658
5659 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
5660
5661         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
5662         regarding icon theme changes.
5663
5664         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
5665         pixbufs which are backed by the mmapped memory of an icon cache,
5666         increase the refcount of the icon cache, so that the memory is not
5667         munmapped away underneath the pixbuf upon icon theme changes.  
5668         (#314170, Kjartan Maraas)
5669
5670         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
5671         to link against Xext.  (#314062)
5672
5673         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
5674         overruns.  (#314081, Hans Breuer)
5675
5676 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
5677
5678         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
5679         returned layout must not be modified.
5680
5681 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
5682
5683         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
5684         scroll_to_path if the model changes.
5685
5686         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
5687         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
5688         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
5689         we're realized, #312798
5690         (gtk_icon_view_set_model): clear scroll_to_path if the model
5691         changes.
5692
5693 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
5694
5695         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
5696         (gtk_range_adjustment_value_changed):  Don't queue a draw
5697         if the layout has not changed.  (#313991, Benjamin Berg)
5698
5699 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
5700
5701         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
5702         Benoit Carpentier)
5703
5704         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
5705         Fix a typo. 
5706
5707         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
5708         (model_add_special, model_add_special, model_add_volumes):
5709         Handle pixbuf being NULL without warnings. Also, don't
5710         leak pixbuf references when the icon theme is changed.
5711
5712         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
5713         the user data on destroyed windows, since at best
5714         it can be a stale pointer.  (#313953, Robin Green)      
5715
5716 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
5717
5718         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
5719         (#313900, Sebastien Bacher)
5720
5721         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
5722         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
5723
5724         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
5725         (xdnd_read_actions, get_client_window_at_coords_recurse): 
5726         Free data returned from XGetWindowProperty. 
5727
5728         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
5729         Free data returned from XGetWindowProperty.  (313867, Kjartan
5730         Maraas)
5731         
5732         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
5733         children in all cases.  (#313862, Kjartan Maraas)
5734
5735         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
5736         in the per-directory hash, even if they come from the icon cache. 
5737         We tried to avoid that before, but as a result leaked icon data
5738         structs.  (#313852, Kjartan Maraas)
5739
5740 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
5741
5742         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
5743         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
5744
5745 2005-08-15  Owen Taylor  <otaylor@redhat.com>
5746
5747         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
5748         files for x11/xext. (Jonas Bonn)
5749
5750 2005-08-15  Tor Lillqvist  <tml@novell.com>
5751
5752         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
5753         inside GTK_NOTE.
5754
5755 2005-08-15  Owen Taylor  <otaylor@redhat.com>
5756
5757         * configure.in: Fix have_base_pc / have_base_x_pc typo.
5758
5759         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
5760         (#313417, James Andrewartha)
5761
5762         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
5763         FcNameConstant(). (More of #313417)
5764
5765 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
5766
5767         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
5768         modal dialogs, make sure to inherit the window group from 
5769         the parent, since we don't inherit window groups across
5770         transient parents currently.  (#312918, Christian Persch)
5771
5772         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
5773         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
5774
5775         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
5776         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
5777         gracefully.  (#312796, Jonathan Blandford)
5778
5779         * tests/testtoolbar.c: Add some more tests for menu placement.
5780
5781         * gtk/gtkmenutoolbutton.c (menu_position_func): 
5782         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
5783         of toolbutton menus and of the overflow menu.  (#312937, 
5784         #153870, Christian Persch, Paolo Borelli)
5785
5786 2005-08-15  Tor Lillqvist  <tml@novell.com>
5787
5788         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
5789         the nonportable <libgen.h> and dirname().
5790
5791 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
5792
5793         * gtk/gtksizegroup.c: Use object data to mark widgets and
5794         groups as visited, so that we avoid constant extra list
5795         traversals. Also allocate quarks in class_init.  (#311618,
5796         Michael Natterer)
5797
5798         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
5799         download location for the hicolor icon theme. (#313475, Olexiy 
5800         Avramchenko)
5801
5802         * gtk/gtkicontheme.c: Remove debug spew. 
5803
5804 2005-08-15  Owen Taylor  <otaylor@redhat.com>
5805
5806         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
5807         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
5808         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
5809         Handle pixmap == NULL when checking for a colormap.
5810         (Allin Cottrell).
5811
5812 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
5813
5814         * gtk/updateiconcache.c: Store only one copy of the pixel data
5815         for symlinked icons. To achieve this, maintain a hashtable 
5816         mapping pathnames to pixel data, and share the pixel data for
5817         all symlinks resolving to the same pathname. When writing out
5818         the image data, write out the pixel data only the first time
5819         it is met, and store the offset pointing to the first copy
5820         for use in all later cases.
5821         This reduces the size of the Bluecurve icon cache from 40
5822         to 13MB. (#312972)
5823