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