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