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