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