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