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