]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-8
Call gettext_initialization() here as well. (#311612, Dan Winship)
[~andy/gtk] / ChangeLog.pre-2-8
1 2005-08-01  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkmain.c (do_post_parse_initialization): Call
4         gettext_initialization() here as well.  (#311612, Dan Winship)
5
6 2005-08-01  Tor Lillqvist  <tml@novell.com>
7
8         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
9         Implement using FlashWindowEx(). (#309423)
10
11 2005-07-30  Hans Breuer  <hans@breuer.org>
12
13         * gtk/makefile.msc.in tests/makefile.msc : updated
14
15 2005-07-30  Johan Dahlin  <jdahlin@async.com.br>
16
17         * gtk/gtkctree.c (gtk_ctree_class_init): Do not use | 
18         G_PARAM_STATIC_NAME in the type field, makes subclassing possible.
19
20 2005-07-29  Claudio Saavedra  <csaavedra@alumnos.utalca.cl>
21
22         * docs/reference/gtk/migrating-GtkAction.sgml: Declaring the 
23         GtkActionEntry arrays static const. Fixes #301612.
24
25 2005-07-29  J. Ali Harlow  <ali@juiblex.co.uk>
26
27         * gtk/Makefile.am: Include gtkwin32embed.h in EXTRA_DIST
28         unconditionally. Fixes #311972.
29
30 2005-07-28  Federico Mena Quintero  <federico@ximian.com>
31
32         * perf/README: Update for the new API of the profiler.
33
34         * perf/gtkwidgetprofiler.[ch]: New files with a widget profiler
35         object.  This is the old content of timers.[ch] turned into a nice
36         object, with signals for creation and reporting.  The profiler
37         needs to maintain some state when reusing the widget, so it's
38         useful to turn it into a real object.
39
40         Break down timing show_all into GTK_WIDGET_PROFILER_REPORT_MAP and
41         GTK_WIDGET_PROFILER_REPORT_EXPOSE.
42
43         * perf/main.c: Refactor to use GtkWidgetProfiler.
44
45         * perf/appwindow.c (content_area_new): Make this just create a
46         notebook, instead of a complex arrangement of panes.
47
48         * perf/widgets.h: New header file for all the "create a widget"
49         utility functions.
50
51         * perf/treeview.c: New file.  Moved the tree view part from
52         appwindow.c over to here; GtkTreeView really needs its own tests.
53         (tree_view_new): Set the shadow type to IN.
54
55         * perf/textview.c: Likewise moved over from appwindow.c, but for
56         GtkTextView.
57         (text_view_new): Set the shadow type to IN.
58
59         * perf/Makefile.am (testperf_SOURCES): Add the new source files;
60         remove appwindow.h and timers.[ch].
61
62         * perf/timers.[ch]: Removed.
63
64         * perf/appwindow.h: Removed.
65
66 2005-07-29  Tor Lillqvist  <tml@novell.com>
67
68         * gdk/win32/gdkevents-win32.c: Remove ifdeffed out code relating
69         to the gdk-ping message. Use the global _gdk_display instead of
70         calling gdk_display_get_default() or gdk_drawable_get_display()
71         which would return _gdk_display anyway.
72         (append_event, apply_filters, gdk_event_translate): Drop any
73         GdkDisplay parameter as we only have one display anyway. Use
74         _gdk_display where needed.
75         (gdk_event_apply_filters): Delete, move the code into its only
76         caller, apply_filters().
77         (generate_button_event): Factor out code from two places in
78         gdk_event_translate().
79         (gdk_event_translate): Call generate_button_event() in place of
80         inline code.
81
82         * gdk/win32/gdkevents-win32.c (generate_grab_broken_event): New
83         static function to generate and append the GDK_GRAB_BROKEN events.
84         (gdk_pointer_grab, gdk_keyboard_grab): Generate grab broken events
85         when overriding a grab inside the application, like in the X11
86         backend. Final bits of the fix for #107320, hopefully.
87         (print_event): Handle also GDK_SETTING, GDK_OWNER_CHANGE and
88         GDK_GRAB_BROKEN events.
89         (gdk_event_translate): Call generate_grab_broken_event() in place
90         of inline code.
91         
92         * gdk/win32/gdkdrawable-win32.c (blit_inside_drawable): Rename
93         from blit_inside_window(), as it now does blitting inside a
94         bitmap, too. No code change, still just call BitBlt().
95         (_gdk_win32_blit): Check for source equalling destination
96         first. (#169508, #131977) 
97         Do away with the superfluous local draw_impl variable, the
98         parameter to this function is already a GdkDrawableImplWin32*, no
99         need to copy and cast it.
100
101 2005-07-28  Robert Ögren  <gtk@roboros.com>
102
103         Avoid spurious core pointer events when the tablet pen is lifted.
104         (#167000)
105
106         * gdk/win32/gdkinput-win32.c (set_ignore_core): New static function,
107         handles delayed unsetting of _gdk_input_ignore_core.
108         (_gdk_input_other_event): Call set_ignore_core instead of setting
109         _gdk_input_ignore_core directly.
110
111 2005-07-28  Dom Lachowicz <cinamod@hotmail.com>
112
113         * modules/engines/ms-windows/*: Re-sync with gtk-wimp CVS. Notable
114         changes include: menu/toolbars have a gradient applied to them; better
115         handling of menu/toolbar shadows, tracking theme settings;
116         sliders/scales now use XP theming; status bar grippies drawn properly;
117         convincing toolbar grippies are drawn for the Win2k theme; notebook
118         tabs now have that orange stripe across their top; a host of scrollbar
119         bugs are fixed
120         
121 2005-07-27  Tor Lillqvist  <tml@novell.com>
122
123         * gdk/win32/gdkmain-win32.c (_gdk_win32_psstyle_to_string): Handle
124         PS_ALTERNATE, too.
125
126         * gdk/win32/gdkmain-win32.c (gdk_screen_get_height_mm): Fix for
127         multi-monitor cases. (#311677, Tim Evans)
128
129 2005-07-26  Owen Taylor  <otaylor@redhat.com>
130
131         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Fix to be
132         monotonic in the original size (#308145, Morten Welinder)
133
134 2005-07-26  Elijah Newren  <newren@gmail.com>
135
136         Revert part of patch from #166379; don't have gtk_window_present()
137         change a window's desktop, but rather leave it up to the WM.
138         (#311653)
139         
140         * gtk/gtkwindow.c (gtk_window_present_with_time): Don't change a
141         window's workspace
142
143 2005-07-26  Tor Lillqvist  <tml@novell.com>
144
145         * gtk/gtkplug-win32.c: Declare GetAncestor() and define GA_PARENT
146         if missing (MSVC6). (#311633)
147
148 2005-07-26  Federico Mena Quintero  <federico@ximian.com>
149
150         * perf/: New directory with the start of a framework for testing
151         performance in GTK+.
152
153         * Makefile.am (SRC_SUBDIRS): Added the perf directory.
154
155         * configure.in (AC_OUTPUT): Generate perf/Makefile.
156
157 2005-07-26  Matthias Clasen  <mclasen@redhat.com>
158
159         * gtk/gtkfilechooserdefault.c: Fix up includes on Win32.  
160         (#311630, Kazuki Iwamoto)
161
162         * gtk/gtkimcontextsimple.c: Add ISO_Level3_Shift to 
163         the list of keysyms to ignore for composition, since
164         AltGr keys produce it in some keyboard layouts.  (#307283)
165
166         * gtk/gtkwidget.h: 
167         * gtk/gtk.symbols: Remove G_GNUC_NULL_TERMINATED from
168         gtk_widget_new as well, pointed out by Kjartan Maraas.
169
170 2005-07-25  Matthias Clasen  <mclasen@redhat.com>
171
172         * gtk/gtkhsv.c (paint_triangle): Pad out the full width, in 
173         an attempt to work around bug #311225. 
174
175         * gtk/gtktreemodelsort.c: Trivial doc fixes.
176
177         * gtk/gtktreesortable.c: Talk about comparison functions, not
178         sort functions in some places.  (#311398, Fabrice Bauzac)
179
180         * gtk/gtk.symbols: 
181         * gtk/gtkobject.[hc]: 
182         * gtk/gtkfilechooserdialog.[hc] 
183         * gtk/gtkdialog.[hc]: Remove the G_GNUC_NULL_TERMINATED marker
184         from a number of varargs functions where we allow to omit the
185         varargs completely.  (#311465, Callum McKenzie)
186
187 2005-07-22  Matthias Clasen  <mclasen@redhat.com>
188
189         * === Released 2.7.4 === 
190
191         * NEWS: Updates
192
193         * gtk/gtkmessagedialog.c (gtk_message_dialog_format_secondary_markup): 
194         Point out escaping oversight.  (#311260, Owen Taylor)
195
196 2005-07-21  Matthias Clasen  <mclasen@redhat.com>
197
198         * gtk/gtkcombobox.c (gtk_combo_box_list_destroy): Cleanup
199         a possible resize idle.  (#311141, Robert Ögren)
200
201         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_changed): 
202         (gtk_tree_model_sort_sort_level): Ref the level while using it,
203         otherwise it may get nuked by gtk_tree_model_sort_increment_stamp.
204         (gtk_tree_model_sort_row_deleted): Don't leak the root level 
205         here.  (#300089, James Bramford, Markku Vire)
206
207 2005-07-21  Federico Mena Quintero  <federico@ximian.com>
208
209         * gtk/gtkfilechooser.c (gtk_file_chooser_set_filename): Clarify
210         the usage of this function.
211         (gtk_file_chooser_set_uri): Likewise.
212         (gtk_file_chooser_set_current_name): Likewise.
213
214         * gtk/gtkfilechooserdefault.c (set_file_system_backend):
215         Instrument this function for profiling as well.
216         (gtk_file_chooser_default_init): Likewise; just to have a marker
217         of where instance initialization begins.
218
219 2005-07-21  Owen Taylor  <otaylor@redhat.com>
220
221         * gtk/gtkwidget.c (update_pango_context): Fix a couple of leaks.
222
223 2005-07-21  Christian Rose  <menthos@menthos.com>
224
225         * configure.in: Added "hy" to ALL_LINGUAS.
226
227 2005-07-21  Matthias Clasen  <mclasen@redhat.com>
228
229         * NEWS: Updates
230
231         * gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Be
232         a bit more careful to not shrink the label to a negative
233         width.  (#311175, Thomas Vander Stichele)
234
235         * gtk/gtk.symbols: mark gtk_socket_steal as deprecated.
236
237         * configure.in: Bump the cairo requirement.
238
239 2005-07-19  Owen Taylor  <otaylor@redhat.com>
240
241         * gtk/gtksettings.c gtk/gtkwidget.c: Change machinery for
242         following font rendering xsettings to set cairo font
243         options on PangoContext
244
245         * gdk/x11/gdkxftdefaults.c gdk/x11/gdkevents-x11.c gdkscreen-x11.h
246         gdkprivate-x11.h: Get default values for rendering options
247         (such as antialiasing, dpi) from the Xft resources for the
248         display, borrowing a bit of code from Xft.
249
250         * gtk/gtksettings.c (gtk_settings_class_init): Fix docs for
251         values of gtk-xft-hintstyle.
252
253 2005-07-21  Tor Lillqvist  <tml@novell.com>
254
255         Make GtkPlug/Socket cross-platform: Add Win32 implementation,
256         splice out X11 implementation to separate files. (#58541)
257             
258         * gtk/gtk.symbols: Make GtkPlug/Socket API available with all
259         backends.
260
261         * gtk/Makefile.am: Changes to build GtkPlug/Socket with all
262         backends.
263
264         * gtk/gtksocket.c
265         * gtk/gtkplug.c: Splice out backend-dependend parts to separate
266         files, see below.
267
268         * gtk/gtksocketprivate.h
269         * gtk/gtkplugprivate.h: New files. Declare the backend-specific
270         functions, and the private backend-independent functions they call
271         back to.
272
273         * gtk/gtksocket-stub.c
274         * gtk/gtkplug-stub.c
275         * gtk/gtksocket-x11.c
276         * gtk/gtkplug-x11.c
277         * gtk/gtksocket-win32.c
278         * gtk/gtkplug-win32.c
279         * gtk/gtkwin32embed.h
280         * gtk/gtkwin32embed.c: New files, containing the backend-specific
281         parts of GtkPlug/Socket.
282
283         * gtk/gtkxembed.h
284         * gtk/gtkxembed.c (_gtk_xembed_message_name): New function, used
285         in error messages and debugging output.
286         
287         * gtk/gtkwindow.c (gtk_window_show): No need for ifdef, can now
288         use GTK_IS_PLUG() with all backends.
289
290         * tests/testsocket_common.c: Make it work on Win32, too.
291
292 2005-07-21  Tor Lillqvist  <tml@novell.com>
293
294         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Use
295         wide-char API when available. (#311079, Peter Zelezny)
296
297 2005-07-21  Matthias Clasen  <mclasen@redhat.com>
298
299         * gtk/gtkwidget.c (gtk_widget_modify_bg, gtk_widget_modify_base): 
300         Add hints on how to handle "no window" widgets.  (#136347)
301
302 2005-07-20  Keith Packard  <keithp@keithp.com>
303
304         * gdk/x11/gdkdrawable-x11.c: (gdk_x11_ref_cairo_surface):
305
306         Follow change in cairo API to add Screen* to
307         cairo_xlib_create_surface_for_bitmap
308
309 2005-07-20  Matthias Clasen  <mclasen@redhat.com>
310
311         * gtk/gtkicontheme.c (load_svg_at_size): Explicitly use the 
312         svg loader, if available. This should help with the fact that
313         svg is not reliably sniffable with the current gdk-pixbuf sniffing
314         code. 
315
316         * gtk/gtkstyle.c (gtk_default_draw_expander): Make sure expanded
317         expanders are not fuzzy.  (#310172, reported by Alexander Larsson,
318         patch by Owen Taylor)
319
320         * gtk/gtkdnd.c (gtk_drag_begin_internal): Don't fail if we
321         can't get a keyboard grab.  (#168351)
322
323         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_[sg]et_property):
324         Add GTK_FILE_CHOOSER_PROP_DO_OVERWRITE_CONFIRMATION. 
325
326 2005-07-19  Federico Mena Quintero  <federico@ximian.com>
327
328         * gtk/gtkfilechooserdefault.c: Added a few utility functions for
329         profiling; instrument the code, make it conditional.
330
331 2005-07-19  Kristian Rietveld  <kris@gtk.org>
332
333         * gtk/gtkentry.c (gtk_entry_move_forward_word): don't iterate
334         past the end of the string, so pango_layout_get_cursor_pos() won't
335         complain. (#309211, Tommi Komulainen).
336
337 2005-07-19  Tor Lillqvist  <tml@novell.com>
338
339         * gtk/gtkmain.c (check_sizeof_GtkWindow, check_sizeof_GtkBox):
340         Don't bother mentioning the -fnative-struct (used by GCC 2) switch
341         in the error message any longer.
342
343 2005-07-18  Matthias Clasen  <mclasen@redhat.com>
344
345         * gdk/gdkpixbuf-render.c: Small formatting fixes in doc comments. 
346
347         * gtk/gtkcombobox.c (gtk_combo_box_model_row_deleted) 
348         (gtk_combo_box_model_row_inserted): Remove useless calls
349         to gtk_tree_row_reference_inserted/deleted, since we
350         don't use manual row references here. 
351
352         * gtk/gtkmain.c (gtk_parse_args, gtk_init_with_args): Call
353         gettext_initialization before checking gtk_initialized, otherwise
354         there are scenarios where it is not called at all. For an
355         example, see tests/testfilechooserbutton.c.  (#310323, 
356         Arkady L. Shane)
357
358 2005-07-18  Tor Lillqvist  <tml@novell.com>
359
360         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get): Be sure to remove
361         any possible leftover clipping region in the DC if we don't want
362         any clipping. Thanks to Robert Ögren. (#309823)
363
364         * configure.in (GDK_EXTRA_LIBS): [Win32] Bypass libtool, use
365         -Wl,-luuid. This avoids a libtool warning as libuuid is static.
366
367 2005-07-18  Matthias Clasen  <mclasen@redhat.com>
368
369         * gtk/gtkcombobox.c (gtk_combo_box_set_focus_on_click): Propagate
370         the focus-on-click value to the button.  (#310543, Christian Persch)
371
372         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a note
373         about the need to handle expose events. We really need a chapter
374         on the GTK+ drawing model that we can refer to here... (#310765,
375         Steve Chaplin)
376
377 2005-07-16  Tor Lillqvist  <tml@novell.com>
378
379         * configure.in (GDK_EXTRA_LIBS): [Win32] Put -luuid back, it is
380         needed in case one builds without the ie55 stuff. (#310582)
381
382 2005-07-15  Matthias Clasen  <mclasen@redhat.com>
383         
384         * configure.in: Bump version
385
386         * === Released 2.7.3 ===
387         
388         * gdk/gdkdraw.c (gdk_draw_drawable): Add better docs.  
389         (#310192, Owen Taylor)
390
391 2005-07-15  Matthias Clasen  <mclasen@redhat.com>
392
393         * NEWS: Updates
394
395         * gtk/gtkentry.c (gtk_entry_move_forward_word): 
396         (gtk_entry_move_backward_word): Don't treat whitespace as
397         words for keynav, pointed out by Owen Taylor.
398
399 2005-07-15  Federico Mena Quintero  <federico@ximian.com>
400
401         * gtk/gtkfilechooserdefault.c
402         (should_respond_after_confirm_overwrite): Take the parent folder
403         path instead of the display name, to avoid doing duplicated work
404         in gtk_file_chooser_default_should_respond().
405
406 2005-07-15  Federico Mena Quintero  <federico@ximian.com>
407
408         * gtk/gtkfilechooserdefault.c
409         (confirm_dialog_should_accept_filename): Take the display name of
410         the folder as well so that we can present a better message.  Use a
411         stock cancel button, "_Replace", and GTK_STOCK_SAVE_AS.
412         (gtk_file_chooser_default_should_respond): Pass the file part and
413         folder display name directly to the function above.  Oops, only do
414         the confirmation dialog if the file exists.
415
416 2005-07-15  Federico Mena Quintero  <federico@ximian.com>
417
418         * gtk/gtkfilechooserdefault.c
419         (confirm_dialog_should_accept_filename): Use header capitalization
420         for the buttons, per the HIG.
421
422         * gtk/gtk.symbols: Add the new functions.
423
424         * tests/testfilechooser.c (confirm_overwrite_cb): Add a test for
425         the confirm-overwrite signal.
426
427         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Remove the
428         stub documentation for the "confirm-overwrite" signal.
429         (gtk_file_chooser_set_do_overwrite_confirmation): Add "Since: 2.8"
430         to the docs.
431         (gtk_file_chooser_get_do_overwrite_confirmation): Likewise.
432
433 2005-07-14  Federico Mena Quintero  <federico@ximian.com>
434
435         Add overwrite confirmation for SAVE mode.  Fixes bug #152850:
436
437         * gtk/gtkfilechooser.h: Add prototypes for
438         gtk_file_chooser_set/get_do_overwrite_confirmation().
439         (GtkFileChooserConfirmation): New enum for the result of the
440         "confirm-overwrite" signal.
441
442         * gtk/gtkmarshalers.list: Add ENUM:VOID.
443
444         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add a
445         "do-overwrite-confirmation" boolean property.
446         (gtk_file_chooser_set_do_overwrite_confirmation): Implement.
447         (gtk_file_chooser_get_do_overwrite_confirmation): Implement.
448         (confirm_overwrite_accumulator): New accumulator for the signal.
449
450         * gtk/gtkfilechooserutils.h (GtkFileChooserProp): Add
451         GTK_FILE_CHOOSER_PROP_DO_OVERWRITE_CONFIRMATION.
452
453         * gtk/gtkfilechooserutils.c
454         (_gtk_file_chooser_install_properties): Override the
455         do-overwrite-confirmation property.
456
457         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserIface): Add a
458         confirm_overwrite signal to the vtable.
459
460         * gtk/gtkfilechooserdefault.c
461         (gtk_file_chooser_default_set_property): Handle the new property.
462         (gtk_file_chooser_default_get_property): Likewise.
463         (get_selected_file_info_from_file_list): New helper function; code
464         taken from list_selection_changed().
465         (list_selection_changed): Use get_selected_file_info_from_file_list().
466         (should_respond_after_confirm_overwrite): New function.
467         (gtk_file_chooser_default_should_respond): Confirm when necessary.
468
469 2005-07-14  Matthias Clasen  <mclasen@redhat.com>
470
471         * gtk/gtk.symbols: Add new exported symbols.
472
473 2005-07-14  Tor Lillqvist  <tml@novell.com>
474
475         * gtk/gtkfilesystemwin32.c (filename_get_info): Implement getting
476         the MIME type of a file. Look it up in the Registry. Bug reported
477         by Hans Oesterholt.
478
479 2005-07-14  Tor Lillqvist  <tml@novell.com>
480
481         * configure.in (GDK_EXTRA_LIBS): Don't need -luuid on Win32. It
482         was some leftover, and in fact occasionally caused issues with
483         libtool as it made its way into the libgdk-win32-2.0.la file and
484         that way into the .la files of all libraries that depend on
485         GDK. (This happened only when building from CVS and not using a
486         full "make install" which would run the sanitize-la.sh script.)
487
488 2005-07-14  Matthias Clasen  <mclasen@redhat.com>
489
490         * gdk/x11/gdkevents-x11.c (set_screen_from_root): Don't assert if 
491         the xrootwin is invalid.  (#309997, Barbie LeVille)
492         (gdk_event_translate): Ignore events with an invalid root field.
493
494         * configure.in: Set interface age to 0.
495
496         * gtk/gtkimmodule.h: Move G_BEGIN_DECLS to the right spot, noticed
497         by Akira Tagoh.
498
499 2005-07-14  Kristian Rietveld  <kris@gtk.org>
500
501         * gtk/gtktreeviewcolumn.[ch] (gtk_tree_view_column_queue_resize): new
502         function (fixes #169961, reported by Morten Welinder).
503
504 2005-07-14  Kristian Rietveld  <kris@gtk.org>
505
506         * gtk/gtktreeview.[ch] (gtk_tree_view_get_visible_range): new
507         function. (fixes #105252, suggestion from Mikael Hallendal).
508
509 2005-07-13  Manish Singh  <yosh@gimp.org>
510
511         * demos/gtk-demo/iconview_edit.c: remove unused variable.
512
513 2005-07-13  Kristian Rietveld  <kris@gtk.org>
514
515         * gtk/gtktreemodel.[ch] (gtk_tree_row_reference_get_model): new
516         function. (#160879, Stefan Kost).
517
518 2005-07-13  Kristian Rietveld  <kris@gtk.org>
519
520         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): paint a flat box
521         on the area the treeview got allocated extra vertically (fixes
522         #142063, reported by Brian Bober).
523
524         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
525         make this function calculate real_cell_area and real_background_area
526         correctly. (fixes #309249, reported by Bernd Demian).
527
528 2005-07-13  Matthias Clasen  <mclasen@redhat.com>
529
530         * gtk/gtkcalendar.c (calendar_realize_arrows): Fix an 
531         unintentional case of width-for-height... (#310133, Luis Villa)
532
533 2005-07-13  Kristian Rietveld  <kris@gtk.org>
534
535         * gtk/gtktreeview.c (gtk_tree_view_new_column_width): let's take
536         the MIN of width and max_width here, not width and max_width != -1.
537         (fixes #144480, reported by Mikael Magnusson).
538
539 2005-07-13  Matthias Clasen  <mclasen@redhat.com>
540
541         * gtk/gtkicontheme.c (load_themes): Don't keep the caches
542         for unthemed directories in a separate list, instead append
543         them at the end of the dir_mtimes list, so that we can check
544         them for staleness like the other caches.  (#310221, Mark 
545         McLoughlin)
546
547         * configure.in: Check that we have a new enough Cairo.
548
549 2005-07-13  Robert Ögren  <gtk@roboros.com>
550
551         Fix handling of Aiptek and Aiptek-like graphical tablets such as Trust
552         on Windows. (#167004, thanks to "pnohant" for testing)
553
554         Code cleanup: Remove the unused and unmaintained code for using a
555         non-system tablet context (USE_SYSCONTEXT ifdef:s), suggested
556         by Tor Lillqvist.
557
558         * gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Handle
559         tablet drivers that don't support WTI_DDCTXS/WTI_DSCTXS gracefully.
560         Sligthly reorganize and simplify the code to support this.
561         (_gdk_input_wintab_init_check, _gdk_input_other_event): Remove
562         USE_SYSCONTEXT ifdef:s and the code for the case it was not defined.
563         (gdk_input_window_find_within): Removed.
564
565 2005-07-13  Matthias Clasen  <mclasen@redhat.com>
566
567         * gdk/win32/bdfcursor.c: Add Copyright/License information.
568         
569 2005-07-13  Kristian Rietveld  <kris@gtk.org>
570
571         * gtk/gtktreeview.c (validate_row): when !separator, don't add
572         the focus_line_width to width/height (happens in
573         _column_cell_get_size), but do add the vertical-separator to height,
574         we weren't taking this into account before.
575
576         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
577         take vertical-separator into account. (#309137, Ross Burton).
578
579 2005-07-13  Matthias Clasen  <mclasen@redhat.com>
580
581         * tests/treestoretest.c: 
582         * tests/testxinerama.c: 
583         * tests/testtreeview.c: 
584         * tests/testtreefocus.c: 
585         * tests/testtreeflow.c:
586         * tests/testtreeedit.c: 
587         * tests/testtreecolumns.c: 
588         * tests/testtext.c: 
589         * tests/testtextbuffer.c: 
590         * tests/testspinbutton.c: 
591         * tests/testsocket_common.c: 
592         * tests/testsocket_child.c: 
593         * tests/testsocket.c: 
594         * tests/testmultiscreen.c: 
595         * tests/testmultidisplay.c: 
596         * tests/testmerge.c: 
597         * tests/testmenus.c: 
598         * tests/testmenubars.c: 
599         * tests/testicontheme.c: 
600         * tests/testfilechooser.c: 
601         * tests/testentrycompletion.c: 
602         * tests/testdnd.c: 
603         * tests/testcombochange.c: 
604         * tests/testactions.c: 
605         * tests/testcombo.c: 
606         * tests/simple.c: 
607         * gtk/gtktextutil.c: 
608         * gtk/gtktexttypes.h: 
609         * gtk/gtktexttypes.c: 
610         * gtk/gtktexttagprivate.h: 
611         * gtk/gtktextsegment.h: 
612         * gtk/gtktextiterprivate.h: 
613         * gtk/gtktextchildprivate.h: 
614         * gtk/gtktextbtree.h: Add Copyright/License information.
615
616         * gtk/gtkicontheme.c (gtk_icon_theme_get_default) 
617         (gtk_icon_theme_get_for_screen): Add a warning about
618         unreffing icon themes.  (#310163, Rodney Dawes)
619
620 2005-07-13  Kristian Rietveld  <kris@gtk.org>
621
622         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): quit
623         maintaining the iter on every iteration, only get the iter when
624         we are about to call the foreach_func. Gives us a 10x speedup,
625         since maintaining iters is a lot more expensive than maintaining
626         paths. We lose a bit of sanity checking though. Thanks go to
627         Billy Biggs for pointing this out.
628
629 2005-07-12  Matthias Clasen  <mclasen@redhat.com>
630
631         * tests/testcairo.c (draw): Fix the same confusion here, too.
632
633         * gdk/gdkgc.c (make_stipple_tile_surface): Fix 
634         cairo_content_t <-> cairo_format_t confusion.  (#310086,
635         Carlos Garnacho Parro)
636
637         * gtk/gtkfilesystemunix.c 
638         (gtk_file_system_unix_volume_get_display_name): Follow
639         the Nautilus change and rename "Filesystem" to "File System",
640         string change.  (#310047, Vincent Noel)
641         
642 2005-07-12  Matthias Clasen  <mclasen@redhat.com>
643
644         * demos/gtk-demo/iconview.c: Rename this demo.
645
646         * demos/gtk-demo/iconview_edit.c: Add a demo for icon view
647         editing and drag-and-drop.
648
649         * demos/gtk-demo/geninclude.pl.in: Accept dashes in demo titles.
650
651 2005-07-12  Matthias Clasen  <mclasen@redhat.com>
652
653         * gtk/theme-bits/decompose-bits.c: 
654         * gtk/gtkfilechooserembed.c: 
655         * gtk/gtktextmarkprivate.h: 
656         * gtk/gtktexttagtable.h: 
657         * gtk/gtktexttagtable.c: 
658         * gtk/gtkrc.key.emacs: Add Copyright/License information.
659
660         * gdk/linux-fb/gdkrender-fb.c: 
661         * gdk/linux-fb/gdkpango-fb.c: 
662         * gdk/linux-fb/gdkdrawable-fb2.c: 
663         * gdk/linux-fb/gdkgc-fb.c: 
664         * gdk/linux-fb/gdkfbswitch.c: Add Copyright/License information.
665
666         * gdk/gdkwindow.h: 
667         * gdk/gdkvisual.h: 
668         * gdk/gdkselection.h: 
669         * gdk/gdkselection.c: 
670         * gdk/gdkregion.h: 
671         * gdk/gdkproperty.h: 
672         * gdk/gdkpixmap.h: 
673         * gdk/gdkpixbuf.h: 
674         * gdk/gdkkeyuni.c: 
675         * gdk/gdkintl.h: 
676         * gdk/gdkinput.h: 
677         * gdk/gdkimage.h: 
678         * gdk/gdkgc.h: 
679         * gdk/gdkfont.h: 
680         * gdk/gdkevents.h: 
681         * gdk/gdkdnd.h: 
682         * gdk/gdkcursor.h: 
683         * gdk/gdkcolor.h: Add Copyright/License information.
684
685 2005-07-11  Matthias Clasen  <mclasen@redhat.com>
686
687         * modules/input/imm-extra.h: Add Copyright/License information.
688
689 2005-07-11  Matthias Clasen  <mclasen@redhat.com>
690
691         * gtk/gtktexttag.c (gtk_text_tag_class_init) 
692         (gtk_text_tag_set_property): Remove the runtime warning about 
693         the invisible property, add a warning about possible remaining
694         problems to the documentation of the property.  (#66194)
695
696         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Don't
697         ever go unconditionally to the buffer ends; that doesn't work
698         if the initial or final portion of the buffer are invisible.
699
700 2005-07-11  Kristian Rietveld  <kris@gtk.org>
701
702         * gtk/gtktreeview.c (gtk_tree_view_class_init): add binding entry
703         for ctrl + backspace (move focus to parent without affecting
704         selection),
705         (gtk_tree_view_real_select_cursor_parent): implement ctrl+backspace
706         and simplify the function a bit. (#309296, Kathy Fernandes).
707
708 2005-07-11  Matthias Clasen  <mclasen@redhat.com>
709
710         Make gtk_window_present() move the window to the current
711         desktop, instead of letting the WM change the current
712         desktop to where the window is.  (#166379, Elijah Newren)
713         
714         * gdk/gdk.symbols: 
715         * gdk/x11/gdkx.h: 
716         * gdk/x11/gdkwindow-x11.c (gdk_x11_window_move_to_current_desktop): 
717         New function to move a window to the current desktop.
718         
719         * gtk/gtkwindow.c (gtk_window_present_with_time): Move the
720         window to the current desktop before giving it focus.  
721
722 2005-07-11  Matthias Clasen  <mclasen@redhat.com>
723
724         When dragging text, use a drag icon showing the (ellipsized)
725         text that is being dragged: (#161132, Kevin Duffus, patch
726         by Carlos Garnacho Parro)
727         
728         * gtk/gtktextutil.h: 
729         * gtk/gtktextutil.c (_gtk_text_util_create_drag_icon): Add
730         a function to create a pixmap for use when dragging text.
731
732         * gtk/gtktextview.c (gtk_text_view_start_selection_dnd): 
733         * gtk/gtklabel.c (gtk_label_motion): 
734         * gtk/gtkentry.c (gtk_entry_motion_notify): Use a drag icon
735         showing the text being dragged.  
736
737 2005-07-11  Matthias Clasen  <mclasen@redhat.com>
738
739         * gtk/gtkentry.c (gtk_entry_move_forward_word) 
740         (gtk_entry_move_backward_word): Match the text view change
741         to allow selecting whitespace with double-click.
742
743         * gtk/gtktextview.c (extend_selection): Make double-clicking
744         between words select whitespace.  (#309860, Mike Miller, patch
745         by Paolo Borelli)
746
747         * gtk/gtkiconview.c: Documentation improvements.  (#309946, 
748         Torsten Schoenfeld)
749
750 2005-07-10  Kristian Rietveld  <kris@gtk.org>
751
752         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): remove
753         unneeded check for negative window_y.
754
755 2005-07-10  Kristian Rietveld  <kris@gtk.org>
756
757         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): also move
758         to the next match when ctrl+g is pressed. (#156657, Matt T. Proud).
759
760 2005-07-10  Kristian Rietveld  <kris@gtk.org>
761
762         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): rework
763         function to make page up/down behave the same as in GtkTextView.
764         (Fixes #101220, Owen Taylor).
765
766 2005-07-09  Kristian Rietveld  <kris@gtk.org>
767
768         Fix #305737, patch from Tomislav Jonjic. This makes the
769         gtk_tree_store_insert* family of functions emit row_has_child_toggled
770         when needed (they didn't do that before).
771
772         * gtk/gtktreestore.c (gtk_tree_store_insert): emit
773         row_has_child_toggled when needed,
774         (gtk_tree_store_insert_before): fix a possible memleak,
775         emit row_has_child_toggled when needed,
776         (gtk_tree_store_insert_after): ditto.
777
778 2005-07-09  Kristian Rietveld  <kris@gtk.org>
779
780         * gtk/gtktreeview.c (gtk_tree_view_real_expand_row): when
781         open_all is TRUE, traverse the newly built tree to emit
782         row_expanded for the subitems. (rev 1.444, patch in #172319
783         broke this). Fixes #305582, reported by Billy Biggs.
784
785 2005-07-09  Tor Lillqvist  <tml@novell.com>
786
787         * configure.in: Look for windres on Win32. Drop build/* from
788         AC_CONFIG_FILES.
789
790         * Makefile.am: Drop build from SUBDIRS. 
791
792         * gdk/win32/rc/Makefile.am
793         * gdk/Makefile.am
794         * gtk/Makefile.am: Don't use the scripts in build/win32 to compile
795         the rc files into resource object files. (This means we lose the
796         build number increment magic, but I doubt it was that useful
797         anyway.) Instead use windres directly. To pass a normal .o file
798         produced by windres through libtool, which would want a .lo file,
799         pass it directly to the linker using a -Wl option.
800
801         * gdk/win32/rc/gdk.rc.in
802         * gtk/gtk-win32.rc.in: Replace BUILDNUMBER with 0.
803
804 2005-07-08  Kristian Rietveld  <kris@gtk.org>
805
806         Fixes #165034, reported by Jorn Baayen.
807
808         * gtk/gtkrbtree.[ch] (_gtk_rbtree_set_fixed_height): add a
809         mark_valid parameter (so we can mark all nodes as valid when we
810         are setting them to the fixed height).
811
812         * gtk/gtktreeview.c (initialized_fixed_height_mode): mark all
813         nodes as valid when setting the fixed height,
814         (do_validate_rows): update call to _set_fixed_height,
815         (gtk_tree_view_row_inserted): mark node as valid when fixed
816         height mode is enabled and a height has been set,
817         (gtk_tree_view_build_tree): if fixed height mode is enabled,
818         mark new nodes as valid in addition to setting the height.
819
820 2005-07-08  Matthias Clasen  <mclasen@redhat.com>
821
822         * configure.in: Bump version
823         
824         * === Released 2.7.2 ===
825
826         * NEWS: Updates
827
828         * gtk/gtkcelllayout.c (gtk_cell_layout_pack_start): 
829         (gtk_cell_layout_pack_end): Add a note about reusing cell
830         renderers.
831
832         * gtk/gtkdnd.c (gtk_drag_update_cursor): Pass a GdkDragAction to
833         gtk_drag_get_cursor.  (#309784, Sebastian Bacher)
834
835 2005-07-08  Tor Lillqvist  <tml@novell.com>
836
837         * gtk/gtkfilesel.c: Use g_get_host_name().
838
839 2005-07-07  Matthias Clasen  <mclasen@redhat.com>
840
841         * configure.in: Add -DHPPEX -DSHMLINK to CFLAGS for HP-UX.  
842         (#162979, Paul Cornett)
843
844         * gtk/gtkhscale.c (gtk_hscale_new_with_range): 
845         (gtk_vscale_new_with_range): Add some additional docs on 
846         precision here too.  (#309238, Steve Chaplin)
847
848         * gdk/x11/gdkmain-x11.c (generate_grab_broken_event): Don't
849         generate events on destroyed windows.
850
851         Implement Drag-and-Drop to the file list.  (#145121, Sven Neumann)
852         
853         * gtk/gtkfilechooserdefault.c (file_list_drag_data_received_cb) 
854         (file_list_drag_drop_cb, file_list_drag_motion_cb): New functions
855         to handle drag-and-drop on the file list.
856         (create_file_list): Set up drag-and-drop handlers on the file list.
857
858 2005-07-07  Matthias Clasen  <mclasen@redhat.com>
859
860         Fix #157787, reported by Jonathan Blandford: 
861         
862         * gtk/gtkfilechooserdefault.c 
863         (gtk_file_chooser_default_set_current_folder): Don't leave a 
864         "trail" behind when set_current_folder is called explicitly.
865         (gtk_file_chooser_default_update_current_folder): New function
866         that is called to update the current folder in response to
867         user actions.
868
869         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Add a boolean
870         keep_trail argument, and don't leave a "trail" behind unless
871         it is set.
872
873 2005-07-06  Manish Singh  <yosh@gimp.org>
874
875         * demos/gtk-demo/menus.c: change_orientation() should return void,
876         remove unused variable in do_menus().
877
878 2005-07-06  Tor Lillqvist  <tml@novell.com>
879
880         * gdk/win32/gdkcursor-win32.c
881         (gdk_win32_icon_to_pixbuf_libgtk_only): Don't create the GdkPixbuf
882         until we know that we have something to put in it.
883
884 2005-07-05  Matthias Clasen  <mclasen@redhat.com>
885
886         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): Add some
887         additional docs on precision.  (#309238, Steve Chaplin)
888
889         * modules/input/imime.c: Fix includes.  (#309462, Kazuki IWAMOTO)
890
891 2005-07-05  Matthias Clasen  <mclasen@redhat.com>
892
893         * doc/tools/widgets.c: Actually generate a file-button
894         image.
895
896 2005-07-06  Tor Lillqvist  <tml@novell.com>
897
898         * gdk/win32/gdkcursor-win32.c: Add comment about the current named
899         cursor implementation, and what it maybe really should do.
900         (gdk_win32_icon_to_pixbuf_libgtk_only): New function, code moved
901         here from gtk/gtkfilesystemwin32.c:extract_icon().
902         (gdk_cursor_get_image): Use
903         gdk_win32_icon_to_pixbuf_libgtk_only().
904
905         * gdk/gdk.symbols
906         * gdk/win32/gdkwin32.h: Declare gdk_win32_icon_to_pixbuf_libgtk_only().
907
908         * gtk/gtkfilesystemwin32.c (extract_icon): Use
909         gdk_win32_icon_to_pixbuf_libgtk_only().
910
911 2005-07-05  Matthias Clasen  <mclasen@redhat.com>
912
913         * gtk/gtkmenu.c (gtk_menu_grab_notify): Take window
914         groups into account.  (#309473, Diego Gonzalez)
915
916         * gtk/gtkwindow.[hc]: Add a non-exported function to
917         get the grab widget of a window group.
918
919 2005-07-05  Kristian Rietveld  <kris@gtk.org>
920
921         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): in the
922         'main' expose loop, add back the calls to _set_cell_data
923         removed earlier. (#309221, Matthias Clasen).
924
925 2005-07-05  Matthias Clasen  <mclasen@redhat.com>
926
927         * demos/gtk-demo/menus.c: Demonstrate vertical menubars.
928
929         * gtk/gtk.symbols:
930         * gtk/gtkaboutdialog.[hc]: Add a wrap-license property
931         with getter and setter.  (#165012, Christian Rose,
932         based on a patch by Christian Persch)
933
934 2005-07-05  Matthias Clasen  <mclasen@redhat.com>
935
936         * gdk/Makefile.am: Distribute the keyname-table.h header 
937         and the files that are used to construct it.  (#309421,
938         J. Ali Harlow)
939
940 2005-07-04  Matthias Clasen  <mclasen@redhat.com>
941
942         * gtk/gtkmenubar.c (gtk_menu_bar_set_pack_direction) 
943         (gtk_menu_bar_set_child_pack_direction): Queue a resize
944         on the contained menuitems as well.  
945
946         * demos/gtk-demo/appwindow.c: Break some overlong lines. 
947
948 2005-07-03  Hans Breuer  <hans@breuer.org>
949
950         * **/makefile.msc[.in] : updated
951         * gtk/gtkiconcache.c : <io.h> for open()
952         * gtk/gtkstyle.c : use G_PI instead of M_PI
953
954         * gdk/win32/gdkcursor-win32.c : implement gdk_cursor_new_from_name()
955         by mapping the lower case win32 api name to the respective cursor.
956         E.g. pass "wait" to get the IDC_WAIT cursor. Also allows to load
957         cursors from named resources in the executable.
958         (gdk_cursor_get_image) : just return NULL for now.
959
960         * gdk/win32/gdkgeometry-win32.c : implement gdk_window_move_region()
961         by delegation to ScollWindowEx(), untested.
962
963         * gdk/win32/gdkwindow-win32.c : stub for gdk_window_set_urgency_hint()
964
965 2005-07-03  Matthias Clasen  <mclasen@redhat.com>
966
967         * gtk/gtkimagemenuitem.c: Hmm, when committing my vertical
968         menubar patch, I forgot the GtkImageMenuItem changes. And I
969         managed to do 2 releases without noticing that...
970
971         * gtk/gtksettings.c (gtk_settings_class_init): Correct the 
972         blurb for the icon-sizes setting. String change.  
973         (#309355, Benjamin Berg)
974
975 2005-07-01  Matthias Clasen  <mclasen@redhat.com>
976
977         * configure.in: Bump version.
978
979         * === Released 2.7.1 ===
980         
981         * NEWS: Updates
982
983 2005-07-01  Matthias Clasen  <mclasen@redhat.com>
984
985         * gtk/gtkfilesel.c (cmpl_init_state): Prevent an infinite
986         loop when G_FILENAME_ENCODING is invalid.  (#309280, Padraig Brady)
987
988 Thu Jun 30 14:17:24 2005  Manish Singh  <yosh@gimp.org>
989
990         * gdk/x11/gdkprivate-x11.h: declare _gdk_xgrab_check_button_event.
991
992         * gtk/gtkbutton.c: fix signature of gtk_button_grab_broken.
993
994 2005-06-30  Matthias Clasen  <mclasen@redhat.com>
995
996         * gdk/x11/gdkvisual-x11.c (gdk_visual_decompose_mask): Avoid
997         infinite loop if a mask is zero.  (#309222, David Saxton)
998
999         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_fetch_child): 
1000         Clarify the code, gcc 4 complains about predecrement in MAX().
1001
1002         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): Don't
1003         prematurely unregister callbacks. 
1004
1005         * NEWS: Updates
1006
1007 2005-06-29  Matthias Clasen  <mclasen@redhat.com>
1008
1009         * gtk/gtkbutton.c (gtk_button_grab_broken): Handle broken
1010         grabs.
1011
1012         * gtk/gtkrange.c (gtk_range_grab_broken): Handle broken 
1013         grabs.
1014
1015         * gdk/gdkevents.h: Add a boolean to specify wether the broken
1016         grab was implicit.
1017
1018         * gdk/x11/gdkdisplay-x11.c (gdk_display_pointer_is_grabbed): 
1019         As the documentation states, don't return TRUE for
1020         implicit grabs.
1021
1022         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add
1023         a boolean field to store wether a pointer grab is implicit.
1024
1025         * gdk/x11/gdkmain-x11.c (_gdk_xgrab_check_button_event): 
1026         Track implicit grabs.
1027
1028         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
1029         _gdk_xgrab_check_button_event for button events.
1030
1031 2005-06-28  Matthias Clasen  <mclasen@redhat.com>
1032
1033         * gtk/gtkiconview.c (gtk_icon_view_calculate_item_size2): 
1034         Make sure that cell boxes are always completely inside
1035         the item area. 
1036
1037 2005-06-27  Matthias Clasen  <mclasen@redhat.com>
1038
1039         * demos/gtk-demo/main.c (create_tree): Make the list of
1040         demos scrollable.
1041
1042         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
1043         Fix positioning at the end of the line for lines ending
1044         in invisible characters.
1045         (gtk_text_layout_get_line_display): Set display->layout 
1046         to a PangoLayout, even for totally invisible lines. 
1047
1048         * gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): Ignore
1049         GrabBroken events which are caused by overgrabbing inside
1050         the application; menus rely on these for their operation.
1051         
1052         * gdk/gdkevents.h (struct _GdkEventGrabBroken): Add a 
1053         grab_window field.
1054
1055         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Set
1056         grab_window to NULL when generating GrabBroken events for
1057         WM_KILLFOCUS messages.
1058
1059         * gdk/x11/gdkmain-x11.c (_gdk_xgrab_check_unmap) 
1060         (_gdk_xgrab_check_destroy): Set grab_window to NULL when
1061         generating GrabBroken events when the grab window becomes
1062         unviewable or is destroyed.
1063
1064         * gdk/x11/gdkmain-x11.c (gdk_pointer_grab, gdk_keyboard_grab): 
1065         Generate GrabBroken events when overriding a grab inside
1066         the application. In this case, set grab_window to the new
1067         grab_window.
1068         
1069 2005-06-27  Matthias Clasen  <mclasen@redhat.com>
1070
1071         * gtk/gtkbutton.c (gtk_real_button_activate): Continue
1072         to activate even if we can't grab the keyboard.
1073         (gtk_button_finish_activate): Only ungrab when we have
1074         a keyboard grab.  (#172998, William Jon McCann)
1075
1076 2005-06-27  Matthias Clasen  <mclasen@redhat.com>
1077
1078         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): 
1079         Avoid a segfault. (#309054)
1080
1081 2005-06-27  Matthias Clasen  <mclasen@redhat.com>
1082
1083         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add
1084         fields for grab timestamps.
1085
1086         * gdk/x11/gdkmain-x11.c (gdk_pointer_grab, gdk_keyboard_grab): 
1087         Store grab timestamps when grabbing.
1088         
1089         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard_ungrab) 
1090         (gdk_display_pointer_ungrab): Don't unset the grab_window
1091         if the timestamps indicate that the ungrab will fails.
1092
1093         * gtk/gtkmenu.c (gtk_menu_grab_notify): Cancel menus when 
1094         they are grab-shadowed by something thats not a 
1095         submenu.  (#145416, Euan MacGregor)
1096
1097 2005-06-27  Owen Taylor  <otaylor@redhat.com>
1098
1099         * gtk/gtk[hv]ruler.c (gtk_[hv]ruler_draw_ticks): 
1100         Fix indentation.
1101
1102 2005-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1103
1104         * gtk/gtkhruler.c: (gtk_hruler_draw_ticks): Fix leaks
1105         * gtk/gtkvruler.c: (gtk_vruler_draw_ticks): Same
1106         Closes bug #308953.
1107
1108 2005-06-27  Matthias Clasen  <mclasen@redhat.com>
1109
1110         * gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Use
1111         GMappedFile.
1112
1113         * configure.in: Require GLib 2.7.1
1114
1115 2005-06-26  Matthias Clasen  <mclasen@redhat.com>
1116
1117         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_finalize): 
1118         Unregister XIM callbacks here.  (#309054)
1119
1120         * modules/input/gtkimcontextxim.h: Small cleanup.
1121
1122         * gtk/gtkmenu.c (gtk_menu_paint): Pay attention to the
1123         scroll offset when drawing the box.  (#308834, Tom von 
1124         Schwerdtner)
1125
1126 2005-06-26  Tor Lillqvist  <tml@novell.com>
1127
1128         * gdk/Makefile.am
1129         * gtk/Makefile.am: Current GNU tools do understand the PRIVATE
1130         keyword, so no need to remove those entries from the import
1131         library. libtool installs the .dll.a import library itself, so no
1132         need to do it here. Install the .def file.
1133
1134 Sun Jun 26 00:04:36 2005  Manish Singh  <yosh@gimp.org>
1135
1136         * gdk/gdkevents.c (gdk_event_get_time, gdk_event_get_state): add
1137         GDK_GRAB_BROKEN to the switch cases.
1138
1139         * gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): remove unused
1140         variables.
1141
1142         * gtk/gtkpaned.c (gtk_paned_grab_broken): return TRUE.
1143
1144 2005-06-26  Matthias Clasen  <mclasen@redhat.com>
1145
1146         * gtk/gtktreeview.c (gtk_tree_view_grab_broken): Stop column
1147         header drag operations if the grab is broken.
1148
1149         * gtk/gtkhsv.c (gtk_hsv_grab_broken): Stop the drag if
1150         the grab is broken.
1151
1152         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Don't do 
1153         explicitly ungrab pointer and keyboard. We're unmapping
1154         the grab window anyway. 
1155         (gtk_combo_box_popup): Handle grab failures.
1156
1157 2005-06-25  Matthias Clasen  <mclasen@redhat.com>
1158
1159         * gdk/x11/gdkmain-x11.c (gdk_keyboard_grab, gdk_pointer_grab):
1160         Don't emit grab-broken for overgrabbing, until we figure
1161         out how to do that without breaking the menu code.
1162
1163 2005-06-25  Matthias Clasen  <mclasen@redhat.com>
1164
1165         Add a GrabBroken event to GDK, and a grab-broken-event
1166         signal to GtkWidget.  (#107320, Simon Cooke, initial patch 
1167         by John Ehresman)
1168
1169         * gdk/gdkevents.h: Add a GDK_GRAB_BROKEN event type,
1170         define a GdkEventGrabBroken event struct.
1171
1172         * gdk/win32/gdkevents-win32.c (gdk_event_translate): 
1173         Generate GrabBroken events in response to WM_KILLFOCUS.
1174
1175         * gdk/x11/gdkmain-x11.c: Generate GrabBroken events
1176         when a grab is broken by the window becoming unviewable,
1177         or by another grab from the same client.
1178         
1179         * gtk/gtkwidget.h (GtkWidgetClass): Add grab_broken_event.
1180
1181         * gtk/gtkwidget.c (gtk_widget_event_internal): Translate
1182         GrabBroken events into grab_broken_event signals.
1183
1184         * gtk/gtkmain.c (gtk_main_do_event): Propagate GrabBroken
1185         events.
1186
1187         * gtk/gtkmenushell.c (gtk_menu_shell_grab_broken): Deactivate
1188         the menu when the grab is broken.
1189
1190         * gtk/gtkcolorsel.c (gtk_color_selection_grab_broken): Stop 
1191         the color picker if the grab is broken.
1192
1193         * gtk/gtkpaned.c (gtk_paned_grab_broken): Stop the drag if
1194         the grab is broken.
1195
1196 2005-06-25  Matthias Clasen  <mclasen@redhat.com>
1197
1198         Add some new stock items.  (#166480, Kristof Vansant)
1199         
1200         * gtk/stock-icons/stock_fullscreen_16.png: 
1201         * gtk/stock-icons/stock_fullscreen_24.png: 
1202         * gtk/stock-icons/stock_leave_fullscreen_16.png: 
1203         * gtk/stock-icons/stock_leave_fullscreen_24.png: 
1204         * gtk/stock-icons/stock_info_16.png: 
1205         * gtk/stock-icons/stock_info_24.png: New icons.
1206
1207         * gtk/stock-icons/Makefile.am: Add new icons.
1208
1209         * gtk/gtkstock.h: Define names for the new icons.
1210
1211         * gtk/gtkstock.c (builtin_items): Register new stock items.
1212         
1213         * gtk/gtkiconfactory.c (get_default_icons): Register new 
1214         stock icons.
1215
1216 2005-06-24  Owen Taylor  <otaylor@redhat.com>
1217
1218         * gdk/gdkrgb.c (gdk_rgb_select_conv): Fix up selection of
1219         conversion functions for MSB machines: convert_0888[_br]
1220         now work on bytes so are endian independent. 
1221         (Reported by David Zeuthen)
1222
1223 2005-06-24  Matthias Clasen  <mclasen@redhat.com>
1224
1225         * gtk/gtktextview.c (gtk_text_view_scroll_hpages): Don't
1226         jump to the next line if we are at the end of the line.  
1227         (gtk_text_view_move_cursor_internal): Make movement by
1228         paragraphs up/down symmetric.  (#307055, Behnam Esfahbod)
1229
1230 2005-06-23  Tor Lillqvist  <tml@novell.com>
1231
1232         Improve and simplify line segment rendering on Win32, especially
1233         the implementation of GDK_CAP_NOT_LAST, and dashed lines. Fixes
1234         bugs #306396 and #308413.
1235
1236         * gdk/win32/gdkprivate-win32.h (GdkGCWin32): Save the GdkGC's
1237         line_style, cap_style and join_style as such in the
1238         GdkGCWin32. Don't need to keep the pen_double_dash flag, we can
1239         check the line_style.
1240
1241         * gdk/win32/gdkgc-win32.c (fixup_pen): New internal function. Sets
1242         up the GDI pen type, style, end cap and join attributes to use
1243         based on the pen width, GDK line style, end cap style, and join
1244         style.
1245
1246         For a narrow (zero-width) GDK pen with the GDK_CAP_NOT_LAST end
1247         cap style, which typically are used for XOR drawing where it is
1248         essential that the last pixel is not drawn, use a GDI cosmetic
1249         pen. Only for a cosmetic pen does GDI not draw the last pixel. I
1250         deduced this by experimetation, the documentation is rather vague.
1251
1252         For other GDK pens use a geometric GDI pen. If the width is 0 or 1
1253         and the GDK end cap style is GDK_CAP_BUTT, and the line style is
1254         GDK_LINE_SOLID, use PS_ENDCAP_ROUND. This ensures that also
1255         single-pixel length lines are drawn. (For sngle-pixel width lines
1256         roundness as such is of course irrelevant.) For dashed lines, use
1257         PS_ENDCAP_FLAT.
1258
1259         For wide lines use PS_ENDCAP_FLAT, _ROUND or _SQUARE,
1260         respectively, for GDK_CAP_BUTT, GDK_CAP_ROUND and GDK_CAP_PROJECTING.
1261
1262         For one pixel on-off dashed lines, use PS_ALTERNATE, it seems to
1263         work better than PS_USERSTYLE. For other dashed lines, use
1264         PS_USERSTYLE and the dashes as set by the user (or the default
1265         four-pixel on-off style).
1266
1267         (gdk_win32_gc_values_to_win32values, gdk_win32_gc_set_dashes):
1268         Call fixup_pen() to do the pen settings after modifying some of
1269         the GDK GC attributes that affect pens.
1270
1271         * gdk/win32/gdkdrawable-win32.c (render_line_horizontal,
1272         render_line_vertical, draw_segments): Check GdkGCWin32::line_style
1273         instead of the the removed pen_double_dash member. Don't use
1274         PATCOPY unconditionally in the PatBlt() call, use a raster op
1275         code that depends on the GC function in use.
1276
1277         (draw_rectangle, draw_segments, draw_lines): Be more careful in
1278         deciding when to do the manual dash rendering.
1279
1280         (draw_segments): Don't do any manual "last point" drawing at
1281         all. The above changes takes care of narrow line segments being
1282         drawn correctly in most cases, at least on NT-based Windows.
1283
1284 2005-06-23  Matthias Clasen  <mclasen@redhat.com>
1285
1286         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_get_folder): 
1287         Fix an error in the cache timeout logic.  (#166601, Morten
1288         Welinder)
1289
1290         * gtk/gtktreeview.c (gtk_tree_view_key_press): Change the
1291         keynav for header reordering and resizing to Alt-arrows and
1292         Shift-Alt-arrows, following a proposal by the keynav 
1293         authority. (#308666, Calum Benson)
1294
1295         * gtk/gtkiconcache.c (_gtk_icon_cache_new_for_path): Remove
1296         a leftover debugging envvar.  
1297
1298 2005-06-23  Owen Taylor  <otaylor@redhat.com>
1299
1300         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Fix the
1301         big endian case for 3-channel source. (Reported by
1302         David Zeuthen)
1303
1304 2005-06-23  Matthias Clasen  <mclasen@redhat.com>
1305
1306         * gtk/gtkbutton.c (gtk_button_construct_child): Don't
1307         trigger warnings if there are extra references to the
1308         hbox.  (#308677, Dan Winship)
1309
1310         * gtk/gtkfilesystemunix.c (bookmark_list_write): Use
1311         g_file_set_contents().  (#308722, Morten Welinder)
1312
1313 2005-06-22  Matthias Clasen  <mclasen@redhat.com>
1314
1315         * gdk/x11/gdkdnd-x11.c (xdnd_finished_filter): Set the
1316         time field in the event.  (#308573, Morten Welinder)
1317
1318         * gtk/gtkfilesystemunix.c: Remove gratitious differences
1319         between the stable branch and HEAD, which sneaked in with
1320         the bookmark renaming.  
1321
1322 2005-06-22  Kjartan Maraas  <kmaraas@gnome.org>
1323
1324         * gtk/gtkhsv.c: (gtk_hsv_expose): Don't leak the cairo context
1325         Closes bug #308581.
1326
1327 2005-06-21  Matthias Clasen  <mclasen@redhat.com>
1328
1329         * gtk/gtkarrow.c:
1330         * gtk/gtkimage.c:
1331         * gtk/gtklabel.c:
1332         * gtk/gtkpixmap.c: Modify all of the GtkMisc widgets to round down
1333         on centering calculations to match the behaviour of other parts
1334         of GTK+. (#307419, Ryan Lortie)
1335
1336 2005-06-21  Matthias Clasen  <mclasen@redhat.com>
1337
1338         * gtk/gtkdnd.c (gtk_drag_source_set): Connect to 
1339         button-release-event as well, to handle touchscreen 
1340         scenarios better.  (#171490, Markku Vire)
1341
1342         * gtk/*.h: Trivial cleanups. (#169647, #303455, 
1343         Fabricio Barros Cabral, Benoit Carpentier)
1344
1345         * gdk/gdk.symbols: 
1346         * gdk/gdkwindow.h: 
1347         * gdk/x11/gdkgeometry-x11.c (gdk_window_move_region): New
1348         function which can be used to implement scrolling in 
1349         non-window widgets.  (#135165, Søren Sandmann)
1350
1351 2005-06-20  Matthias Clasen  <mclasen@redhat.com>
1352
1353         * gtk/gtkiconcache.c: Handle MAP_FAILED.  (#308449, Georg
1354         Schwarz)
1355
1356 2005-06-20  Matthias Clasen  <mclasen@redhat.com>
1357
1358         * configure.in: Bump version number.
1359
1360         * === Released 2.7.0 ===
1361
1362 2005-06-20  Matthias Clasen  <mclasen@redhat.com>
1363
1364         * gtk/gtk.symbols:
1365         * gtk/gtkwindow.h:
1366         * gtk/gtkwindow.c (gtk_window_present_with_time): Variant of
1367         gtk_window_present which takes a timestamp.  (#166379, Elijah Newren)
1368
1369 2005-06-19  Matthias Clasen  <mclasen@redhat.com>
1370         
1371         * gtk/gtk.symbols: Add a forgotten symbol
1372
1373         * NEWS: Updates
1374
1375 2005-06-19  Kristian Rietveld  <kris@gtk.org>
1376
1377         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): added a
1378         check which avoids processing updates on bin_window and scrolling
1379         if the node is already visible. (#170600, Billy Biggs).
1380
1381 2005-06-19  Kristian Rietveld  <kris@gtk.org>
1382
1383         * gtk/gtktreeview.c (validate_visible_area): only keep the
1384         row at the same position if the full row is visible. (#304623,
1385         Jorn Baayen).
1386
1387 2005-06-19  Kristian Rietveld  <kris@gtk.org>
1388
1389         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): set dy to zero
1390         if treeview's height is smaller than the current page_size (just
1391         like we do elsewhere).
1392
1393 2005-06-19  Kristian Rietveld  <kris@gtk.org>
1394
1395         Make mousewheel scrolling possible in typeahead mode, suggestion
1396         from Reinout van Schouwen (#307898).
1397
1398         * gtk/gtktreeview.c (gtk_tree_view_ensure_interactive_directory):
1399         connect treeview search window to scroll_event signal,
1400         (gtk_tree_view_search_scroll_event): implement.
1401
1402 2005-06-19  Kristian Rietveld  <kris@gtk.org>
1403
1404         * gtk/gtktreeview.c (gtk_tree_view_search_button_press_event): pass
1405         the event on to treeview, so it has a change of selecting a row, etc.
1406         (#169677, Kirk Bridger).
1407
1408 2005-06-19  Kristian Rietveld  <kris@gtk.org>
1409
1410         This commit includes a fix for #169463, Stefan Kost.
1411
1412         * gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_get_size):
1413         when cell_area is set, return cell_area width/height as width/height,
1414         so the focus rectangle will be drawn correctly.
1415
1416         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): drop unneeded get
1417         of focus-line-width property,
1418         (validate_row): take focus_line_width into account.
1419
1420         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
1421         also take focus_line_width into account when calculating the cell_area
1422         y and height (before, we only took it into account when calculating
1423         x and width).
1424
1425 2005-06-19  Matthias Clasen  <mclasen@redhat.com>
1426
1427         * gtk/gtk.symbols:
1428         * gtk/gtksizegroup.[hc]: Add an ignore-hidden property
1429         with getter and setter.  (#171612, Christian Neumair)
1430
1431 2005-06-18  Matthias Clasen  <mclasen@redhat.com>
1432
1433         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui): Make this 
1434         work for inserting before/after an existing menuitem or
1435         toolitem.  (#155946, Christian Persch)
1436
1437         * tests/testmerge.c (delayed_toggle_dynamic): Test the 
1438         "insert after" functionality of gtk_ui_manager_add_ui.
1439
1440         * gtk/gtkuimanager.c: Allow to construct menu tool buttons.
1441         (#300678, Sven Neumann)
1442         
1443         * demos/gtk-demo/appwindow.c: Demonstrate menu tool buttons
1444         constructed with GtkUIManager.
1445
1446         * gtk/gtk.symbols: 
1447         * gtk/gtkimage.h: 
1448         * gtk/gtkimage.c (gtk_image_clear): Make this function
1449         public.  (#64792, Havoc Pennington)
1450
1451 2005-06-18  Kristian Rietveld  <kris@gtk.org>
1452
1453         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): undo merging
1454         of the separate loop setting cell data with cell drawing loop
1455         (introduced in revision 1.280), since this breaks focus handling
1456         wrt special cells.
1457
1458 Sat Jun 18 04:22:51 2005  Manish Singh  <yosh@gimp.org>
1459
1460         * gdk/gdkcursor.h: remove GDK_CURSOR and GDK_IS_CURSOR, instance
1461         checks don't work on boxed types.
1462
1463         * gdk/x11/gdkcursor-x11.c: 
1464         * gdk/gdkcursor.c: make return_if_fail checks != NULL instead of
1465         GDK_IS_CURSOR.
1466         
1467 Sat Jun 18 04:21:58 2005  Manish Singh  <yosh@gimp.org>
1468
1469         * gtk/gtktreeview.c (do_presize_handler): remove unused variable
1470         height_old.
1471
1472 2005-06-18  Matthias Clasen  <mclasen@redhat.com>
1473
1474         * gtk/gtkcellrenderertoggle.c:
1475         * gtk/gtktextview.c:
1476         * gtk/gtktreeview.c: Typo fixes in comments.
1477
1478         * gtk/gtkpaned.c (gtk_paned_add): Barf if more than
1479         2 children are added.  (#308111, Morten Welinder)
1480
1481         * gtk/gtkcalendar.c (gtk_calendar_init): _NL_FIRST_WEEKDAY is
1482         1-based.  (#163842, Pierre Ossman)
1483
1484 2005-06-17  Kristian Rietveld  <kris@gtk.org>
1485
1486         Fix #160281, testcase from Peter Bloomfield.
1487
1488         * gtk/gtktreeview.c (do_presize_handler): always size request
1489         and update adjustments in fixed height mode,
1490         (gtk_tree_view_build_tree): if a fixed height is set, set this
1491         height on newly added nodes.
1492
1493 2005-06-17  Tor Lillqvist  <tml@novell.com>
1494
1495         * gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Set the actions
1496         and suggested_action fields in the GdkDragContext to
1497         GDK_ACTION_COPY. Otherwise apps that check the suggested_action
1498         field, like eog, won't accept dropped files.
1499
1500 2005-06-17  Matthias Clasen  <mclasen@redhat.com>
1501
1502         Support the ICCCM urgency hint.  (#61858, Havoc Pennington)
1503         
1504         * gtk/gtk.symbols: 
1505         * gtk/gtkwindow.[hc]: Add a GtkWindow::urgency-hint property
1506         with getter and setter.
1507
1508         * gdk/gdk.symbols: 
1509         * gdk/gdkwindow.h: 
1510         * gdk/x11/gdkwindow-x11.c (gdk_window_set_urgency_hint): 
1511         Add a setter for the urgency hint.
1512
1513         * gdk/x11/gdkwindow-x11.h (struct _GdkToplevelX11): Store
1514         urgency hint here.
1515
1516         * gdk/x11/gdkwindow-x11.c (update_wm_hints): Set the urgency
1517         hint in the WM_HINTS property when appropriate.
1518
1519 2005-06-17  Matthias Clasen  <mclasen@redhat.com>
1520
1521         * gdk/gdkcursor.h: Define GDK_IS_CURSOR() and GDK_CURSOR().
1522
1523         * gdk/x11/gdkcursor-x11.c: 
1524         * gdk/gdkcursor.c: Improve some return_if_fail checks,
1525         and add the missing non-Xcursor fallback for 
1526         _gdk_x11_cursor_update_theme(), noticed by Jeroen 
1527         Zwartepoorte.
1528
1529         * gtk/gtkbutton.c (gtk_button_class_init): Document
1530         several button signals as not useful.
1531
1532         * gtk/gtkentrycompletion.c (gtk_entry_completion_complete): 
1533         Resize the popup if necessary.  (#308076, Vincent Noel)
1534
1535         * gtk/gtkwindow.c (gtk_window_real_set_focus): Queue a
1536         draw on the old and new focus widgets, if their defaultness
1537         changes.  (#305607, Billy Biggs)
1538
1539 2005-06-17  Kristian Rietveld  <kris@gtk.org>
1540
1541         * gtk/gtktreeview.c (validate_visible_area): make sure the row
1542         above 'above_path' is always in a validated state, so it does
1543         not mess up scrolling. (#303319, testcase from Billy Biggs).
1544
1545 2005-06-17  Matthias Clasen  <mclasen@redhat.com>
1546
1547         * gdk/x11/gdkprivate-x11.h: 
1548         * gdk/x11/gdkcursor-x11.c: Handle cursor theme changes
1549         for cached cursors which are not associated with a window
1550         at the time of the theme change, by storing a serial
1551         number in each cursor, and updating the theme_serial 
1552         counter whenever the cursor theme changes.
1553         
1554         * gdk/x11/gdkcursor-x11.c (_gdk_x11_cursor_update_theme): 
1555         Private function to update a cursor to the current
1556         cursor theme if necessary.
1557
1558         * gdk/x11/gdkmain-x11.c (gdk_pointer_grab): 
1559         * gdk/x11/gdkwindow-x11.c (gdk_window_set_cursor): Call
1560         _gdk_x11_cursor_update_theme() here.
1561
1562 2005-06-17  Owen Taylor  <otaylor@redhat.com>
1563
1564         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Fix
1565         #if G_BYTE_ORDER == GDK_LSB_FIRST.
1566
1567 2005-06-17  Kristian Rietveld  <kris@gtk.org>
1568
1569         * gtk/gtktreeview.c (validate_visible_area): don't try to update
1570         the top_row rowref ourselves here, but just have _dy_to_top_row()
1571         do it,
1572         (gtk_tree_view_scroll_to_cell): handle scrolling via
1573         validate_visible_area() if the treeview is not visible or needs
1574         reallocation. (#165246, Nickolay V. Shmyrev).
1575
1576 2005-06-17  Kristian Rietveld  <kris@gtk.org>
1577
1578         Fixes #307914 (Alexander Larsson), fixing some breakage caused
1579         by my previous commit.
1580
1581         * gtk/gtktreeview.c (validate_visible_area): force dy to be zero
1582         when it fits on a single page,
1583         (scroll_sync_handler): same here.
1584
1585 Thu Jun 16 15:33:42 2005  Manish Singh  <yosh@gimp.org>
1586
1587         * gdk/x11/gdkcursor-x11.c (update_cursor): remove unused variable.
1588
1589         * gdk/x11/gdkwindow-x11.c (_gdk_x11_window_get_cursor): use
1590         g_return_val_if_fail.
1591
1592         * gtk/gtkdnd.c (gtk_drag_get_cursor): initialize hot_x and hot_y
1593         for all cases.
1594
1595         * gtk/gtkfilechooserdefault.c (button_new): gtk_button_set_image
1596         takes a GtkWidget, not a GtkImage.
1597
1598 2005-06-16  Matthias Clasen  <mclasen@redhat.com>
1599
1600         * gtk/gtkfilechooserdefault.c (button_new): Simplify
1601         the code and respect the show-button-images setting.
1602         (#307941, Vincent Noel)
1603
1604         * gtk/gtkdnd.c: Update the RGBA cursor if an
1605         icon is set after the cursor has been constructed.
1606         Also handle repeated setting of icons correctly.
1607
1608 2005-06-16  Matthias Clasen  <mclasen@redhat.com>
1609
1610         * gtk/gtkbutton.c (gtk_button_set_image): Add some more
1611         docs.  (#307818, Christian Persch)
1612
1613 2005-06-15  Matthias Clasen  <mclasen@redhat.com>
1614
1615         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1616         Initialize all fields of the expose event.  (#151693,
1617         Jim Evins)
1618
1619 2005-06-15  Matthias Clasen  <mclasen@redhat.com>
1620
1621         * gdk/x11/gdkcursor-x11.c (gdk_cursor_get_image): Get
1622         red and blue in place.
1623
1624         * gtk/gtkwindow.c (gtk_window_parse_geometry): Fox doc
1625         formatting, pointed out by Kjartan Maraas.
1626
1627         * gtk/gtksettings.c: Add two new settings, 
1628         gtk-cursor-theme-name and gtk-cursor-theme-size to
1629         control the cursor theme.
1630
1631         * gdk/x11/gdkevents-x11.c: Add two new X settings,
1632         Gtk/CursorThemeName and Gtk/CursorThemeSize, and map
1633         these to the gtk settings.
1634
1635         * tests/testgtk.c (create_cursors): Add a cursor theme
1636         testcase.
1637
1638         * gdk/x11/gdkwindow-x11.[hc]: Keep a reference to the 
1639         GdkCursor and add a private getter for it, so that we can 
1640         update the cursor when the cursor theme changes.
1641         
1642         * gdk/gdk.symbols: 
1643         * gdk/x11/gdkx.h: 
1644         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
1645         New function to change the cursor theme.
1646
1647         * gdk/x11/gdkwindow-x11.c: Remove a lot of pointless
1648         g_return_if_fail() non-NULL checks.
1649
1650 2005-06-15  Matthias Clasen  <mclasen@redhat.com>
1651
1652         * gdk/abicheck.sh: Use uniq to filter out duplicates.
1653         * gdk/gdk.symbols: Fix a define.
1654
1655 2005-06-14  Matthias Clasen  <mclasen@redhat.com>
1656
1657         * gtk/gtkwindow.c (gtk_window_parse_geometry):
1658         Fix up the example.  (#307699, Michal Suchanek)
1659
1660 2005-06-14  Matthias Clasen  <mclasen@redhat.com>
1661
1662         * gtk/gtkcalendar.c: Update num_marked_dates as we
1663         used to do.  (#307689, Thorsten Schoenfeld)
1664  
1665 2005-06-14  Federico Mena Quintero  <federico@ximian.com>
1666
1667         Merged from gtk-2-6:
1668
1669         Fix #302087:
1670
1671         * gtk/gtkfilechooserdefault.c (list_selection_changed): Emit
1672         "selection-changed" and do the normal housekeeping even if we are
1673         in SAVE mode and there is nothing selected.  We didn't emit that
1674         signal if we were in SAVE mode and unselect_all() got called.
1675         (gtk_file_chooser_default_unselect_all): Call
1676         pending_select_paths_free() so that we cancel any asynchronous
1677         selections.
1678         (gtk_file_chooser_default_set_current_name): Likewise.
1679
1680 2005-06-14  Federico Mena Quintero  <federico@ximian.com>
1681
1682         Merged from gtk-2-6:
1683
1684         Fixes #307640:
1685
1686         * gtk/gtkfilechooserdefault.c
1687         (gtk_file_chooser_default_should_respond): Oops, I broke SAVE
1688         mode.  If the parent path is a folder, only create a subfolder if
1689         we are in CREATE_FOLDER mode; if we are in SAVE mode, just return
1690         and respond.  Also, pick up the case where the user types
1691         "dirname/" instead of "dirname".
1692         (check_save_entry): Make the return type void.  Add some return
1693         parameters so that we can do more thorough checking.
1694         (gtk_file_chooser_default_get_paths): If the file part is empty
1695         and we are in SAVE mode, return an empty selection.
1696
1697 2005-06-15  Kristian Rietveld  <kris@gtk.org>
1698
1699         Patch for #163214 (reported by Tommi Komulainen) and fixes some
1700         other scrolling/validation related bugs along the why.
1701
1702         * gtk/gtktreeview.c (gtk_tree_view_size_request): run
1703         do_validate_rows once and don't queue a size request there,
1704         (gtk_tree_view_size_allocate): don't update vadj value without
1705         reason, sync top_row/dy after the window sizes and adjustments
1706         are in sync again,
1707         (validate_visible_area): always update dy when scrolling,
1708         manually set top_row here after changing the vadj (don't depend
1709         on _adjustment_changed and top_row/dy sync to do this), since we
1710         now always set top_row here correctly, we can always free
1711         scroll_to_path at the end which avoids infinite expose loops,
1712         (do_validate_rows): add queue_resize boolean, remove top_row/dy
1713         sync here, we cannot do it safely at this place since the
1714         window sizes and adjustments are out of sync,
1715         (validate_rows), (validate_rows_handler): update call to
1716         do_validate_rows().
1717
1718 2005-06-14  Matthias Clasen  <mclasen@redhat.com>
1719
1720         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_name): Add a 
1721         stub for the no-Xcursor case. (noticed by Luis Villa)
1722
1723         Use named cursors for the DND cursors, the names are "dnd-none",
1724         "dnd-copy", "dnd-link", "dnd-move" and "dnd-ask". Also use an RGBA 
1725         cursor instead of cursor+window when possible. This saves 
1726         roundtrips during the drag operation, and makes translucent icons 
1727         possible.
1728         
1729         * gtk/gtkdndcursors.h: New file, containing inlined pixbufs
1730         for the default dnd cursors.
1731
1732         * gtk/gtkdnd.c (struct _GtkDragSourceInfo): Store the cursors
1733         used during the drag here, also store the icon pixbuf here. 
1734
1735         * gtk/gtkdnd.c (drag_cursors): Store the cursor names here. Also
1736         switch the default cursors from xbm to inlined pixbufs. 
1737
1738         * gtk/gtkdnd.c (gtk_drag_get_cursor): This function now takes the
1739         GtkDragSourceInfo as well, since it has to composite the 
1740         drag-specific cursors. The cursors combined from the image of
1741         the themed cursor and the icon_pixbuf stored in the info.
1742
1743         * gtk/gtkdnd.c (gtk_drag_begin_internal): Don't set the default
1744         icon if there is an icon_pixbuf, which will be composited into
1745         the cursor later.
1746
1747         * gtk/gtkdnd.c (set_icon_stock_pixbuf): If appropriate, store
1748         the pixbuf in the info struct for later compositing into the
1749         cursor instead of creating an icon window.
1750         
1751         * gtk/gtkdnd.c (gtk_drag_drop_finished): If we used an
1752         RGBA cursor for the drag, and need to display the cancel
1753         animation, construct the icon window here.
1754
1755         * gtk/gtkdnd.c (gtk_drag_source_info_destroy): Unref the 
1756         drag-specific cursors and the icon_pixbuf when done with
1757         the drag.
1758
1759 2005-06-14  Matthias Clasen  <mclasen@redhat.com>
1760
1761         * gtk/gtkcolorsel.c (make_picker_cursor): Use a named cursor
1762         with the name "color-picker", when available.
1763
1764         * gdk/gdk.symbols: 
1765         * gdk/gdkcursor.h: 
1766         * gdk/x11/gdkcursor-x11.c (gdk_cursor_get_image) 
1767         (gdk_cursor_new_from_name): New functions to construct named
1768         cursors and to get the image used for a cursor.  
1769
1770 2005-06-13  Matthias Clasen  <mclasen@redhat.com>
1771
1772         * gtk/gtkpathbar.[hc]: Rework the way in which rerooting of the
1773         path bar is done, implementing the following principles:
1774         (#137289, patch by Benjamin Otte)
1775         
1776         1. Re-root only if $HOME is an ancestor of the current path.
1777
1778         2. When re-rooting, make sure the Left arrow appears in the path 
1779         bar, so that you can navigate up from $HOME to /.  In that case, 
1780         make sure the Right arrow doesn't appear if the sub-hierarchy from 
1781         $HOME to the cwd fits in the window.
1782
1783         3. Make sure that hitting Alt-Up takes you always one folder up, 
1784         even when the path bar is re-rooted.
1785
1786         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
1787         Try harder not to modify readonly strings. (#307541, Torsten Schoenfeld)
1788
1789         * gtk/gtkfilechooserbutton.c (model_update_current_folder): 
1790         Free the data of the row before overwriting it.  (#307490,
1791         Kjartan Maraas)
1792
1793 2005-06-13  Kjartan Maraas  <kmaraas@gnome.org>
1794
1795         * gtk/gtkcalendar.c: (calendar_paint_arrow): Don't
1796         leak the cairo context. Closes bug #307426.
1797
1798 2005-06-13  Matthias Clasen  <mclasen@redhat.com>
1799
1800         Make invisible text work a bit better (#66194, patch by
1801         Jeroen Zwartepoorte)
1802         
1803         * gtk/gtk.symbols:
1804         * gtk/gtktextiter.[hc]: Add function to move by
1805         visible lines.
1806
1807         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): 
1808         Skip invisible text when moving by paragraphs.
1809
1810         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_visually): 
1811         Skip invisible lines here too.
1812
1813 2005-06-12  Matthias Clasen  <mclasen@redhat.com>
1814
1815         * gtk/gtkselection.c (gtk_target_list_add_image_targets): 
1816         Don't leak the format names.  (#307190, Morten Welinder)
1817
1818 2005-06-12  Kjartan Maraas  <kmaraas@gnome.org>
1819
1820         * gdk/x11/gdkasync.c: (send_event_handler): Plug
1821         a leak. Closes bug #307281.
1822
1823 2005-06-12  Matthias Clasen  <mclasen@redhat.com>
1824
1825         * gtk/gtkcalendar.c (calendar_paint_header): 
1826         (gtk_calendar_size_request): Allow localization of the
1827         format in which the year is displayed.  (#135451, Paisa 
1828         Seeluangsawat)
1829
1830         * gdk/*.h: Cleanup.  (#169648, Fabricio Barros Cabral)
1831
1832         * gdk/gdkcairo.c: Small doc additions.
1833
1834         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row): 
1835         Check start_button_mask before starting a drag.  (#149058, 
1836         Andreas Volz)
1837
1838         * gtk/gtkfilesystemunix.c: Support .hidden files.  (#129170,
1839         Sayamindu Dasgupta, patch by Jan Arne Petersen)
1840
1841 2005-06-11  Matthias Clasen  <mclasen@redhat.com>
1842
1843         * NEWS: Updates.
1844
1845         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): More docs
1846         provided by Owen Taylor.
1847
1848         * gtk/gtk.symbols: 
1849         * gtk/gtkiconview.h: 
1850         * gtk/gtkiconview.c (gtk_icon_view_get_visible_range): 
1851         Add a function to determine what parts of the model are
1852         visible.  (#306726, Jonathan Blandford)
1853
1854         * gtk/gtkfilesystemunix.c (create_file_info): Treat backup
1855         files the same way as hidden files, to be closer to what
1856         Nautilus does.  (#136196, Sean Middleditch)
1857
1858 2005-06-10  Matthias Clasen  <mclasen@redhat.com>
1859
1860         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
1861         Don't modify strings returned from gettext().
1862
1863 Fri Jun 10 19:06:03 2005  Manish Singh  <yosh@gimp.org>
1864
1865         * gtk/gtktextdisplay.c (render_para): don't use deprecated
1866         gdk_gc_unref function.
1867
1868 2005-06-10  Matthias Clasen  <mclasen@redhat.com>
1869
1870         Allow setting paragraph background.  (#81045, Gustavo
1871         Carneiro, patch by Jeroen Zwartepoorte)
1872         
1873         * gtk/gtktextlayout.c (set_para_values): Propagate 
1874         pg_bg_color to the display struct.
1875         (gtk_text_layout_free_line_display): Free it here.
1876
1877         * gtk/gtktextdisplay.c (render_para): If pg_bg_color
1878         is set, draw a rectangle in that color behind
1879         the paragraph.
1880
1881         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add 
1882         paragraph-background, paragraph-background-gdk and
1883         paragraph-background-set properties.
1884         (set_pg_bg_color): A setter for paragraph-background.
1885
1886         * gtk/gtktextlayout.h (struct _GtkTextLineDisplay): Add
1887         pg_bg_color.
1888
1889         * gtk/gtktexttag.h (struct _GtkTextAttributes): Add
1890         pg_bg_color.
1891         (struct _GtkTextTag): Add pg_bg_color_set.
1892
1893 2005-06-10  Kjartan Maraas  <kmaraas@gnome.org>
1894
1895         * gdk/gdkcairo.c: (gdk_cairo_set_source_pixbuf): Destroy the
1896         cairo surface when done with it. Plugs a fairly large leak in
1897         some cases.
1898         ==6014== 1999824 (115640 direct, 1884184 indirect) bytes in
1899         826 blocks are definitely lost in loss record 25239 of 25250
1900         Like this from nautilus.
1901
1902 2005-06-10  Michael Natterer  <mitch@imendio.com>
1903
1904         * gtk/gtk.symbols
1905         * gtk/gtkaction.[ch] (gtk_action_get_accel_closure): new function
1906         to get an action's accel_closure (Fixes #141750 and #148106).
1907
1908 2005-06-10  Matthias Clasen  <mclasen@redhat.com>
1909
1910         * gdk/gen-keyname-table.pl: Generate N_() calls for
1911         translatable key names.
1912
1913         * gdk/keynames.txt: Mark some key names as translatable.
1914         
1915         * gdk/keyname-table.h: Regenerated.
1916
1917         * gtk/gtkaccellabel.c (gtk_accel_label_class_init): Add
1918         some context to the msg ids for keyboard modifiers and
1919         key names.
1920         (_gtk_accel_label_class_get_accelerator_label): Try to
1921         translate key names.  (#300224, Christian Rose)
1922
1923 2005-06-10  Federico Mena Quintero  <federico@ximian.com>
1924
1925         Merged from gtk-2-6:
1926
1927         Fixes #162358:
1928
1929         * gtk/gtkfilechooserdefault.c (update_chooser_entry): Don't return
1930         immediately if we are in CREATE_FOLDER mode, so that we can fill
1931         the entry with the newly-selected folder.
1932         (gtk_file_chooser_default_set_property): Warn against turning on
1933         multiple selection for CREATE_FOLDER mode, or about setting that
1934         action while multiple selection is on.
1935         (update_chooser_entry): Change the entry's contents as well if we
1936         are in CREATE_FOLDER mode.  If nothing is selected, clear the
1937         chooser entry.
1938         (trap_activate_cb): Don't trap enter/space if modifiers are
1939         pressed.  This lets one use Ctrl-space to toggle rows in multiple
1940         selection mode.
1941         (gtk_file_chooser_default_should_respond): Clean up the if-chain
1942         mess of special cases by using an array to determine what to do.
1943         Also, for the save-entry case in CREATE_FOLDER mode, actually fix
1944         the bug where the file chooser would switch to an existing folder
1945         rather than confirming with it, and create the folder ourselves.
1946         (error_creating_folder_over_existing_file_dialog): New function.
1947
1948         * gtk/gtkfilechooserentry.c (check_completion_callback): Only
1949         insert the common prefix if we are in an "open" mode.  Use a
1950         helper function.
1951         (append_common_prefix): New helper function; code moved over from
1952         check_completion_callback().
1953         (find_common_prefix): New helper function.
1954         (gtk_file_chooser_entry_focus): Append the common prefix if the
1955         user requests it explicitly.
1956
1957 2005-06-10  Matthias Clasen  <mclasen@redhat.com>
1958
1959         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_expand): 
1960         * gtk/gtktoolbar.c (gtk_toolbar_get_show_arrow): 
1961         * gtk/gtktextview.c (gtk_text_view_get_iter_at_position): 
1962         * gtk/gtkstock.c (gtk_stock_set_translate_func): 
1963         * gtk/gtkspinbutton.c (gtk_spin_button_get_adjustment): 
1964         * gtk/gtkscrolledwindow.h: 
1965         * gtk/gtkmenushell.c (gtk_menu_shell_get_take_focus): 
1966
1967         * gtk/gtkiconview.c (gtk_icon_view_set_margin): 
1968         * gtk/gtkicontheme.c (gtk_icon_info_load_icon): 
1969         * gtk/gtkcalendar.c (gtk_calendar_thaw): Doc fixes.
1970
1971 2005-06-09  Matthias Clasen  <mclasen@redhat.com>
1972
1973         * gdk/x11/gdkwindow-x11.c: Small markup fixes.
1974
1975         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add docs.
1976         (#306212, Steve Chaplin, docs provided by Billy Biggs)
1977
1978         * gtk/gtktextbtree.c (_gtk_text_btree_char_is_invisible): Small 
1979         cleanup.  (#305539, Paolo Borelli)
1980
1981 2005-06-09  Rodrigo Moya <rodrigo@novell.com>
1982
1983         * configure.in: added cairo to list of $GTK_PACKAGES.
1984
1985 2005-06-09  Matthias Clasen  <mclasen@redhat.com>
1986
1987         * gdk/x11/gdkdnd-x11.c (motif_drop_start, xdnd_drop_filter): Update
1988         the user time on the window when a drop happens.  (#169364, Alexander
1989         Hunziker, patch by Elijah Newren)
1990
1991         * gdk/x11/gdkwindow-x11.c: Small markup fixes.
1992
1993         * gtk/gtk.symbols: 
1994         * gtk/gtkiconview.h: 
1995         * gtk/gtkiconview.c (gtk_icon_view_scroll_to_path): New function
1996         to scroll to a path.  (#306838, Jonathan Blandford)
1997
1998 2005-06-08  Matthias Clasen  <mclasen@redhat.com>
1999
2000         * gtk/gtkiconview.c (gtk_icon_view_set_cursor): Scroll to the
2001         item.  (#306839, Jonathan Blandford)
2002
2003         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): Check for
2004         negative before appending the index, to avoid double error
2005         message.  (#306393, Morten Welinder)
2006
2007         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
2008         Don't crash if search_window is NULL.  (#304914, Victor Osadci,
2009         testcase by Olaf Vitters)
2010
2011         * gtk/gtkimage.c: Make the file property readable.  
2012         (#170674, Lorenzo Gil Sanchez)
2013
2014         
2015 2005-06-08  Matthias Clasen  <mclasen@redhat.com>
2016
2017         * gtk/gtkfilesystem.c (gtk_file_info_get_display_key): Use
2018         g_utf8_collate_key_for_filename().
2019
2020 2005-06-07  Kjartan Maraas  <kmaraas@gnome.org>
2021
2022         * gtk/gtkfilechooserbutton.c: (update_label_and_image):
2023         Merge leak fix from stable. Bug 306754.
2024
2025 2005-06-05  Tor Lillqvist  <tml@novell.com>
2026
2027         * gdk/win32/gdkscreen-win32.c
2028         (_gdk_windowing_substitute_screen_number): Return NULL unless
2029         screen number is zero. We have only one screen on Win32.
2030         (gdk_screen_make_display_name): Call gdk_display_get_name() and
2031         return that.
2032         
2033         * modules/engines/Makefile.am
2034         * modules/input/Makefile.am: Decide whether to build the
2035         ms-windows theme engine based on the GDK backend, not based on
2036         platform. (I.e., if building for Cygwin with the X11 backend, we
2037         shouldn't build the ms-windows engine, but if building for Cygwin
2038         but with the Win32 backend, we should.) Ditto for the IME
2039         (Windows) input module. (#305832)
2040
2041 2005-06-04  Tor Lillqvist  <tml@novell.com>
2042
2043         * gdk/win32/gdkcursor-win32.c
2044         * gdk/win32/gdkwindow-win32.c
2045         * gdk/win32/gdkprivate-win32.h: Support full-colour cursors.
2046         Support cursors with alpha on XP. Use code in common with the
2047         support for alpha icons that already was present. (#306101, Tim
2048         Evans)
2049
2050         * modules/engines/ms-windows/msw_style.c: Render insensitive icons
2051         in a way that more closely matches Windows. (#305986, Tim Evans).
2052
2053         * modules/engines/ms-windows/Makefile.am (LDADDS): Link with
2054         gdk-pixbuf.
2055
2056 2005-06-03  Dom Lachowicz <cinamod@hotmail.com>
2057
2058         * modules/engines/ms-windows/msw_style.c: Re-sync with gtk-wimp
2059         * modules/engines/ms-windows/xp_theme.c: Ditto
2060         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
2061
2062 Thu May 26 16:43:27 2005 Manish Singh  <yosh@gimp.org>
2063
2064         * gtk/gtkentrycompletion.h: Add declarations for
2065         gtk_entry_completion_{get,set}_popup_single_match.
2066
2067 2005-05-26  Matthias Clasen  <mclasen@redhat.com>
2068
2069         * gtk/gtk.symbols: 
2070         * gtk/gtkentrycompletion.c: Add a property to suppress the
2071         popup for single matches.  (#154711)
2072
2073         * gtk/gtkentry.c (gtk_entry_completion_timeout): Respect it here.
2074
2075         * gtk/gtkfilechooserentry.c (_gtk_file_chooser_entry_set_action): 
2076         Use it here.
2077
2078         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Queue the 
2079         redisplay after modifying the tag in the btree, otherwise 
2080         we end up showing the old tags until the next redraw comes 
2081         around.   (#143537, Gary Kramlich, Peter Wainwright)
2082
2083         * gtk/gtkcombobox.c (gtk_combo_box_list_auto_scroll): Make 
2084         autoscrolling work at the bottom of the screen.
2085
2086 2005-05-26  Maciej Katafiasz  <email@mathrick.org>
2087
2088         * docs/reference/gtk/tmpl/gtkentry.sgml:
2089         Point to GtkTextView instead of GtkText. Fixes bug #305535
2090
2091 2005-05-26  Sven Neumann  <sven@gimp.org>
2092
2093         * gtk/gtkselection.c (gtk_selection_data_set_pixbuf): use a less
2094         aggressive PNG compression level (bug #305340).
2095
2096 2005-05-26  Tor Lillqvist  <tml@novell.com>
2097
2098         * gdk/win32/gdkdrawable-win32.c (_gdk_win32_blit): If blitting
2099         from the root window, take the multi-monitor offset into
2100         account. (#305511)
2101
2102 2005-05-25  Matthias Clasen  <mclasen@redhat.com>
2103
2104         * demos/gtk-demo/appwindow.c (do_appwindow): Set the window
2105         icon by name.
2106
2107         * gtk/gtkfilesystem.c (gtk_file_folder_is_finished_loading): 
2108         Remove another C99ism.
2109
2110         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Draw the 
2111         background of rows insensitive when the treeview is insensitive.
2112         (pointed out by Billy Biggs)
2113
2114         * demos/gtk-demo/clipboard.c: Demonstrate image copy-and-paste
2115         and DND, and clipboard persistency.
2116
2117         * gtk/gtkselection.c (gtk_target_list_add_image_targets): 
2118         Make sure png comes first, otherwise dnd may use bmp by
2119         default, loosing transparency.
2120
2121 2005-05-25  Michael Natterer  <mitch@imendio.com>
2122
2123         * gtk/gtktextview.c (blink_cb): block the text_layout's "changed"
2124         handler when changing cursor visibility because it would expose
2125         the whole paragraph where the cursor is. Instead, expose the
2126         cursors' areas manually. (#173047).
2127
2128         (text_window_invalidate_cursors): new function which exposes the
2129         cursors.
2130
2131         * gtk/gtkstyle.c (draw_insertion_cursor): added comment that the
2132         same cursor size calculation is in text_window_invalidate_cursors().
2133
2134 2005-05-25  Matthias Clasen  <mclasen@redhat.com>
2135
2136         * demos/gtk-demo/editable_cells.c (create_items_model): Also
2137         demonstrate GtkCellRendererProgress.
2138
2139         * demos/gtk-demo/Makefile.am (demos): 
2140         * demos/gtk-demo/combobox.c: Add a demo showing combo box 
2141         variations.
2142
2143         * demos/gtk-demo/Makefile.am (demos): 
2144         * demos/gtk-demo/pickers.c: Add a demo showing all picker widgets.
2145
2146 2005-05-24  Matthias Clasen  <mclasen@redhat.com>
2147
2148         * demos/gtk-demo/iconview.c (do_iconview): Fix a typo.
2149
2150 2005-05-24  Tor Lillqvist  <tml@novell.com>
2151
2152         * gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Handle
2153         gtk-alternative-button-order (setting it to TRUE).
2154
2155 2005-05-23  Matthias Clasen  <mclasen@redhat.com>
2156
2157         * gtk/gtktreeview.c (gtk_tree_view_search_init): Remove
2158         an unused variable.  (#305130, Jaap A. Haitsma)
2159
2160         * gtk/gtkfilechooserdefault.c (filter_create): Don't grab
2161         the focus away from the file list when operating the filter
2162         combo with the pointer.  (#304844, Sven Neumann)
2163
2164 2005-05-23  Tor Lillqvist  <tml@novell.com>
2165
2166         * gdk/win32/gdkkeys-win32.c (handle_special): Map VK_APPS to
2167         GDK_Menu. (#172383, Ivan Wong)
2168
2169         * gdk/win32/gdkkeys-win32.c (handle_dead): If the keysym isn't one
2170         of the special cases this function takes care of, use it as
2171         such. This takes care of for instance the Bengali Virama, see bug
2172         #165723.
2173
2174 2005-05-20  Matthias Clasen  <mclasen@redhat.com>
2175
2176         * gtk/gtkimcontextsimple.c (check_table): Avoid a possible
2177         buffer overrun.  (#142444, Leonard Michlmayr)
2178
2179         * gtk/gtkfilesystem.c: Remove C99-isms (#304879, 
2180         Kazuki IWAMOTO)
2181
2182 2005-05-18  Matthias Clasen  <mclasen@redhat.com>
2183
2184         * gtk/gtkfilechooser.c (gtk_file_chooser_remove_shortcut_folder_uri): 
2185         Use the correct function to conver the uri to a path.  (#304565,
2186         Ismael Juma)
2187
2188         * gtk/gtkfilechooserbutton.c (dialog_response_cb): Handle the
2189         Cancel button properly.  (#304234, Sven Neumann)
2190
2191 2005-05-18  Anders Carlsson  <andersca@imendio.com>
2192
2193         * gtk/gtktextview.c: (gtk_text_view_flush_scroll),
2194         (gtk_text_view_update_adjustments), (gtk_text_view_value_changed):
2195         * gtk/gtktextview.h:
2196         If the horizontal adjustment changes because of a change in the
2197         layout width, then do a complete redraw. This is because there
2198         might be right-aligned or centered text that needs to be redrawn.
2199
2200 2005-05-18  Matthias Clasen  <mclasen@redhat.com>
2201         
2202         * gtk/gtkwidget.c (gtk_widget_add_events): Try harder to set
2203         the event masks of descendent windows.  (#169821, Tommi Komulainen)
2204
2205         * gtk/gtktreeview.c (gtk_tree_view_get_drop_column) 
2206         (gtk_tree_view_set_column_drag_info): Fix some errors in the
2207         handling of drop columns.  (#143355, John Finlay)
2208
2209         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): 
2210         Remove the no longer needed workaround.
2211
2212         * gtk/gtkwidget.c (widget_add_child_draw_rectangle): Only collect
2213         allocations of mapped children.
2214
2215         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): 
2216         Add a bug reference.
2217
2218 2005-05-18  Tor Lillqvist  <tml@novell.com>
2219
2220         * gdk/win32/gdkevents-win32.c
2221         * gdk/win32/gdkkeys-win32.c
2222         * gdk/win32/gdkprivate-win32.h: Check the KF_EXTENDED bit in
2223         lParam of WM_KEY* messages to distinguish between left and right
2224         Control and Alt keys. Unfortunately, the right Shift key doesnt
2225         set KF_EXTENDED, so to distinguish between left and right Shift
2226         keys, check the scan code. (#304584)
2227
2228 2005-05-18  Matthias Clasen  <mclasen@redhat.com>
2229
2230         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Warn if
2231         length overflows.  (#161520, Ian Wienand)
2232
2233         * gtk/gtktoolbutton.c (gtk_tool_button_set_icon_name): Fix
2234         parameter names to make gtk-doc happy.
2235
2236         * gtk/gtkscale.c (gtk_scale_class_init): Fix the default
2237         values of draw-value and value-pos to be the values we
2238         actually use in _init. (#304547, Mikael Hallendal)
2239
2240         * gtk/gtkcellrendererpixbuf.c: Support named icons in
2241         cells by adding a icon-name property. (#165777, Anders
2242         Carlsson)
2243
2244         * gtk/gtk.symbols:
2245         * gtk/gtktoolbutton.h: 
2246         * gtk/gtktoolbutton.c (gtk_tool_button_set_icon_name) 
2247         (gtk_tool_button_get_icon_name): Support named icons in 
2248         tool buttons by adding a icon-name property. (#116577, 
2249         Christian Neumair)
2250
2251         * gtk/gtk.symbols: 
2252         * gtk/gtkdnd.h: 
2253         * gtk/gtkdnd.c (gtk_drag_source_set_icon_name) 
2254         (gtk_drag_set_icon_name): New functions to support themed 
2255         drag icons.  (#116577, Christian Neumair)
2256
2257 2005-05-17  Owen Taylor  <otaylor@redhat.com>
2258
2259         * gdk/x11/gdkdrawable-x11.c (gdk_x11_ref_cairo_surface): 
2260         Update to changed cairo interface.
2261
2262         * gdk/x11/gdkdrawable-x11.[ch]:
2263         Add _gdk_x11_drawable_update_size()
2264         
2265         * gdk/x11/gdkwindow-x11.c (gdk_window_resize) 
2266         (gdk_window_move_resize)
2267         * gdk/x11/gdkevents-x11.c (gdk_event_translate): 
2268         Call _gdk_x11_drawable_update_size().
2269
2270 2005-05-17  Matthias Clasen  <mclasen@redhat.com>
2271
2272         * gtk/gtktextview.c (cursor_blinks): Don't blink the cursor
2273         if the text view is not editable.  
2274
2275         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released): Keep
2276         the popup posted if the button is released over the cellview.
2277         This matches the behaviour of other combo box implementations.  
2278         (#171378)
2279         
2280         * gdk/gdkwindow.c (gdk_window_set_bg_pattern): Adjust offsets
2281         when recursing.  (#153682, Felipe Heidrich)
2282
2283 2005-05-16  Matthias Clasen  <mclasen@redhat.com>
2284
2285         * gtk/gtkscale.c (gtk_scale_class_init): Don't bind GDK_Page_Up 
2286         and GDK_Page_Down twice.  (#168333, Hazael Maldonado Torres)
2287
2288         * gtk/gtkentry.c (cursor_blinks): Don't blink the cursor if 
2289         the entry is not editable.  (#304171, Nikos Kouremenos)
2290         
2291         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_constructor): 
2292         Make sure the action of the button and the dialog are in sync,
2293         when the dialog is provided by the app.  (#303987, David A Knight)
2294
2295         * gdk/gdkpango.c (gdk_pango_renderer_get_default): Fix a typo
2296         in the docs.  (#303940, Masao Mutoh)
2297
2298         * configure.in (GTK_DOC_CHECK): Check for gtk-doc 1.4.
2299
2300         * gtk/gtktoggleaction.c (connect_proxy): Be more careful when
2301         casting.  (#304089, Philip Langdale)
2302
2303         * gtk/gtkstatusbar.c (gtk_statusbar_size_allocate): Only shrink
2304         the label if we need to.  (#169390, Felix Riemann)
2305
2306 Sat May 14 00:07:46 2005  Manish Singh  <yosh@gimp.org>
2307
2308         * gdk/gdkdraw.c
2309         * gdk/gdkpango.c: #include gdkcairo.h for gdk_cairo_create()
2310         declaration.
2311
2312         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): actually
2313         call gdk_cairo_set_source_color() with a color.
2314
2315         * gtk/gtkimage.c (gtk_image_expose): remove unused stock_id variable.
2316
2317         * tests/testiconview.c (main): cast args of drag functions to the
2318         appropriate type.
2319
2320 2005-05-13  Owen Taylor  <otaylor@redhat.com>
2321
2322         * gdk/x11/gdkdrawable-x11.c: Update for cairo-xlib API change.
2323
2324         * gdk/x11/gdkpixmap-x11.[ch] gdk/gdk.symbols: Export 
2325         gdk_pixmap_impl_x11_get_type(), needed in gdkdrawable-x11.c.
2326         
2327 2005-05-11  Owen Taylor  <otaylor@redhat.com>
2328
2329         * tests/testgtk.c (on_alpha_window_expose): Fix to use
2330         gdk_cairo_create(). (create_alpha_window): Hook up "response"
2331         to close the window.
2332
2333 2005-05-11  Owen Taylor  <otaylor@redhat.com>
2334
2335         * gtk/gtkcolorbutton.c: Use a GtkAlignment rather than a GtkDrawingArea
2336         to draw the swatch in to avoid having an extraneous window.
2337         
2338         * gtk/gtkcolorsel.c (color_sample_draw_sample): Actually se tthe
2339         color when !has_opacity.
2340
2341 2005-05-10  Owen Taylor  <otaylor@redhat.com>
2342
2343         * gdk/gdkcairo.[ch] gdk/gdkcolor.[ch] gdk/Makefile.am: Add source
2344         files for Cairo convenience functionality.
2345
2346         * gdk/gdkcairo.h (gdk_cairo_rectangle, gdk_cairo_region): Add a
2347         convenience functions to add GdkRectangle, GdkRegion to a cairo path.
2348
2349         * gdk/gdkwindow.c gdk/gdkgc.c gtk/gtkcolorsel.c gtk/gtkiconview.c 
2350         gtk/gtkstyle.c: Use gdk_cairo_rectangle/region().
2351
2352         * gdk/gdkcairo.[ch] gdk/gdkdrawable.h gdk/gdkdraw.c: Rename
2353         gdk_drawable_create_cairo_context() to gdk_cairo_create().
2354
2355         * gdk/gdkcairo.c gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c:
2356         Rename gdk_pixbuf_set_as_cairo_source() to 
2357         gdk_cairo_set_source_pixbuf().
2358
2359         * gdk/gdkdraw.c gdk/gdkpango.c gtk/gtkcolorsel.c gtk/gtkhruler.c
2360         gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkstyle.c gtk/gtkvruler.c:
2361         Adjust for renames.
2362
2363         * gdk/gdk.symbols: Update.
2364
2365         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): Fix 
2366         coordinate system problem that was causing the wrong portions
2367         to be invalidated.
2368
2369         * gtk/gtkcellrenderer.c (gtk_cell_renderer_render)
2370         gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render)
2371         gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_render)
2372         gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render)
2373         gtk/gtkcellview.c (gtk_cell_view_expose)
2374         gtk/gtkdnd.c (gtk_drag_highlight_expose)
2375         gtk/gtkentry.c (gtk_entry_draw_text) 
2376         gtk/gtktextview.c (text_window_invalidate_rect): Some cairoization.
2377
2378         * gtk/gtkcalendar.[ch]: Beat into something roughly resembling
2379         GTK+ style ... use instance-private data and standard names for
2380         private structure, etc. Move function docs inline.
2381
2382         * gtk/gtkcalendar.[ch]: Switch to drawing everything in
2383         expose. Switch drawing to Cairo.
2384
2385         * gtk/gtkcalendar.c (gtk_calendar_freeze): Deprecate
2386         gtk_calendar_freeze/thaw
2387
2388 2005-05-10  Tor Lillqvist  <tml@novell.com>
2389
2390         * gdk/win32/gdkproperty-win32.c (gdk_screen_get_setting): Check
2391         that GDK_IS_SCREEN(screen) (like the X11 backend does), not screen
2392         == gdk_screen_get_default(), as that might return NULL when this
2393         function is called.
2394
2395 2005-05-09  Matthias Clasen  <mclasen@redhat.com>
2396
2397         * gtk/gtkalignment.c (gtk_alignment_size_allocate): Flip the
2398         padding in RTL mode.  (#303572, Maciej Katafiasz)
2399
2400 2005-05-09  Owen Taylor  <otaylor@redhat.com>
2401
2402         * gdk/gdkrgb.c (gdk_rgb_convert_0888_br, gdk_rgb_convert_8880_br): 
2403         Fill in unused bits so they can be used for the depth-32 target case.
2404         Rewrite so that that gives a marginal speedup rather than a
2405         marginal slowdown. (on x86)
2406
2407         * gdk/gdkscreen.h gdk/x11/gdkscreen-x11.[ch] gdk/x11/gdkvisual-x11.c:
2408         Add gdk_screen_get_rgba_colormap/visual to get a visual for
2409         windows with an alpha channel, if one exists.
2410
2411         * gdk/win32/gdkscreen-win32.c gdk/linux-fb/gdkscreen-fb.c:
2412         Stub out gdk_screen_get_rgba_colormap/visual.
2413
2414         * gdk/x11/gdkcolor-x11.c (gdk_colormap_alloc_colors): computation of
2415         "unused" wasn't right for depth == 32, since it depended on
2416         shifting by 32.
2417
2418         * gdk/gdkrgb.c: Fill in alpha bits with 1s. (Based on patch from
2419         Keith Packard,
2420         http://mail.gnome.org/archives/gtk-devel-list/2004-June/msg00080.html)
2421
2422         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_get_picture):
2423         Implement again, without using Xft.
2424
2425         * tests/testgtk.c: Add a test for windows with an alpha channel.
2426
2427 2005-05-09  Matthias Clasen  <mclasen@redhat.com>
2428
2429         * autogen.sh: Revert accidental commit.
2430
2431 2005-05-08  Matthias Clasen  <mclasen@redhat.com>
2432
2433         * gdk/gdkcolor.c (gdk_cairo_set_source_color): 
2434         * gdk/gdkimage.h: 
2435         * gdk/gdkdraw.c: 
2436         * gdk/gdkcolor.h: 
2437         * gdk/gdkcursor.h: 
2438         * gdk/x11/gdkcolor-x11.c: Small documentation additions.
2439
2440 2005-05-07  Matthias Clasen  <mclasen@redhat.com>
2441
2442         * gtk/gtkscrolledwindow.h: 
2443         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_get_hscrollbar): 
2444         (gtk_scrolled_window_get_cscrollbar): Change the return 
2445         type to GtkWidget*, proposed by Owen Taylor. 
2446
2447         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_width_mm) 
2448         (gdk_screen_get_height_mm): Fix typos in the docs.  (#303389,
2449         Masao Mutoh)
2450
2451 2005-05-07  Matthias Clasen <mclasen@redhat.com>
2452
2453         * gtk/gtkiconview.c: Fix a copy-and-paste accident, spotted
2454         by Owen Taylor.
2455
2456 2005-05-07  Owen Taylor  <otaylor@redhat.com>
2457
2458         * gdk/gdkgc.c (gc_get_foreground): Get the foreground color, not
2459         the background color.
2460
2461 2005-05-07  Owen Taylor  <otaylor@redhat.com>
2462
2463         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h (gdk_pixbuf_set_as_cairo_source): 
2464         Change prototype to match cairo_set_source_surface().
2465
2466         * gdk/gdkdraw.c gdk/gdkgc.c gdk/gdkpixbuf-render.c gdk/gdkwindow.c
2467         gtk/gtkhsv.c tests/testcairo.c.
2468
2469 2005-05-06  Federico Mena Quintero  <federico@ximian.com>
2470
2471         Merged from gtk-2-6:
2472
2473         * gtk/gtkfilesystemunix.c (fill_in_mime_type): Don't fill the mime
2474         types if this is an AFS directory.
2475         (fill_in_names): If we are in an AFS directory, set the MIME type
2476         blindly to "x-directory/normal".
2477
2478 2005-05-06  Matthias Clasen  <mclasen@redhat.com>
2479
2480         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): Always
2481         initialize child-visible to FALSE, otherwise we may end up
2482         with the wrong page visible initially.  (#302283, Patrik Fimml)
2483
2484         * gtk/gtktreeview.c (gtk_tree_view_draw_arrow): Make expanders
2485         appear insensitive in insensitive treeviews. 
2486
2487 2005-05-05  Matthias Clasen  <mclasen@redhat.com>
2488
2489         * gtk/gtktoolbar.c: Fix a typo in the docs.  (#303024, 
2490         Morten Welinder)
2491
2492 2005-05-06  Matthias Clasen  <mclasen@redhat.com>
2493
2494         * gtk/gtk.symbols:
2495         * gtk/gtkiconview.[hc]: Add DND support similar to the DND
2496         support in the tree view.  (#150270)
2497
2498 2005-05-05  Matthias Clasen  <mclasen@redhat.com>
2499
2500         * gtk/gtktreednd.h: 
2501         * gtk/gtkwidget.h: Small cleanups.
2502
2503         * gtk/gtktreeview.c (gtk_tree_view_get_dest_row_at_pos): Fix
2504         a typo.
2505
2506 2005-05-04  Owen Taylor  <otaylor@redhat.com>
2507
2508         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.h: Fix a bug
2509         in focus tracking when we move between has_pointer_focus and 
2510         has_focus_window directly. (#109246, Billy Biggs, Niko Tyni 
2511         and others)
2512
2513         * gdk/x11/gdkevents-x11.c: Also fix some confusion that could
2514         happen in the case of no window manager + keyboard grabs, by
2515         moving to a more consistent model of when we pay attention to
2516         mode=NotifyGrab/NotifyUngrab events.
2517         
2518         * docs/focus_tracking.txt: Extensive writeup about how to track
2519         focus under X11.
2520
2521 Wed May  4 13:21:41 2005  Søren Sandmann  <sandmann@redhat.com>
2522
2523         * tests/testcairo.c (draw): Replace cairo_show_surface() uses with
2524         cairo_set_source_surface()/cairo_paint();
2525
2526 2005-05-04  Tor Lillqvist  <tml@novell.com>
2527
2528         * gdk/win32/gdkdrawable-win32.c (generic_draw, blit_from_pixmap)
2529         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values,
2530         _gdk_win32_gc_new, _gdk_windowing_gc_set_clip_region,
2531         gdk_win32_hdc_get): Minor fixes to make Win32 backend compile
2532         again.
2533
2534 2005-05-03  Matthias Clasen  <mclasen@redhat.com>
2535
2536         * gtk/gtkfilesystem.c: 
2537         * gtk/gtkcelleditable.c: 
2538         * gtk/gtktreemodel.c: Avoid getting the interface struct
2539         twice in the same function.  (#300513, Billy Biggs)
2540
2541         * gtk/gtkscrolledwindow.h:
2542         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_get_vscrollbar): 
2543         * gtk/gtk.symbols: Add getters for the scrollbars.  (#167181,
2544         Billy Biggs)    
2545
2546         * gtk/gtkdialog.h: 
2547         * gtk/gtkdialog.c (gtk_dialog_get_response_for_widget): 
2548         Make this function public.  (#170748, Morten Welinder)
2549
2550 2005-05-02  Federico Mena Quintero  <federico@ximian.com>
2551
2552         Merged from gtk-2-6:
2553
2554         Fixes #301068:
2555
2556         * gtk/gtkfilesystemunix.c (struct _GtkFileSystemUnix): Add fields
2557         to store struct stat for /afs and /net, and boolean fields to say
2558         whether these are valid.
2559         (struct _GtkFileFolderUnix): Added a boolean is_network_dir field.
2560         (gtk_file_system_unix_get_folder): Fill in the is_network_dir
2561         field of the folder structure.
2562         (fill_in_names): If the folder is a network directory, create a
2563         fake struct stat for its entries.
2564         (fill_in_stats): Don't stat() the children of network directories.
2565
2566         * gtk/gtkfilechooserdefault.c (list_mtime_data_func): If the mtime
2567         is 0, use "Unknown" for the cell's displayed text.
2568
2569 2005-04-28  Owen Taylor  <otaylor@redhat.com>
2570
2571         * gtk/gtkwidget.c: Add a draw-border style property to allow
2572         themes to draw outside the widget's allocation.
2573
2574         * gdk/gdkwindow.c gtk/gtkstyle.c: Remove some save/restore pairs
2575         that were working around the clip-leakage bug in Cairo.
2576
2577         * gtk/gtkstyle.c: Use cairo_fill_preserve() rathe than
2578         save/fill/restore.
2579
2580         * gdk/gdkgc.c gdk/gdkinternals.h: Add _gdk_gc_update_context()
2581         That updates a Cairo context to match a GC.
2582
2583         * gdk/gdkdraw.c: Use _gdk_gc_update_context() to add support
2584         for tiles/stipples/clipping to gdk_draw_glyphs(), 
2585         gdk_draw_trapezoids().
2586
2587         * gdk/gdkpango.c: Use _gdk_gc_update_context() instead of internal
2588         implementation of stipples. Use one cairo_t across the entire
2589         drawing operation. Replace cairo_matrix_create() with 
2590         stack-allocated matrices.
2591
2592         * gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c 
2593         gdk/win32/gdkgc-win32.c: Save various aspects of the 
2594         GC state (fill, tile, stipple, foreground, background, clip region)
2595         in instance-private-data for future use. Add getters.
2596         Get rid of _gdk_windowing_gc_get_foreground() function implemented 
2597         by the backends.
2598
2599         * gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
2600         gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Add
2601         _gdk_gc_init() to do initial setup of the GC from values;
2602         fixes some problems from drawable redirection.
2603
2604         * gdk/gdkgc.c gdk/gdkinternals.h gdk/x11/gdkgc-x11.c
2605         gdk/win32/gdkgc-win32.c gdk/linux-fb/gdkgc-fb.c: Move 
2606         gdk_gc_copy() and gdk_gc_set_clip_{region,rectangle}() into 
2607         the generic code, add _gdk_windowing_gc_copy(), 
2608         _gdk_windowing_gc_set_clip_region() to do backend specific
2609         stuff.
2610
2611         * gdk/x11/{gdkprivate-x11.h,gdkgc-x11.c.c,gdkdrawable-x11.c}
2612         gdk/win32/{gdkprivate-win32.h,gdkgc-x11.c.c,gdkdrawable-x11.c}
2613         gdk/linux-fb/{gdkprivate-fb.h,gdkgc-fb.c.c,gdkdrawable-fb.c}:
2614         Don't duplicate state that now is stored by the generic code.
2615
2616         * gdk/gdk.symbols Update
2617
2618 2005-05-02  Matthias Clasen  <mclasen@redhat.com>
2619
2620         * tests/testiconview.c: Test cell renderers.
2621
2622         * gtk/gtk.symbols: Add new functions.
2623
2624         * gtk/gtkiconview.[hc]: Implement GtkCellLayout and use
2625         cell renderers for drawing and editing. (#148144, #160242)
2626
2627 2005-05-02  Matthias Clasen  <mclasen@redhat.com>
2628
2629         * gtk/gtkcellrenderertext.c (get_size): Return a sufficient
2630         width for cases where pango_layout_get_pixel_extents() returns
2631         a rectangle with nonzero x. 
2632
2633         * gtk/gtkselection.c: Small doc fixes.
2634
2635         * gtk/gtkmenushell.c (gtk_menu_shell_set_take_focus): 
2636         (gtk_menu_shell_get_take_focus): Fix up the docs a bit.
2637
2638 2005-05-02  Michael Natterer  <mitch@imendio.com>
2639
2640         * gtk/gtkmain.c (do_post_parse_initialization): return silently if
2641         "gtk_initialized" is TRUE. Re-enables calling GTK's init functions
2642         multiple times when using gtk_get_option_group(), just as one can
2643         call gtk_init() multiple times without doing any harm.
2644
2645 2005-05-01  Matthias Clasen  <mclasen@redhat.com>
2646
2647         * gtk/gtktextview.c (gtk_text_view_expose_event): Propagate
2648         the event to unanchored children in the text window.  
2649         (#302494, Stephen Kennedy)
2650
2651 2005-04-30  Tor Lillqvist  <tml@novell.com>
2652
2653         * gdk/win32/gdkdnd-win32.c (gdk_dropfiles_filter): Take
2654         multi-monitor offset into account. (#302525)
2655
2656 2005-04-29  Matthias Clasen  <mclasen@redhat.com>
2657
2658         * gtk/gtkradioaction.c: Make the docs build.  (#302230,
2659         Ali Akcaagac)
2660
2661         * gtk/gtkiconview.c (gtk_icon_view_map): Get rid of this
2662         function, instead show the bin_window when it is created.
2663
2664         * gtk/gtkradiobutton.c (gtk_radio_button_focus): Don't 
2665         grab focus to unrealized widgets.  (#302240, Philip Langdale)
2666
2667         * gtk/gtktreeview.c (gtk_tree_view_state_changed): Set
2668         background upon state changes.  (#301651, Billy Biggs)
2669         (gtk_tree_view_get_path_at_pos): Take RTL into account
2670         when iterating over the columns.  (#302163)
2671         
2672         * configure.in: Check for nm.
2673
2674         * gtk/Makefile.am: Use $(NM), not nm directly. (#301299, 
2675         Nguyen Thai Ngoc Duy)
2676
2677         * gtk/gtkiconview.c (gtk_icon_view_move_cursor_start_end): Use
2678         the internal unselect_all function, since we need the unselection
2679         to happen even in browse mode.  (#300995, Mathias Hasselmann)
2680
2681         * gtk/gtkuimanager.c (update_node): Use g_object_notify() instead
2682         of triggering a ::notify by re-setting the property.  (#300982,
2683         Sven Neumann)
2684
2685         * gtk/gtkaction.c (connect_proxy): Use gtk_action_sync_tooltip().
2686
2687         * gtk/gtkiconview.c (gtk_icon_view_scroll_to_item): Also
2688         scroll horizontally when necessary, and keep the northwest
2689         corner of the item visible.  (#300913, Mathias Hasselmann)
2690
2691         * tests/testiconview.c: Add some more tests.
2692
2693         * gtk/gtkiconview.c (gtk_icon_view_select_path): Don't crash
2694         if the path does not point to a row in the model.  (#300909,
2695         Mathias Hasselmann)
2696         (gtk_icon_view_rows_reordered): Re-layout here.  (#301009, 
2697         Mathias Hasselmann)
2698
2699         * tests/testtext.c: Add some more attribute tests.
2700
2701         * gtk/gtktexttag.c (gtk_text_tag_class_init): Correct the documentation
2702         of the rise property. String change, but it is more important to
2703         be correct than to be translated.  (#301740)
2704
2705 2005-04-25  Tor Lillqvist  <tml@novell.com>
2706
2707         * gtk/gtkfilesystemwin32.c
2708         (gtk_file_system_win32_volume_get_display_name): Get volume name
2709         also on Win9x. (#301798, Daniel Atallah)
2710         (canonicalize_filename): Add explicit braces to silence compiler
2711         warning.
2712
2713 2005-04-22  Tor Lillqvist  <tml@novell.com>
2714
2715         * gtk/gtkmain.c: Initailize gettext before use. Calling
2716         bindtextdomain() and bind_textdomain_codeset() in
2717         do_post_parse_initialization() is too late. Put the calls in a new
2718         function gettext_initialization(), and call that from
2719         gtk_init_with_args() and gtk_parse_args(). Fixes #170948 for
2720         GTK+'s part, but the same problem occurs also at least in
2721         atk. Thanks to Robert Ögren, Daniel Atallah and Kevin Stange.
2722
2723 2005-04-19  Ivan, Wong Yat Cheung  <email@ivanwong.info>
2724
2725         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Match
2726         character height instead of cell height. Fix #301228.
2727
2728 2005-04-18  Federico Mena Quintero  <federico@ximian.com>
2729
2730         Merged from gtk-2-6:
2731
2732         * gtk/gtkfilechooserdefault.c (remove_selected_bookmarks): Remove
2733         obsolete assertion that the selected row can't be a volume; this
2734         is handled by the "removable" column now.  Fixes #301017.
2735
2736 2005-04-18  Owen Taylor  <otaylor@redhat.com>
2737
2738         * gtk/gtkstyle.c gtk/gtkcolorsel.c gtk/gtkhsv.c gtk/gtkiconview.c
2739         * gdk/gdkcolor.c gdk/gdkwindow.c gdk/gdkpixbuf-render.c
2740         gdk/gdkpango.c tests/testcairo.c: Update to new Cairo API for
2741         setting color and opacity. (#301066, Vincent Noel)
2742  
2743 2005-04-15  Federico Mena Quintero  <federico@ximian.com>
2744
2745         Merged from gtk-2-6:
2746
2747         * gtk/gtkfilechooserdefault.c (pending_select_paths_process):
2748         Patch from Christian Neumair <chris@gnome-de.org>; only select the
2749         first row if we are in OPEN mode.  The only other case we were
2750         letting pass through was SELECT_FOLDER, but selecting the first
2751         row when changing folders confuses people when folders are
2752         actually being selected.  Fixes #171885.
2753
2754 2005-04-13  Matthias Clasen  <mclasen@redhat.com>
2755
2756         * gtk/gtkimage.c (gtk_image_calc_size, gtk_image_expose): 
2757         Revert the fix for #169870, adjust the documentation instead. 
2758
2759         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
2760         Revert the fix for #170727.     
2761
2762 2005-04-11  Ivan, Wong Yat Cheung  <email@ivanwong.info>
2763
2764         Fix #300218:
2765
2766         * gdk/win32/gdkselection-win32.c (gdk_selection_convert): Fix
2767         C99ism.
2768
2769         * gtk/updateiconcache.c: Guard inclusion of unistd.h and
2770         utime.h.
2771
2772 2005-04-09  Matthias Clasen  <mclasen@redhat.com>
2773
2774         * gdk/x11/gdkinput-xfree.c:
2775         * gdk/x11/gdkinput-none.c:
2776         * gdk/gtk.symbols: Some more fixes necessary to 
2777         make building with gcc 4 work.
2778
2779         Add 16x16 versions of the zoom icons and of 
2780         GTK_STOCK_INDEX. Some of the images were taken from 
2781         the hicolor icon theme, and were originally created 
2782         by Jakub Steiner and Tuomas Kuosmanen.  (#167515, 
2783         Vincent Noel)
2784         
2785         * gtk/stock-icons/stock_index_16.png:
2786         * gtk/stock-icons/stock_zoom_1_16.png:
2787         * gtk/stock-icons/stock_zoom_fit_16.png:
2788         * gtk/stock-icons/stock_zoom_in_16.png:
2789         * gtk/stock-icons/stock_zoom_out_16.png: New images.
2790         
2791         * gtk/stock-icons/Makefile.am: Add the new images. 
2792
2793         * gtk/gtkimage.c (gtk_image_calc_size, gtk_image_expose): 
2794         Don't display too many broken images.  (#169870, Roman
2795         Kagan, patch by Ivan Wong)
2796
2797         * gtk/gtkwidget.c (gtk_widget_unparent): Remove debugging
2798         output.  (#300013, Tommi Komulainen)
2799
2800 2005-04-08  Matthias Clasen  <mclasen@redhat.com>
2801
2802         * gtk/gtkimage.c (gtk_image_expose, gtk_image_calc_size): 
2803         If a stock_id is unknown, display the missing image. (#169870,
2804         Steven Walter)
2805
2806         * gtk/gtkiconcache.c (icon_name_hash): Use the same function 
2807         as in updateiconcache.c.  (spotted by Morten Welinder)
2808
2809 2005-04-08  Carl Worth  <cworth@cworth.org>
2810
2811         * gdk/gdkpango.c: (emboss_context): Simplify matrix manipulation
2812         now that cairo exposes the cairo_matrix_t structure.
2813         
2814         * gdk/gdkpixbuf-render.c: (gdk_pixbuf_set_as_cairo_source): Track
2815         cairo API change in signedness of data argument.
2816
2817 2005-04-08  Matthias Clasen  <mclasen@redhat.com>
2818
2819         * gtk/gtkcombobox.c (gtk_combo_box_popdown): Make this
2820         work when called from gtk_combo_box_destroy().  (#172999,
2821         Christian Persch)
2822
2823 2005-04-08  Matthias Clasen  <mclasen@redhat.com>
2824
2825         Fix double-click to autosize treeview columns. This was
2826         probably broken since 2.2 ! (#169675)
2827         
2828         * gtk/gtktreeview.c (gtk_tree_view_button_press): Leave the
2829         "user-resized" state of the column on a double-click to
2830         autosize.
2831         (gtk_tree_view_button_press, gtk_tree_view_motion_resize_column): 
2832         Enter the "user-resized" state of the column only if a drag
2833         actually changes the column width, not on any click.
2834
2835 2005-04-07  Matthias Clasen  <mclasen@redhat.com>
2836
2837         * gtk/gtkmenu.c (gtk_menu_paint): Allow setting background
2838         images on menus.  (#169532, Benjamin Otte)
2839         
2840         * gtk/updateiconcache.c (write_card16, write_card32): Avoid
2841         unaligned access.  (#172947)
2842
2843         * gtk/gtkfilechooserdefault.c (file_list_build_popup_menu): 
2844         Consistently use the term "Bookmarks" in the UI.  (#166906,
2845         Sebastian Bacher)
2846
2847         Some fixes from Morten Welinder (#172947):
2848         
2849         * gtk/updateiconcache.c (icon_name_hash): Make this compiler- 
2850         and platform-independent.
2851         (is_cache_up_to_date): Don't compare mtimes is a stat call failed.
2852         (build_cache): Error out if a stat fails.  
2853
2854 2005-04-07  Matthias Clasen  <mclasen@redhat.com>
2855
2856         * gtk/gtktreeview.c (gtk_tree_view_set_expander_column): Add 
2857         a hint about hiding expanders.
2858
2859         * gtk/updateiconcache.c (is_cache_up_to_date): Return 
2860         TRUE if the cache is newer than the directory.  (#172852,
2861         Jacob Kroon)
2862
2863         * configure.in: Replace an explicit pkg-config by 
2864         $PKG_CONFIG.  (#168074, Hans-Wolfgang Loidl)
2865         
2866         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2867         Ignore regions which fall completely outside the line.  
2868         (#165862, Felipe Heidrich)
2869
2870 2005-04-06  Matthias Clasen  <mclasen@redhat.com>
2871
2872         * gtk/gtktreeview.c (gtk_tree_view_set_search_column): Document
2873         -1 as possible value.  
2874         (gtk_tree_view_enable_model_drag_source) 
2875         (gtk_tree_view_enable_model_drag_dest): Pass the target list 
2876         to the underlying dnd implementation, otherwise we miss the 
2877         target info in the drag-data-received signal.  (#164085, Jorn
2878         Baayen)
2879
2880 2005-04-06  Matthias Clasen  <mclasen@redhat.com>
2881
2882         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column) 
2883         (gtk_tree_view_bin_expose): Avoid a few unnecessary calls
2884         to gdk_window_get_pointer(). (#168015, Billy Biggs)
2885
2886         * po/.cvsignore, po-properties/.cvsignore: Remove
2887         Makefile.in.in.  (#171092, Stepan Kasal)
2888
2889         * gtk/gtkrc.c (gtk_rc_parse_style): Don't modify 
2890         scanner->value, copy it first.  (#165693, Tommi Komulainen)
2891
2892 2005-04-05  Matthias Clasen  <mclasen@redhat.com>
2893
2894         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_grab_focus): 
2895         * gtk/gtkcombobox.c (gtk_combo_box_grab_focus): Implement
2896         grab_focus for GtkComboBox and GtkComboBoxEntry.  (#171912,
2897         Gustavo Carneiro)
2898
2899         * gtk/gtkicontheme.c: Store icon caches along with the
2900         mtimes of the toplevel directories. The previous
2901         mechanism of a hashtable-per-theme caused duplicate icon
2902         caches for the same toplevel directory to be created.  
2903         (#170030)
2904
2905 2005-04-05  Matthias Clasen  <mclasen@redhat.com>
2906
2907         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_build_level): 
2908         Fix a typo in a warning.
2909
2910         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Protect
2911         the license and credits buttons from being affected by 
2912         gtk_widget_show_all().  (#172724)
2913
2914 2005-04-05  Matthias Clasen  <mclasen@redhat.com>
2915
2916         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): Keep a 
2917         reference to the item.  (#167920, Hazael Maldonado Torres)
2918
2919         * gtk/gtktreeview.c (gtk_tree_view_set_search_column): Add some
2920         more docs on interactive search.
2921
2922 2005-04-05  Tor Lillqvist  <tml@novell.com>
2923
2924         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Handle 16 colour
2925         display mode. For some reason, in this mode GetDeviceCaps(BITSPIXEL)
2926         returns 1 (but GetDeviceCaps(NUMCOLORS) does return 16). (#143415)
2927
2928         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Don't force
2929         24bpp GdkVisual on 32bpp displays. (#140706)
2930
2931 Mon Apr  4 19:13:23 2005  Jonathan Blandford  <jrb@redhat.com>
2932
2933         Fix for #172319, Tristan Van Berkom:
2934         
2935         * gtk/gtktreeview.c (gtk_tree_view_expand_all): change to use
2936         gtk_tree_view_real_expand_row() instead of doing this by hand.
2937
2938 2005-04-04  Johan Dahlin  <johan@gnome.org>
2939
2940         * gtk/gtktextbuffer.c: (gtk_text_buffer_class_init),
2941         (gtk_text_buffer_set_property), (gtk_text_buffer_get_property),
2942         (gtk_text_buffer_set_text): Add GtkTextBuffer::text (#172631)
2943
2944 Mon Apr  4 14:33:55 2005  Manish Singh  <yosh@gimp.org>
2945
2946         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text):
2947         cast combo->priv->entry to GTK_ENTRY()
2948
2949         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
2950         cast completion->priv->tree_view to GTK_TREE_VIEW()
2951
2952 2005-04-04  Matthias Clasen  <mclasen@redhat.com>
2953
2954         * gtk/gtktextbuffer.c: Some trivial doc fixes.
2955
2956         * gtk/gtkwidget.c (gtk_widget_set_redraw_on_allocate): Improve 
2957         the wording of the doc comment.  (#172422, Vincent Untz)
2958
2959 2005-04-04  Owen Taylor  <otaylor@redhat.com>
2960
2961         * gtk/gtkstyle.c (gtk_default_draw_expander): Covert expander
2962         drawing to Cairo. Also always draw the entire triangle instead
2963         of just drawing the center for prelight. (Fixes inconsistent
2964         drawing in GtkTreeView.)
2965
2966 2005-04-04  Johan Dahlin  <johan@gnome.org>
2967
2968         * gtk/gtk.symbols: Remove symbols accidentally added.
2969         * gtk/gtkentryprivate.h: Add boolean property popup_set_width
2970         * gtk/gtktoggletoolbutton.c: (gtk_toggle_tool_button_class_init):
2971         Use object_class instead of gobject_class
2972
2973 Mon Apr  4 12:14:35 2005  Søren Sandmann  <sandmann@redhat.com>
2974
2975         * gtk/gtkmenu.c (gtk_menu_handle_scrolling): Translate x, y into
2976         widget coordinates instead of root coordinates. Patch from Jorn
2977         Baayen. (#172236)
2978
2979 2005-04-04  Matthias Clasen  <mclasen@redhat.com>
2980
2981         * gtk/gtktoolbar.c: Add a tooltips property.
2982
2983         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_class_init): 
2984         * gtk/gtkruler.c (gtk_ruler_class_init): Add docs.
2985
2986         * gtk/gtktoggletoolbutton.c: Add an active property.
2987
2988 2005-04-04  Matthias Clasen  <mclasen@redhat.com>
2989
2990         Allow completion popups to be wider than the entry. (#131916, 
2991         Ross Burton)
2992         
2993         * gtk/gtkentrycompletion.[hc]: Add a boolean popup-set-width property.
2994
2995         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
2996         Don't force the popup to have the same width as the entry if 
2997         popup-set-width is FALSE.
2998
2999         * gtk/gtk.symbols: Add new functions.
3000
3001 2005-04-04  Matthias Clasen  <mclasen@redhat.com>
3002
3003         * gtk/gtkactiongroup.c (gtk_action_group_add_action_with_accel): 
3004         Use gtk_accel_map_change_entry(), so that reusing the same
3005         action name works.  (#170727, Paolo Borelli)
3006
3007 2005-04-04  Tor Lillqvist  <tml@novell.com>
3008
3009         * gdk/win32/gdkmain.c (_gdk_win32_cf_to_string): New debugging
3010         function, to log a clipboard format name symbolically.
3011         (_gdk_win32_data_to_string): Also new, to log random data bytes.
3012
3013         Implement delayed rendering on Win32, specifically for transfering
3014         images through the clipboard from GTK+ apps to other
3015         apps (#168173, implementation by Ivan Wong):
3016
3017         * gdk/win32/gdkevents-win32.c (gdk_event_translate): 
3018         Handle WM_RENDERFORMAT.
3019
3020         * gdk/win32/gdkprivate-win32.h
3021         * gdk/win32/gdkglobals-win32.c: Add _format_atom_table,
3022         _delayed_rendering_data and _image_bmp.
3023
3024         * gdk/win32/gdkmain-win32.c: Initialize _image_bmp.
3025
3026         * gdk/win32/gdkproperty-win32.c (gdk_property_change):
3027         Accept formats other than GDK_TARGET_STRING or _utf8_string, and
3028         assume they are handled through delayed rendering.
3029
3030         * gdk/win32/gdkselection-win32.c (gdk_selection_convert):
3031         Return all available formats (including those registered by GTK+
3032         apps) on request_targets.
3033         (gdk_selection_property_get): We should append a zero byte like
3034         X11 does.
3035         (gdk_win32_selection_add_targets): New function, for
3036         gtkselection's use. Win32 requires that the clipboard owner
3037         registers all valid formats even if the owner wants delayed
3038         rendering.
3039         (_gdk_win32_selection_convert_to_dib): New function. Convert
3040         images to DIB using gdk-pixbuf.
3041
3042         * gdk/win32/gdkwin32.h: Declare gdk_win32_selection_add_targets().
3043
3044         * gtk/gtkselection.c (gtk_selection_add_target,
3045         gtk_selection_add_targets): Call gdk_win32_selection_add_targets()
3046         to register target formats.
3047
3048         * gdk/gdk.symbols: Add gdk_win32_selection_add_targets().
3049
3050 2005-04-03  Hans Breuer  <hans@breuer.org>
3051
3052         [merged from gtk-2-6 branch]
3053         * gdk/win32/gdkdrawable-win32.c : let dash_offset shift the start of
3054         the line pattern not the start of the line. Fixes bug #171641.
3055
3056         * gtk/makefile.msc.in : follow .symbols changes
3057
3058         * gdk/win32/gdkwindow-win32.c : declare and resolve GetAncestor()
3059         dynamically. (It is not available in _WIN_VER <= 0x0400)
3060
3061         * gdk/win32/makefile.msc : removed gdkpango-win32.obj
3062
3063         * gtk/gtkhsv.c gtk/gtkstyle.c : use G_PI instead of M_PI
3064
3065         [also applied to gtk-2-6 branch]
3066         * gdk/makefile.msc gdk-pixbuf/makefile.msc : handle gdk*alias.def
3067
3068         * gdk/makefile.msc.in : add gtkmnemonichash.obj
3069
3070         * test/testgtk.c(set_parent_signal) : use g_message instead of
3071         g_print to keep the 'testgtk --bench=all' output clean
3072
3073 2005-04-03  Matthias Clasen  <mclasen@redhat.com>
3074
3075         * gtk/gtkruler.c: Add a "metric" property.
3076
3077         * gtk/gtkradiomenuitem.c: Add a "group" property like
3078         the one found in radio buttons.
3079
3080         * gtk/gtkradiobutton.c (gtk_radio_button_class_init): Fix
3081         a typo in the docs.
3082         (gtk_radio_button_set_group): Add change notification.
3083         
3084 2005-04-01  Matthias Clasen  <mclasen@redhat.com>
3085
3086         * gtk/gtkselection.c: Move documentation inline, document
3087         if add_target functions append or prepend.  (#172350, 
3088         Jon-Kare Hellan)
3089
3090 2005-04-01  Matthias Clasen  <mclasen@redhat.com>
3091
3092         Make gtk_combo_box_get_active_text do the right thing for
3093         GtkComboBoxEntry (#171373, Robert Staudinger)
3094         
3095         * gtk/gtkcombobox.h: Add a get_active_text vfunc.
3096         
3097         * gtk/gtkcombobox.c (gtk_combo_box_real_get_active_text): And
3098         implement it here.
3099
3100         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_get_active_text): 
3101         Implement get_active_text by always returning the content of 
3102         the entry.
3103
3104 2005-03-31  Sven Neumann  <sven@gimp.org>
3105
3106         Merged from gtk-2-6:
3107
3108         * gtk/gtkbutton.c
3109         * gtk/gtkiconview.c: fixed gtk-doc comments.
3110
3111 2005-03-31  Michael Natterer  <mitch@gimp.org>
3112
3113         Allow to pop up menus without grabbing the keyboard. Useful for
3114         stuff like virtual keyboards. Fixes bug #159890
3115
3116         * gtk/gtk.symbols
3117         * gtk/gtkmenushell.[ch]: added boolean property "take-focus"
3118         and public API gtk_menu_shell_set/get_take_focus().
3119
3120         * gtk/gtkmenu.c (gtk_menu_popup)
3121         (popup_grab_on_window): don't grab the keyboard if take_focus
3122         is FALSE.
3123
3124         * gtk/gtkmenuitem.c (_gtk_menu_item_popup_submen): propagate the
3125         parent menu_shell's take_focus property to the submenu which is
3126         about to be popped up.
3127
3128 2005-03-30  Federico Mena Quintero  <federico@ximian.com>
3129
3130         Merged from gtk-2-6:
3131
3132         Fix #170755:
3133
3134         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Only stop editing
3135         if the row which changed is the same as the row being edited.
3136
3137 2005-03-30  Matthias Clasen  <mclasen@redhat.com>
3138
3139         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
3140         Make enable_search control only typeahead, not C-f.  (#170435,
3141         Sven Neumann)
3142         (gtk_tree_view_start_interactive_search): Pass keybinding == TRUE.
3143
3144         * gdk/gdkpixbuf.h: Include cairo.h
3145
3146         * gtk/gtkclipboard.c (gtk_clipboard_set_can_store): 
3147         Don't accept n_targets == -1.
3148         (clipboard_unset): unref the old_data, not the
3149         user_data which we have just cleared.  (#172038, Sven
3150         Neumann)
3151
3152         * gtk/gtkcombobox.c (gtk_combo_box_popup): Don't 
3153         segfault if somebody tries to popup an unrealized
3154         combo box.  (#172031, Felipe Heidrich)
3155
3156 2005-03-30  Tor Lillqvist  <tml@novell.com>
3157
3158         * gdk/win32/gdkevents-win32.c (build_pointer_event_state): The
3159         state field should represent the state before the event, like on
3160         X11. (#169753)
3161         (gdk_event_translate): Fix event filter handling. If an event
3162         filter (global, client message filter, of window-specific) returns
3163         GDK_FILTER_CONTINUE, continue as if nothing happened. If it
3164         returns GDK_FILTER_REMOVE or GDK_FILTER_TRANSLATE, return TRUE
3165         from gdk_event_translate() which means that DefWindowProc() will
3166         not be called.
3167         (gdk_event_translate): Fix client message handling. Append a
3168         GDK_CLIENT_EVENT unless there is a filter that matches and returns
3169         something other than GDK_FILTER_CONTINUE. (#135552)
3170
3171 2005-03-29  Matthias Clasen  <mclasen@redhat.com>
3172
3173         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_set_visible_func): 
3174         Document the need to refilter if parameters of the visibility function
3175         change.  (#169516, Olivier Sessink)     
3176
3177 Mon Mar 28 15:13:42 2005  Søren Sandmann  <sandmann@redhat.com>
3178
3179         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
3180         invalidate areas that are covered by mapped input-output child
3181         windows. Bug 141380.
3182
3183 2005-03-28  Jeroen Zwartepoorte  <jeroen.zwartepoorte@gmail.com>
3184
3185         * gtk/gtkfilechooserdefault.c: (update_preview_widget_visibility): Make
3186         the preview label ellipsize so the dialog layout stays constant.
3187         (#171398)
3188
3189 2005-03-28  Matthias Clasen  <mclasen@redhat.com>
3190
3191         * gtk/gtktreeview.c (gtk_tree_view_key_press): Don't pop up
3192         the context menu of the search entry if it is not visible.
3193         (#169534, Billy Biggs)
3194
3195 2005-03-27  Tor Lillqvist  <tml@novell.com>
3196
3197         * configure.in: Apparently AC_LIBTOOL_WIN32_DLL isn't deprecated
3198         after all, and in fact necessary with HEAD libtool.
3199
3200 2005-03-26  Matthias Clasen  <mclasen@redhat.com>
3201
3202         * gtk/*.c: 
3203         * gdk/gdkdisplaymanager.c: 
3204         Use canonical names for g_object_notify() as well. 
3205
3206 2005-03-24  Tor Lillqvist  <tml@novell.com>
3207
3208         * configure.in (GTK_EXTRA_CFLAGS): Include the -mms-bitfields flag
3209         in GTK_EXTRA_CFLAGS on Win32, so that it gets included in the
3210         gtk+-2.0.pc file and automatically used by dependents. MSVC users
3211         who use pkg-config will have to manually edit it out from
3212         gtk+-2.0.pc, sorry. Maybe pkg-config should be enhanced to support
3213         some kind of conditionals in .pc files?
3214
3215 2005-03-23  Matthias Clasen  <mclasen@redhat.com>
3216
3217         * gtk/gtkfilechooserbutton.c (update_combo_box): Remove
3218         a call whose result was unused and leaked.  (#170776,
3219         Kjartan Maraas)
3220
3221         Some cleanups to the GtkDialog code:  (#170746, 
3222         Morten Welinder)
3223         * gtk/gtkdialog.c (action_widget_activated): Simplify,
3224         use _gtk_dialog_get_response_for_widget.
3225         (gtk_dialog_add_action_widget): Use the correct signal
3226         id for non-buttons.
3227         (gtk_dialog_set_response_sensitive): 
3228         (gtk_dialog_set_default_response): Use get_response_data.
3229         (gtk_dialog_run): Don't disconnect the signals if the
3230         dialog was destroyed while running.
3231
3232 Tue Mar 22 14:16:31 2005  Manish Singh  <yosh@gimp.org>
3233
3234         * gtk/gtkfilesystem.c (gtk_file_system_set_bookmark_label):
3235         Use g_return_if_fail, not g_return_val_if_fail.
3236
3237 2005-03-22  Matthias Clasen  <mclasen@redhat.com>
3238
3239         Implement bookmark renaming  (#136216, Sean Middleditch)
3240         
3241         * gtk/gtkfilesystem.h (struct _GtkFileSystemIface): Add 
3242         get_bookmark_label and set_bookmark_label vfuncs.
3243
3244         * gtk/gtkfilesystem.h:
3245         * gtk/gtkfilesystem.c (gtk_file_system_set_bookmark_label): 
3246         (gtk_file_system_get_bookmark_label): Wrappers for the
3247         vfuncs.
3248
3249         * gtk/gtk.symbols: Add new exported symbols.
3250
3251         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_set_bookmark_label): 
3252         (gtk_file_system_unix_get_bookmark_label): Implementations
3253         for the Unix backend.
3254
3255         * gtk/gtkfilechooserdefault.c: Add a context menu to
3256         the bookmarks pane, and allow to rename bookmarks.
3257
3258 2005-03-22  Matthias Clasen  <mclasen@redhat.com>
3259
3260         * gtk/gtkpathbar.c (gtk_path_bar_unmap): 
3261         * gtk/gtkspinbutton.c (gtk_spin_button_unmap): 
3262         * gtk/gtknotebook.c (gtk_notebook_unmap): 
3263         * gtk/gtkrange.c (gtk_range_unmap): Stop scrolling when
3264         the widget is unmapped.  (#168791, Ryan Lortie)
3265
3266 2005-03-21  Matthias Clasen  <mclasen@redhat.com>
3267
3268         * gtk/gtkprivate.h: Define macros GTK_PARAM_READABLE,
3269         GTK_PARAM_WRITABLE, GTK_PARAM_READWRITE which are like
3270         their G_ counterparts, but also mark the name, nick
3271         and blurb as static.
3272
3273         * gtk/*.c: Mark param spec strings as static, using
3274         the new macros.
3275
3276         * gtk/gtkspinbutton.h: Fix a typo.
3277
3278 2005-03-21  Matthias Clasen  <mclasen@redhat.com>
3279
3280         * gtk/gtkcellrendererprogress.c: 
3281         * gtk/gtkcellrendererpixbuf.c: 
3282         * gtk/gtkcellrenderercombo.c: 
3283         * gtk/gtkcellrenderer.c: 
3284         * gtk/gtkcalendar.c: 
3285         * gtk/gtkbutton.c: 
3286         * gtk/gtkbox.c: 
3287         * gtk/gtkbbox.c: 
3288         * gtk/gtkaspectframe.c: 
3289         * gtk/gtkarrow.c: 
3290         * gtk/gtkalignment.c: 
3291         * gtk/gtkactiongroup.c: 
3292         * gtk/gtkaction.c:
3293         * gtk/gtkaccellabel.c: 
3294         * gtk/gtkaboutdialog.c: Mark param spec strings as static.
3295
3296         * gdk/gdkpango.c (gdk_pango_renderer_class_init): 
3297         * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): Mark
3298         param spec strings as static.
3299
3300 2005-03-21  Tor Lillqvist  <tml@novell.com>
3301
3302         * modules/engines/ms-windows/*.c: Silence gcc warnings (unused
3303         variables, unhandled enum value in switch). Use g_object_unref()
3304         instead of deprecated gdk_gc_unref() and gdk_drawable_unref().
3305
3306         * modules/engines/ms-windows/xp_theme.c (xp_theme_map_gtk_state): 
3307         Add missing "case" keyword.
3308
3309         * modules/engines/ms-windows/Makefile.am: Link with -lgdi32
3310         explicitly.
3311
3312 2005-03-20  Tor Lillqvist  <tml@novell.com>
3313
3314         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Return the
3315         Terminal Services session number, window station name (always
3316         "WinSta0" in interactive processes), and desktop name (typically
3317         "Default"), concatenated with backslash separators.
3318         (gdk_display_open): Accept only NULL or the string
3319         gdk_display_get_name() returns as display name.
3320
3321 2005-03-20  Matthias Clasen  <mclasen@redhat.com>
3322
3323         Make PLT-reduction work with gcc4, and don't include
3324         everything in gdkalias.h:
3325         
3326         * gtk/grk.symbols: Group symbols by header and source file.
3327         * gtk/makegtkalias.pl: Protect definitions by the same 
3328         preprocessor symbols used to guard the headers. Move
3329         the alias declarations to a separate file which is 
3330         produced when calling makegtkalias.pl -def
3331         * gdk/Makefile.am (gtkaliasdef.c): Add a rule to generate 
3332         this file.
3333         * gtk/*.c: Include gtkalias.h after the other headers, 
3334         include gtkaliasdef.c at the bottom.
3335         * gtk/*.h: Small cleanups.
3336
3337 Fri Mar 18 23:59:49 2005  Soeren Sandmann  <sandmann@redhat.com>
3338
3339         * gtk/gtkmenutoolbutton.c (arrow_button_button_press_event_cb):
3340         Make right-clicks not pop up the menu.
3341
3342 2005-03-18  Owen Taylor  <otaylor@redhat.com>
3343
3344         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_drawable_finish): 
3345         Call cairo_surface_finish()
3346
3347         * gdk/gdkinternals.c gdk/x11/gdkdrawable-x11.c: Remoev
3348         _gdk_windowing_set_surface_device_offset().
3349
3350 2005-03-18  Tor Lillqvist  <tml@novell.com>
3351
3352         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
3353         WM_MOUSEMOVE, don't check if this process owns the active
3354         window. This makes cross-application widget embedding work better.
3355         On WM_MOVE, don't bother checking for window visibility.
3356
3357         * gdk/win32/gdkim-win32.c: Remove bogus empty doc comment. Remove
3358         unused variables. Add some casts to silence gcc.
3359
3360 2005-02-24  Owen Taylor  <otaylor@redhat.com>
3361
3362         * gdk/gdkwindow.c: Use cairo_set_device_offset().
3363
3364         * gdk/win32/gdkdrawable-win32.[ch] gdk/win32/gdkwindow-win32.c
3365         gdk/win32/gdkpixmap-win32.c: 
3366         Add_gdk_win32_drawable_acquire/release_dc() to get a DC for the 
3367         drawable. Add _gdk_drawable_win32_finish() to clean up resources
3368         when a drawable is destroyed.
3369
3370         * gdk/win32/gdkgc-win32.c gdk/win32/gdkdrawable-win32.c
3371         (blit_from_pixmap) gdk/win32/gdkprivate-win32.h : Use 
3372         acquire/release_dc when getting a DC to use with a GC or for 
3373         blitting from a pixmap.
3374
3375         * gdk/win32/gdkdrawable-win32.[ch]: Implement ref_cairo_surface()
3376
3377         * gdk/win32/gdkpango-win32.c gdk/win32/gdkdrawable-win32.c Makefile.am:
3378         Remove gdk_screen_get_pango_context(), draw_glyph[_transformed]
3379         implementations.
3380
3381         * gdk/win32/gdkdrawable-win32.c: Remove 
3382         gdk_draw_rectangle_alpha_libgtk_only()
3383
3384 2005-03-17  Owen Taylor  <otaylor@redhat.com>
3385
3386         * gdk/gdkpango.c: Fix get_stipple_surface to actually work, set
3387         EXTEND_REPEAT on the stipple pattern.
3388
3389 2005-03-17  Matthias Clasen  <mclasen@redhat.com>
3390
3391         * gtk/gtklabel.c (gtk_label_set_markup): Fix formatting
3392         in example in the docs.  (#170611, Jianfei Wang)
3393
3394         * gtk/gtkiconview.c (gtk_icon_view_size_allocate): Clamp
3395         adjustment values on resize.  (#170567, Tomislav Jonjic)
3396
3397         * gtk/gtkicontheme.c (theme_lookup_icon): Don't crash
3398         if there is no cache.  (#170652, Diego Gonzalez)
3399         
3400         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
3401         Make inline completion insert the prefix at the
3402         right spot.  (#170146, Doug Quale)
3403
3404 2005-03-17  Tor Lillqvist  <tml@novell.com>
3405
3406         * gdk/gdkkeynames.c: gdk_key is a typedef, not a struct tag.
3407
3408 2005-03-16  Matthias Clasen  <mclasen@redhat.com>
3409
3410         * gtk/gtkprogressbar.c (gtk_progress_bar_get_ellipsize): 
3411         Typo fix in the docs.
3412         
3413         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_set_arrow_tooltip): 
3414         Typo fix in the docs.
3415
3416         * gtk/gtkiconview.c (gtk_icon_view_set_columns) 
3417         (gtk_icon_view_get_columns, gtk_icon_view_set_item_width) 
3418         (gtk_icon_view_get_item_width, gtk_icon_view_set_spacing) 
3419         (gtk_icon_view_get_spacing, gtk_icon_view_set_row_spacing) 
3420         (gtk_icon_view_set_column_spacing) 
3421         (gtk_icon_view_get_row_spacing, gtk_icon_view_get_margin) 
3422         (gtk_icon_view_set_margin): Add docs.
3423         
3424         * gtk/gtkcellview.c (gtk_cell_view_get_displayed_row): 
3425         Add docs.
3426
3427 2005-03-15  Owen Taylor  <otaylor@redhat.com>
3428
3429         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkpixmap.c gdk/gdkwindow.c 
3430         gdk/x11/gdkdrawable-x11.c gdk/x11/gdkpixmap-x11.c gdk/x11/gdkwindow-x11.c
3431         gdk/gdkinternals.h: Switch set_cairo_target() virtual function to
3432         ref_cairo_surface()
3433
3434         * gdk/gdkdrawable.h gdk/gdkdraw.h: Switch set_cairo_target() virtual
3435         function to create_cairo_context()
3436
3437         * gdk/gdkwindow.c: Clear double buffer pixmaps with Cairo.
3438
3439         * gdk/x11/gdkwindow-x11.c: Keep all components in GdkWindowObject.bg_color,
3440         not just the pixel.
3441
3442         * tests/testcairo.c: Update for create_cairo_context()
3443
3444         * gdk/gdkdraw.c (gdk_draw_trapezoids, gdk_draw_glyphs[_transformed]):
3445         Reimplement in terms of Cairo, bypass the vtable entries.
3446
3447         * gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkdisplay-x11.[ch]
3448         gdk/x11/gdkgc-x11.c gdk/x11/gdkpango-x11.c
3449         gdk/x11/gdkprivate-x11.h gdk/x11/Makefile.am: Remove
3450         implementation of draw_trapezoids / draw_glyphs[_transformed].
3451
3452         * gdk/gdkpango.c: Switch GdkPangoRenderer to use Cairo
3453
3454         * gdk/gdkpango.c gdk/x11/gdkpango-x11.c: Move
3455         gdk_pango_context_get_for_screen() into the backend independent code.
3456
3457         * gdk/x11/gdkdrawable-x11.[ch]: Remove Xft use, use RENDER directly
3458         for drawing images.
3459
3460         * gdk/gdkdrawable.h gdk/x11/gdkdrawable-x11.c: Remove
3461         gdk_draw_rectangle_alpha_libgtk_only.
3462
3463         * gdk/gdkpixbuf.h gdk/gdkpixbuf-render.c: Add 
3464         gdk_pixbuf_set_as_cairo_source()
3465
3466         * gdk/gdk.symbols: Update
3467
3468         * gtk/gtkcolorsel.c gtk/gtkhsv.c gtk/gtkiconview.c gtk/gtkruler.[ch]
3469         gtk/gtk[hv]ruler.c: Convert to Cairo rendering.
3470
3471         * gtk/gtkstyle.c (gtk_default_draw_check, gtk_default_draw_focus,
3472         gtk_default_draw_option): Switch to Cairo. Simplify the checkbutton,
3473         radio button style for now to get something more scalable.
3474
3475         *  gtk/gtksettings.c: #if 0 out the code to use PangoXft for hinting/
3476         antialiasing/dpi settings.
3477
3478 2005-03-16  Matthias Clasen  <mclasen@redhat.com>
3479
3480         * demos/gtk-demo/editable_cells.c: Also demonstrate
3481         GtkCellRenderer::editing-started and separators.
3482
3483 Tue Mar 15 20:34:33 2005  Manish Singh  <yosh@gimp.org>
3484
3485         * gdk/x11/gdkinput-xfree.c: #include gdkaliasdef.c here too.
3486
3487 2005-03-15  Matthias Clasen  <mclasen@redhat.com>
3488
3489         Make PLT-reduction work with gcc4, and don't include
3490         everything in gdkalias.h:
3491
3492         * gdk/gdk.symbols: Group symbols by header and source file.
3493         * gdk/makegdkalias.pl: Protect definitions by the same
3494         preprocessor symbols used to guard the headers. Move
3495         the alias declarations to a separate file which is
3496         produced when calling makegdkalias.pl -def
3497         * gdk/Makefile.am (gdkaliasdef.c): Add a rule to generate this
3498         file.
3499         * gdk/*.c, gdk/x11/*.c: Include gdkalias.h after the other
3500         headers, include gdkaliasdef.c at the bottom.
3501
3502 2005-03-16  Tor Lillqvist  <tml@novell.com>
3503
3504         * gdk/win32/gdkdisplay-win32.c (_win32_on_clipboard_change): Print
3505         debugging output only if asked for, not always.
3506
3507         * gdk/win32/*.c: Use the %+d%+d format for coordinate pairs in
3508         debugging printout instead of +%d+%d. Misc other additions and
3509         cosmetic improvements to debugging printouts. Use API_CALL() and
3510         GDI_CALL() macros in more places.
3511
3512         * gdk/win32/gdkwindow-win32.c (gdk_window_move, gdk_window_resize,
3513         gdk_window_move_resize): To detect child windows, check whether
3514         the real parent is not the desktop window, instead of relying on
3515         the GDK window type being GDK_WINDOW_CHILD. Foreign GtkPlug
3516         windows have a GDK window type GDK_WINDOW_FOREIGN, but are still
3517         de facto child windows.
3518
3519         * gdk/win32/gdkprivate-win32.h
3520         * gdk/win32/*.c: Drop global variable _gdk_root_window, just call
3521         GetDesktopWindow(). Rename the GdkWindow* _gdk_parent_root to
3522         _gdk_root.
3523
3524         * gdk/win32/gdkwindow-win32.h (GdkWindowImplWin32): Add
3525         toplevel_window_type field.
3526
3527         * gdk/win32/gdkwindow-win32.c: As there is only one root window in
3528         GDK on Win32, we can compare directly to _gdk_root instead of
3529         checking the window type.
3530         (gdk_window_reparent): When reparenting a child of the desktop
3531         clear out the window decorations. Correspondingly, when
3532         reparenting to the desktop, add decorations. As in the X11
3533         backend, save the window type of a toplevel window when
3534         reparenting, in case it is reparented back to toplevel.
3535
3536 2005-03-15  Matthias Clasen  <mclasen@redhat.com>
3537
3538         * gtk/gtkradioaction.c (gtk_radio_action_get_group): Add an
3539         example for manually setting up a group of actions.
3540
3541         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
3542         Document that inline completion requires text-column to be set.
3543         (gtk_entry_completion_compute_prefix): Return NULL if text-column
3544         is not set.
3545
3546         * gtk/gtkentry.c (check_completion_callback): Call 
3547         gtk_entry_completion_complete() before inserting the prefix,
3548         otherwise the prefix may depend on (random) state of the
3549         filter model.  
3550
3551 2005-03-15  Anders Carlsson  <andersca@imendio.com>
3552
3553         * docs/iconcache.txt:
3554         Update spec.
3555         
3556         * gtk/gtkiconcache.c: (find_image_offset),
3557         (_gtk_icon_cache_get_icon_flags), (_gtk_icon_cache_add_icons),
3558         (_gtk_icon_cache_get_icon), (_gtk_icon_cache_get_icon_data):
3559         * gtk/gtkiconcache.h:
3560         Update to be able to fetch pixbuf data and icon metadata.
3561         
3562         * gtk/gtkicontheme.c: (theme_lookup_icon), (gtk_icon_info_free),
3563         (icon_info_ensure_scale_and_pixbuf):
3564         Use new cache functions.
3565         
3566         * gtk/updateiconcache.c: (foreach_remove_func), (load_icon_data),
3567         (maybe_cache_image_data), (scan_directory), (write_pixdata),
3568         (get_image_meta_data_size), (get_image_pixel_data_size),
3569         (get_image_data_size), (get_single_node_size), (get_bucket_size),
3570         (write_bucket), (main):
3571         Update to write pixbuf data as well as information from .icon
3572         files.
3573         
3574 2005-03-15  Tor Lillqvist  <tml@novell.com>
3575
3576         * gdk/win32/gdkmain-win32.c (_gdk_win32_key_to_string): New
3577         debugging function. As GetKeyNameText() returns a localized key
3578         name we need to convert it to UTF-8.
3579
3580         * gdk/win32/gdkprivate-win32.h: Declare it.
3581
3582         * gdk/win32/gdkevents-win32.c: Use it.
3583
3584         * gdk/win32/gdkwindow-win32.c (gdk_window_new_internal): Fix
3585         handling of children of foreign windows. They should be child
3586         windows from Windows's perspective, even if they are toplevel GDK
3587         windows.
3588
3589 2005-03-13  Ivan, Wong Yat Cheung  <email@ivanwong.info>
3590
3591         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): A further fix
3592         for big window support. Now also the test in testgtk works.
3593
3594 2005-03-11  Matthias Clasen  <mclasen@redhat.com>
3595
3596         * gtk/gtkaboutdialog.c (add_credits_page): Don't crash on
3597         style changes.  (#169334, Yury Puzis)
3598
3599         * gtk/gtkicontheme.c (gtk_icon_theme_set_custom_theme): Fix
3600         the doc comments.  (#169967, Masao Mutoh)
3601
3602 2005-03-12  Ivan, Wong Yat Cheung  <email@ivanwong.info>
3603
3604         Big window fix for Win32. Big windows are still emulated within
3605         16-bit coordinate limits, though. Big windows now work on NT-based
3606         Windows. (#169989)
3607
3608         * gdk/win32/gdkgc-win32.c (_gdk_win32_gdkregion_to_hrgn): Use
3609         32-bit coordinates.
3610
3611         * gdk/win32/gdkgeometry-win32.c: Largely rewrite.
3612
3613         * gdk/win32/gdkwindow-win32.c: Minor related changes.
3614         
3615 2005-03-10  Matthias Clasen  <mclasen@redhat.com>
3616
3617         * gtk/gtkliststore.c (gtk_list_store_insert_with_valuesv): 
3618         Fix a doc typo.  (#169873, Johan Dahlin)
3619
3620         * gtk/gtkdialog.c (gtk_dialog_map): Don't
3621         try to focus the default_widget if there is 
3622         none.  (#169881, Thomas Leonard)
3623
3624 Wed Mar  9 19:20:44 2005  Manish Singh  <yosh@gimp.org>
3625
3626         * configure.in: Remove inadvertent gail references, require
3627         Pango 1.9.0
3628
3629 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
3630
3631         * configure.in: Require GLib 2.7.0
3632
3633 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
3634
3635         * gtk/gtkwidget.h (struct _GtkWidget): Typo fixes in comments.
3636         (#169728, Morten Welinder, Owen Taylor)
3637
3638         * gtk/gtkwidget.c (gtk_widget_add_mnemonic_label): Fix a typo
3639         in the docs.  (#169729, Morten Welinder)
3640
3641         * gtk/gtkimage.c (gtk_image_class_init): Fix a typo.
3642
3643         * gtk/gtkiconview.c (gtk_icon_view_set_model): Queue a resize 
3644         when the model is unset.  (#169528, Tomislav Jonjic)
3645
3646 2005-03-09  Matthias Clasen  <mclasen@redhat.com>
3647
3648         * gtk/gtkviewport.c (gtk_viewport_class_init): 
3649         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): 
3650         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_class_init): 
3651         * gtk/gtktipsquery.c (gtk_tips_query_class_init): 
3652         * gtk/gtktext.c (gtk_text_class_init): 
3653         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): 
3654         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): 
3655         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): 
3656         * gtk/gtkoptionmenu.c (gtk_option_menu_class_init): 
3657         * gtk/gtkoldeditable.c (gtk_old_editable_class_init): 
3658         * gtk/gtkmessagedialog.c (gtk_message_dialog_class_init): 
3659         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): 
3660         * gtk/gtktoolitem.c (gtk_tool_item_class_init): 
3661         * gtk/gtkimage.c (gtk_image_class_init): 
3662         * gtk/gtkruler.c (gtk_ruler_class_init): 
3663         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
3664         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): 
3665         * gtk/gtkprogress.c (gtk_progress_class_init): 
3666         * gtk/gtkmenu.c (gtk_menu_class_init): 
3667         * gtk/gtkscale.c (gtk_scale_class_init): 
3668         * gtk/gtkpaned.c (gtk_paned_class_init): 
3669         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
3670         * gtk/gtkfontbutton.c (gtk_font_button_class_init): 
3671         * gtk/gtkfontsel.c (gtk_font_selection_class_init): 
3672         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
3673         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
3674         * gtk/gtkcurve.c (gtk_curve_class_init): 
3675         * gtk/gtkcombo.c (gtk_combo_class_init): 
3676         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
3677         * gtk/gtkcolorbutton.c (gtk_color_button_class_init): 
3678         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): 
3679         * gtk/gtkmenuitem.c (gtk_menu_item_class_init): 
3680         * gtk/gtkcheckbutton.c (gtk_check_button_class_init): 
3681         * gtk/gtktogglebutton.c (gtk_toggle_button_class_init): 
3682         * gtk/gtkcellview.c (gtk_cell_view_class_init): 
3683         * gtk/gtktoolbar.c (gtk_toolbar_class_init): 
3684         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): 
3685         * gtk/gtkclist.c (gtk_clist_class_init): 
3686         * gtk/gtkctree.c (gtk_ctree_class_init): 
3687         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): 
3688         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init): 
3689         * gtk/gtkcellrenderercombo.c (gtk_cell_renderer_combo_class_init): 
3690         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_class_init): 
3691         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
3692         * gtk/gtkbbox.c (gtk_button_box_class_init): 
3693         * gtk/gtktable.c (gtk_table_class_init): 
3694         * gtk/gtkaspectframe.c (gtk_aspect_frame_class_init): 
3695         * gtk/gtkframe.c (gtk_frame_class_init): 
3696         * gtk/gtkaction.c (gtk_action_class_init): 
3697         * gtk/gtkaccellabel.c (gtk_accel_label_class_init): 
3698         * gtk/gtkaboutdialog.c (gtk_about_dialog_class_init): 
3699         * gtk/gtkdialog.c (gtk_dialog_class_init): More of the same.
3700
3701 2005-03-08  Matthias Clasen  <mclasen@redhat.com>
3702
3703         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): 
3704         * gtk/gtkrange.c (gtk_range_class_init): 
3705         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_class_init): 
3706         * gtk/gtktexttag.c (gtk_text_tag_class_init): 
3707         * gtk/gtktextview.c (gtk_text_view_class_init): 
3708         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): 
3709         * gtk/gtknotebook.c (gtk_notebook_class_init): 
3710         * gtk/gtkentry.c (gtk_entry_class_init): 
3711         * gtk/gtkexpander.c (gtk_expander_class_init): 
3712         * gtk/gtkarrow.c (gtk_arrow_class_init): 
3713         * gtk/gtkalignment.c (gtk_alignment_class_init): 
3714         * gtk/gtkbutton.c (gtk_button_class_init): 
3715         * gtk/gtklabel.c (gtk_label_class_init): 
3716         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): 
3717         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
3718         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 
3719         * gtk/gtktreeview.c (gtk_tree_view_class_init): 
3720         * gtk/gtkbox.c (gtk_box_class_init): 
3721         * gtk/gtkwindow.c (gtk_window_class_init, gtk_window_class_init): 
3722         * gtk/gtkcontainer.c (gtk_container_class_init): 
3723         * gtk/gtkwidget.c (gtk_widget_class_init): 
3724         * gtk/gtkobject.c (gtk_object_class_init): Use canonical names
3725         when registering param specs.
3726
3727         * demos/gtk-demo/editable_cells.c: Use GtkCellRendererCombo
3728         (#169607, Mark McLoughlin)
3729         
3730         * gtk/gtk.symbols: Add the new attributes here, too.
3731
3732         * gtk/gtkwidget.h: 
3733         * gtk/gtktreeview.h: 
3734         * gtk/gtktreeviewcolumn.h: 
3735         * gtk/gtktextbuffer.h: 
3736         * gtk/gtkobject.h: 
3737         * gtk/gtkfilechooserdialog.h: 
3738         * gtk/gtkdialog.h: 
3739         * gtk/gtkcontainer.h: 
3740         * gtk/gtkcelllayout.h: 
3741         * gtk/gtkaboutdialog.h: Use G_GNUC_NULL_TERMINATED where
3742         appropriate.  (#165682, Marc Meissner)
3743
3744 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
3745
3746         Convert the gdk keyval-keyname tables to a big string
3747         + offsets. (#168901)
3748         
3749         * gdk/gen-keyname-table.pl: Perl script inspired by
3750         pango/tools/gen-color-table.pl to create the 
3751         gdk_keys_by_keyval and gdk_keys_by_name tables as lists
3752         of offsets pointing into a big const string.
3753         
3754         * gdk/keynames.txt: List of keyval-keyname pairs.
3755         * gdk/keyname-table.h: Generated tables.
3756
3757         * gdk/gdkkeynames.c: Include keyname-table.h and don't
3758         generate the inverse table at runtime.
3759
3760 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
3761
3762         * gtk/gtkstyle.c: Document which parameters may be NULL.  
3763         (#166855, Frank Naumann)
3764
3765 2005-03-07  Matthias Clasen  <mclasen@redhat.com>
3766
3767         * AUTHORS: Add original authors of incorporated software.
3768
3769 Thu Mar  3 16:59:44 2005  Manish Singh  <yosh@gimp.org>
3770
3771         * configure.in: URL escape the '+' in gtk+ in the bugzilla URL.
3772
3773 2005-03-03  Matthias Clasen  <mclasen@redhat.com>
3774
3775         * gtk/gtksettings.c (gtk_settings_get_property): 
3776         * gtk/gtkrc.c (gtk_rc_parse_assignment): Don't leak 
3777         the values here.  (#169047, Philip Langdale)
3778
3779         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): 
3780         Don't warn if a stock icon cannot be found.  (#168830,
3781         Sven Neumann)
3782
3783 2005-03-03  Matthias Clasen  <mclasen@redhat.com>
3784
3785         * gtk/gtkwidget.c (gtk_widget_reparent_subwindows): 
3786         Avoid warnings if gtk_widget_reparent() is called at
3787         unusual times.  (#168966, Christian Persch)
3788
3789 Tue Mar  1 14:04:08 2005  Manish Singh  <yosh@gimp.org>
3790
3791         * gdk/x11/gdkproperty-x11.c (virtual_atom_check_init): Cast to avoid
3792         const warnings on data structure seeding.
3793
3794 Tue Mar  1 13:53:56 2005  Manish Singh  <yosh@gimp.org>
3795
3796         * gtk/xdgmime/xdgmime.[ch]: revert previous change, maintain ABI.
3797
3798 2005-03-01  Matthias Clasen  <mclasen@redhat.com>
3799
3800         * gtk/gtkmenutoolbutton.c (button_state_changed_cb): 
3801         Fix prelighting.  (#157392, Vincent Noel, patch by
3802         Christian Persch)
3803
3804         * gtk/gtkicontheme.c (theme_lookup_icon): Make 
3805         icon data caching work again.  (#168851, Alexander Larsson)
3806
3807         * gdk-pixbuf/gdk-pixbuf.c:
3808         * gdk-pixbuf/gdk-pixbuf-features.h.in:
3809         Revert the previous change, since it breaks
3810         bin compat.
3811
3812 2005-03-01  Matthias Clasen  <mclasen@redhat.com>
3813
3814         * gdk/gdkkeyuni.c
3815         * gdk/gdkpixbuf-drawable.c
3816         * gdk/gdkrgb.c
3817         * gdk/x11/gdkdnd-x11.c
3818         * gdk/x11/gdkevents-x11.c
3819         * gdk/x11/gdkproperty-x11.c
3820         * gdk/x11/gdkvisual-x11.c
3821         * gdk-pixbuf/gdk-pixbuf.c
3822         * gdk-pixbuf/gdk-pixbuf-features.h.in
3823         * gtk/gtkaction.c
3824         * gtk/gtkbindings.c
3825         * gtk/gtkcolorbutton.c
3826         * gtk/gtkcombo.c
3827         * gtk/gtkcontainer.c
3828         * gtk/gtkfilechooserdefault.c
3829         * gtk/gtkfilesel.c
3830         * gtk/gtkgamma.c
3831         * gtk/gtkiconview.c
3832         * gtk/gtkinputdialog.c
3833         * gtk/gtkitemfactory.c
3834         * gtk/gtkmenu.c
3835         * gtk/gtktextview.c
3836         * gtk/gtktooltips.c
3837         * gtk/gtktreedatalist.c
3838         * gtk/gtkuimanager.c
3839         * gtk/tree_minus.xpm
3840         * gtk/tree_plus.xpm
3841         * gtk/xdgmime/xdgmime.c
3842         * gtk/xdgmime/xdgmime.h: 
3843         Move constant data to .rodata.
3844
3845 2005-02-27  Matthias Clasen  <mclasen@redhat.com>
3846
3847         * gtk/gtkaction.c (connect_proxy): Improve the handling
3848         of buttons as action proxys.  (#165534, Milosz Derezynski)
3849
3850         * gtk/gtklabel.c (gtk_label_size_request): Fix a typo.
3851         (#168646, Vincent Untz)
3852
3853         * gtk/gtkfilechooserdefault.c (save_folder_combo_create): 
3854         Unset "focus-on-click" for the save folder combo.  (#168688,
3855         Sven Neumann)
3856
3857 2005-02-25  Matthias Clasen  <mclasen@redhat.com>
3858
3859         * demos/testpixbuf.c (main): Remove a C++ comment.  (#168531, 
3860         Paul Cornett)
3861
3862         * gtk/gtkcombobox.c (gtk_combo_box_menu_fill_level): Don't leak a 
3863         path here.  (#168443, Morten Welinder)
3864
3865 2005-02-24  Robert Ögren  <gtk@roboros.com>
3866
3867         Implement better handling of Wintab tablet context overlap on
3868         Win32. (#167298)
3869
3870         * gdk/win32/gdkinput-win32.c (_gdk_input_set_tablet_active): New
3871         function that brings any tablet contexts to the top of the overlap
3872         order.
3873         * gdk/win32/gdkinput-win32.h: Declare _gdk_input_set_tablet_active ()
3874         * gdk/win32/gdkevents-win32.c (gdk_event_translate):
3875         Call _gdk_input_set_tablet_active when a window is activated (on
3876         WM_ACTIVATE)
3877
3878 2005-02-24  Matthias Clasen  <mclasen@redhat.com>
3879
3880         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_select_path): 
3881         Don't leak parent_path.  (#168435, Morten Welinder)
3882
3883 Thu Feb 24 14:20:16 2005  Søren Sandmann  <sandmann@redhat.com>
3884
3885         * gtk/gtkstyle.c: Add
3886
3887         g_return_if_fail (style->depth == gdk_drawable_get_depth(window));
3888
3889         all over the place.
3890
3891 2005-02-24  Matthias Clasen  <mclasen@redhat.com>
3892
3893         * gtk/gtkcombobox.c: Consistently use gtk_tree_row_reference_valid().
3894         (gtk_combo_box_model_row_deleted): Update the displayed row in 
3895         the cell_view.  (#167842, Gustavo Carneiro)
3896
3897 2005-02-24  Matthias Clasen  <mclasen@redhat.com>
3898
3899         Fix #167259, reported by  Christian Persch:
3900         
3901         * gtk/gtkwidget.c (gtk_widget_unparent): Unmap the reparented 
3902         widget, even if we avoid the unrealizing. 
3903         (gtk_widget_reparent_subwindows): Make reparenting work for
3904         !NO_WINDOW widgets which have other windows which are siblings
3905         of widget->window (as e.g. GtkSpinButton).
3906
3907 2005-02-24  Matthias Clasen  <mclasen@redhat.com>
3908
3909         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_changed): 
3910         Don't emit a warning if a parent node is filtered out. (#164726,
3911         Olivier Sessink)
3912
3913 2005-02-23  Matthias Clasen  <mclasen@redhat.com>
3914
3915         * gtk/gtklabel.c (gtk_label_style_set): Revert the last 
3916         change, since gtk_widget_set_style_internal() already
3917         queues a resize.
3918
3919 2005-02-23  Matthias Clasen  <mclasen@redhat.com>
3920
3921         * gtk/gtklabel.c (gtk_label_style_set): Queue a resize, since
3922         fonts may have changed.  (#164128, Phil Blundell)
3923
3924         * gtk/gtkaboutdialog.c (gtk_about_dialog_init) 
3925         (gtk_about_dialog_new): Move initialization code from _new to 
3926         _init.  (#168249, Murray Cumming) 
3927
3928 Wed Feb 23 17:34:01 2005  Jonathan Blandford  <jrb@redhat.com>
3929
3930         * gtk/gtktreeview.c (gtk_tree_view_node_queue_redraw): Patch from
3931         jorn@nl.linux.org (Jorn Baayen) to notice changes to fixed-height
3932         widgets.
3933
3934 2005-02-23  Tor Lillqvist  <tml@novell.com>
3935
3936         * gdk/win32/gdkkeys-win32.c (update_keymap): Workaround for bug in
3937         MapVirtualKey(VK_DIVIDE, 0) in some Windows versions. (#142998)
3938
3939 Tue Feb 22 13:49:09 2005  Manish Singh  <yosh@gimp.org>
3940
3941         * gtk/updateiconcache.c: #include <config.h>
3942
3943 2005-02-22  Federico Mena Quintero  <federico@ximian.com>
3944
3945         Merged from gtk-2-6:
3946
3947         Fix #164940, patch by Ben Maurer and Tommi Komulainen.
3948
3949         * gdk/gdkrgb.c (gdk_rgb_convert_565_d): Constify the "dmp" variable.
3950         (gdk_rgb_convert_565_d): Likewise.
3951         (DM_565): Made a static const precomputed array to avoid
3952         allocating it at runtime.
3953         (gdk_rgb_preprocess_dm_565): #ifdef out.
3954
3955 2005-02-20  Matthias Clasen  <mclasen@redhat.com>
3956
3957         * gtk/gtkwindow.c: 
3958         * gtk/gtkclipboard.c: Fix links to freedesktop.org specs
3959         in the documentation.
3960
3961         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids): 
3962         Set have_render_with_trapezoids to GDK_YES when we have 
3963         a new enough Render extension.  (#167965,Billy Biggs) 
3964
3965         * gtk/gtkwindow.c (gtk_window_present): Use the timestamp of
3966         the last user interaction when focusing the window.  (#166379, 
3967         Elijah Newren)
3968
3969 Thu Feb 17 14:58:16 2005  Manish Singh  <yosh@gimp.org>
3970
3971         * gtk/gtkuimanager.c (start_element_handler): make sure expand
3972         is initialized, cast to GTK_SEPARATOR_TOOL_ITEM.
3973
3974 Thu Feb 17 14:52:57 2005  Manish Singh  <yosh@gimp.org>
3975
3976         * gtk/gtkcombobox.c: Pass gtk_widget_get_toplevel() a GTK_WIDGET.
3977
3978 2005-02-16  Matthias Clasen  <mclasen@redhat.com>
3979
3980         * docs/iconcache.txt: Add some information about the
3981         icon cache format (since I can't locate it at freedesktop.org)
3982
3983         Fixes for #143829, Tommi Komulainen, Christian Persch:
3984         
3985         * gtk/gtktreeview.c (gtk_tree_view_destroy): Remove the
3986         typeselect_flush_timeout when destroying the widgets
3987         it is operating on.  
3988         (gtk_tree_view_ensure_interactive_directory): Add the 
3989         popup to the window group of the toplevel it belongs to.
3990
3991         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget) 
3992         (gtk_combo_box_popup): Do the same here. 
3993
3994 2005-02-14  Matthias Clasen  <mclasen@redhat.com>
3995
3996         * configure.in: Kill --enable-ansi  (#164394)
3997
3998 2005-02-11  Matthias Clasen  <mclasen@redhat.com>
3999
4000         * gtk/gtkpathbar.c (gtk_path_bar_finalize): Stop scrolling 
4001         when the pathbar goes away.  (#167094, Rodney Dawes)
4002         (change_icon_theme): Use GTK_ICON_SIZE_MENU here as 
4003         well  (Vincent Noel)
4004
4005 2005-02-11  Matthias Clasen  <mclasen@redhat.com>
4006
4007         Support vertical menubars  (#166632): 
4008         
4009         * gtk/gtkenums.h (GtkPackDirection): New enumeration for pack 
4010         directions, with values for left-to-right, right-to-left, 
4011         top-to-bottom and bottom-to-top.
4012
4013         * gtk/gtk.symbols: 
4014         * gtk/gtkmenubar.h: 
4015         * gtk/gtkmenubar.c: Add two properties, pack-direction and
4016         child-pack-direction, which specify how children and 
4017         grandchildren of a menubar are packed, with getters and setters. 
4018
4019         * gtk/gtkmenubar.c (gtk_menu_bar_set_property): 
4020         (gtk_menu_bar_get_property): Implement set_property and get_property.
4021
4022         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): 
4023         (gtk_menu_bar_size_allocate): Take pack direction into account.
4024
4025         * gtk/gtkmenubar.c (gtk_menu_bar_move_current): Implement 
4026         move_current here move all the menubar-specific direction 
4027         tweaking from the generic menushell implementation here.
4028
4029         * gtk/gtkmenu.c (gtk_menu_move_current): Move  menu-specific 
4030         direction tweaking from the generic menushell implementation here.
4031
4032         * gtk/gtkmenuitem.c (gtk_menu_item_size_request): 
4033         (gtk_menu_bar_size_allocate): Take pack direction into account.
4034
4035         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_size_request) 
4036         (gtk_image_menu_item_size_allocate): 
4037         (gtk_image_menu_item_toggle_size_request): Take child pack 
4038         direction into account and pack the image vertically if
4039         necessary.
4040
4041         * gtk/gtkmenushell.c (gtk_menu_shell_real_select_item):
4042         Set the submenu direction to left-right for menuitems in 
4043         vertical menubars.
4044         (gtk_real_menu_shell_move_current): Simplify by moving
4045         direction tweaking to menu- and menubar-specific 
4046         implementations. Take pack direction into account when
4047         doing fallbacks.
4048
4049         * tests/testmenubars.c: Test menubars in various packing
4050         direction combinations.
4051
4052         * tests/Makefile.am (noinst_PROGRAMS): Add testmenubars.
4053
4054 2005-02-11  Matthias Clasen  <mclasen@redhat.com>
4055
4056         Complete the fix for #165770, Vincent Noel:
4057         
4058         * gtk/gtkfilechooserbutton.c (FALLBACK_ICON_SIZE): Make the
4059         fallback size be 16, to be equal to the default for
4060         GTK_ICON_SIZE_MENU (in gtkiconfactory.c:init_icon_sizes()).
4061         (gtk_file_chooser_button_init):
4062         (change_icon_theme): Use GTK_ICON_SIZE_MENU instead of
4063         GTK_ICON_SIZE_SMALL_TOOLBAR. 
4064
4065 2005-02-09  Matthias Clasen  <mclasen@redhat.com>
4066
4067         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current): Fix RTL
4068         keynav for going from menubar to menu.
4069
4070 2005-02-08  Christian Rose  <menthos@menthos.com>
4071
4072         * configure.in: Added "xh" to ALL_LINGUAS.
4073
4074 2005-02-08  Matthias Clasen  <mclasen@redhat.com>
4075
4076         * gtk/gtkuimanager.c (start_element_handler): Accept 
4077         the "expand" attribute and set a flag in the node if it
4078         is set to "true".
4079         (update_node): If the expand flag is set, make separator
4080         toolitems non-drawn and expanding.  (#166489, Christian Persch)
4081
4082 2005-02-05  Hans Breuer  <hans@breuer.org>
4083
4084         * gdk/makefile.msc gdk/win32/makefile.msc gtk/makefile.msc.in :
4085         build with Cairo dependency. The patch to acually use Cairo
4086         on win32 will be on gtk-devel-list soon.
4087         * tests/makefile.msc : add testcairo building
4088
4089         * gtk/stock-icons/makefile.msc : split command line into two to
4090         work with the shells default
4091
4092 Fri Feb  4 14:16:31 2005  Manish Singh  <yosh@gimp.org>
4093
4094         * gtk/gtkaccelgroup.c (substitute_underscores): remove unused
4095         function.
4096
4097         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
4098         Add some extra parens for bitop order of operations disambiguiation.
4099
4100         * gtk/gtkstock.c: Fix const confusion, make our own copy of the 
4101         domain when setting a translate function.
4102
4103         * tests/testcombo.c: removed unused variable.
4104
4105 2005-02-04  Matthias Clasen  <mclasen@redhat.com>
4106
4107         * gtk/gtkstock.c (gtk_stock_lookup): Handle item->translation_domain
4108         being NULL.  (#166179, Diego Gonzalez)
4109
4110 2005-02-04  Owen Taylor  <otaylor@redhat.com>
4111
4112         * configure.in: Revert gtk_binary_version to 2.4.0. Fix
4113         up comment to talk only about backwards compat, not
4114         forward/backwards compat. (#166293, reported by Vincent Noel)
4115
4116 2005-02-04  Matthias Clasen  <mclasen@redhat.com>
4117
4118         * gtk/gtkpaned.c (gtk_paned_compute_position): Work better
4119         when there is not enough space. This avoids a nasty size
4120         allocation loop in the file chooser.  (#154007, reported 
4121         by Milosz Derezynski, patch by Robert Ögren)
4122
4123 2005-02-04  Matthias Clasen  <mclasen@redhat.com>
4124
4125         * gtk/gtkentry.c (gtk_entry_create_layout): Avoid spurious
4126         selection of RTL direction if the widget does not have 
4127         focus.  (#164125, Frederic Crozat)
4128
4129 Thu Feb  3 19:15:55 2005  Manish Singh  <yosh@gimp.org>
4130
4131         * gdk/x11/gdkdrawable-x11.c: #include cairo-xlib.h
4132
4133 2005-02-03  Owen Taylor  <otaylor@redhat.com>
4134
4135         * gdk/gdkdrawable.[ch] gdkpixmap.c gdkwindow.c: Add
4136         gdk_drawable_set_cairo_target().
4137
4138         * tests/testtreeflow.c (enum): Use grand not rand as a variable
4139         name because one of the cairo headers is pulling in stdlib.h.
4140
4141         * tests/testcairo.c tests/Makefile.am: Add a simple cairo based
4142         example.
4143
4144         * configure.in: Bump release to 2.7.0, gtk_binary_version to 2.7.0.
4145
4146         * Require libpangocairo for all backends.
4147
4148 2005-02-03  Tor Lillqvist  <tml@novell.com>
4149
4150         * modules/input/gtkimcontextime.c (get_pango_attr_list): Use the
4151         wide character version of ImmGetCompositionString() here,
4152         too. (#165278, Takuro Ashie)
4153
4154 2005-02-03  Matthias Clasen  <mclasen@redhat.com>
4155
4156         * gtk/gtkmenu.c (gtk_menu_handle_scrolling): Don't do
4157         one roundtrip per motion event.  (#166173, pointed out
4158         by Chris Lee, patch by Søren Sandmann)
4159
4160         * gtk/gtk.symbols: 
4161         * gtk/gtkstock.h: 
4162         * gtk/gtkstock.c (gtk_stock_set_translate_func): 
4163         New function which allows to change the function used for
4164         translation stock labels, on a per-domain basis. Use this
4165         functionality to switch the GTK+ stock items to use Q_()
4166         prefixed msgids.  (#166179, Funda Wang)
4167         
4168         * gdk/gdkkeynames.c: Make the gdk_key array const (#166075,
4169         Tommi Komulainen)
4170
4171 2005-02-02  Federico Mena Quintero  <federico@ximian.com>
4172
4173         Merged from gtk-2-6:
4174
4175         * gtk/gtkfilechooserdefault.c (pending_select_paths_process):
4176         Don't select the first row if the chooser is not mapped.  This
4177         happens when it's acting on behalf of GtkFileChooserButton.  Also,
4178         don't select the first row if we are in SAVE or CREATE_FOLDER
4179         modes --- I had missed that (see the ChangeLog entry from
4180         2005-01-18).  Fixes #165264.
4181
4182 2005-02-02  Tor Lillqvist  <tml@novell.com>
4183
4184         Implement lazy extended input initialization on Win32, by Robert
4185         Ögren. Fixes #163163, possibly #162334. Lazy initialization would
4186         be a good idea in any case even if it didn't fix any visible
4187         problems, though.
4188
4189         The Wacom tablet driver seems to get confused if Wintab is
4190         initialized but no window is shown before the process exits. This
4191         is the case for some GIMP plug-ins, for instance. 
4192
4193         * gdk/win32/gdkinput-win32.c (_gdk_input_wintab_init_check): Made
4194         non-static (and renamed).
4195         (_gdk_input_init): Don't call _gdk_input_wintab_init_check().
4196
4197         * gdk/win32/gdkinput-win32.h: Declare _gdk_input_wintab_init_check().
4198
4199         * gdk/win32/gdkinput.c (gdk_devices_list,
4200         gdk_display_list_devices, gdk_input_set_extension_events): Call
4201         _gdk_input_wintab_init_check() here instead.
4202
4203 2005-02-02  Ivan, Wong Yat Cheung  <email@ivanwong.info>
4204
4205         * gdk/win32/gdkselection.c: Use a FIFO list for storing GdkSelProp
4206         of a single window so that gtk_clipboard_request_contents() can be
4207         called inside a GtkClipboardReceivedFunc(). (#163844)
4208
4209 2005-02-01  Matthias Clasen  <mclasen@redhat.com>
4210
4211         * gtk/gtkicontheme.c (gtk_icon_theme_init): Look for icons
4212         in XDG_DATA_DIRS/pixmaps.  (#165950, Thomas Zajic)
4213
4214         * gtk/gtkwindow.c (gtk_window_set_icon_name): Set info->icon_list
4215         to NULL after freeing it.  (#165800, Damon Chaplin)
4216
4217 2005-02-01  Michael Natterer  <mitch@gimp.org>
4218
4219         * configure.in: depend on stable pango-1.8, not unstable 1.7
4220
4221 2005-02-01  Federico Mena Quintero  <federico@ximian.com>
4222
4223         Merged from gtk-2-6:
4224
4225         * gtk/gtkfilechooserdefault.c
4226         (browse_files_model_finished_loading_cb): Don't
4227         g_assert_not_reached() if we are in any other state.  Another code
4228         path may have triggered a folder reload.  Fixes #165556.
4229
4230 2005-02-01  Federico Mena Quintero  <federico@ximian.com>
4231
4232         Merged from gtk-2-6:
4233
4234         Fix #165770:
4235
4236         * gtk/gtkfilechooserdefault.c (FALLBACK_ICON_SIZE): Make the
4237         fallback size be 16, to be equal to the default for
4238         GTK_ICON_SIZE_MENU (in gtkiconfactory.c:init_icon_sizes()).
4239         (change_icon_theme): Use GTK_ICON_SIZE_MENU instead of
4240         GTK_ICON_SIZE_SMALL_TOOLBAR.
4241
4242 2005-02-01  Matthias Clasen  <mclasen@redhat.com>
4243
4244         * */*.c: Fix many instances of "the the" in docs and
4245         comments.  (#165815, Masao Mutoh)
4246
4247         * gtk/updateiconcache.c (main): Add a --quiet option.
4248
4249 2005-02-01  Tor Lillqvist  <tml@novell.com>
4250
4251         * gdk/win32/gdkkeys-win32.c (handle_special, set_shift_vks,
4252         reset_after_dead, handle_dead): New functions, code blocks
4253         refactored out of update_keymap(). No functionality change.
4254
4255         (update_keymap): Use ToUnicodeEx() when available (on NT-based
4256         Windows) instead of ToAsciiEx(). Makes keyboard input work in
4257         Unicode-only input locales that don't have any ANSI codepage, for
4258         instance Hindi and Bengali. Use _gdk_input_codepage only on
4259         Win9x. (#165723)
4260
4261         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
4262         WM_INPUTLANGCHANGE, use GetLocaleInfo() instead of
4263         TranslateCharsetInfo() to get the input locale's corresponding
4264         codepage, if any.
4265
4266 2005-01-31  Matthias Clasen  <mclasen@redhat.com>
4267
4268         * modules/input/gtkimcontextxim.c: Use NULL, not 0 to terminate 
4269         NULL-terminated va lists.  (#165683)
4270
4271 2005-01-29  Matthias Clasen  <mclasen@redhat.com>
4272
4273         * gtk/gtkseparatortoolitem.c (gtk_separator_tool_item_set_draw): 
4274         Typo fix.  (#165581, Masao Mutoh)
4275
4276 Thu Jan 27 14:25:45 2005  Manish Singh  <yosh@gimp.org>
4277
4278         * README.cvs-commits: update ancient IRC info.
4279
4280 2005-01-27  Federico Mena Quintero  <federico@ximian.com>
4281
4282         Merged from gtk-2-6:
4283
4284         * gtk/gtkfilechooserdefault.c
4285         (gtk_file_chooser_default_select_path): Oops, don't assert that we
4286         can't reach the end of the function; this happens if we are still
4287         loading but don't need a path change.  Fixes #165213.
4288
4289 2005-01-27  Matthias Clasen  <mclasen@redhat.com>
4290
4291         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): 
4292         Make wrapping work in RTL mode.  
4293
4294         * gtk/gtkaboutdialog.c: Some visual tweaks to the about dialog,
4295         obey HIG spacing a bit more, add a hand cursor when over the
4296         link button.  (#163979, Jorn Baayen)
4297
4298 2005-01-26  Matthias Clasen  <mclasen@redhat.com>
4299
4300         * gtk/gtkentrycompletion.c (gtk_entry_completion_class_init): 
4301         Don't allow -1 as minimum-key-length.
4302         (gtk_entry_completion_set_model): Add missing notification.
4303         (gtk_entry_completion_set_minimum_key_length): Add missing
4304         notification, allow setting minimum-key-length to 0.  (#165194,
4305         Vincent Ladeuil)
4306
4307 2005-01-26  Matthias Clasen  <mclasen@redhat.com>
4308
4309         * gtk/gtkaboutdialog.c (display_license_dialog): Make sure
4310         the license dialog is initially displayed without a horizontal
4311         scrollbar.  
4312         (gtk_about_dialog_class_init): Document the fact that the 
4313         license text is not wrapped.  (#165012, Christian Rose)
4314
4315 2005-01-25  Matthias Clasen  <mclasen@redhat.com>
4316
4317         * gtk/gtkbutton.c (gtk_button_set_image): Fix docs.  (#165180,
4318         Jeff Franks)
4319
4320         * gdk/x11/gdkwindow-x11.c (gdk_window_configure_finished): Fix 
4321         docs.  (#165163, Jeff Franks)
4322         
4323         * gtk/gtkimage.c (gtk_image_get_property): Use the correct setter
4324         for a string GValue.  (#165203, Damon Chaplin)
4325
4326 2005-01-24  Matthias Clasen  <mclasen@redhat.com>
4327
4328         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): 
4329         Initialize user_time from DESKTOP_STARTUP_ID.  (#165131,
4330         Elijah Newren)
4331
4332 2005-01-24  Federico Mena Quintero  <federico@ximian.com>
4333
4334         * gtk/gtkfilechooserdefault.c: Removed leftover comments.
4335
4336 2005-01-24  Federico Mena Quintero  <federico@ximian.com>
4337
4338         Merged from gtk-2-6:
4339
4340         Fix #147785 and clean up the loading code:
4341
4342         * gtk/gtkfilechooserdefault.c (LoadState): Make the set of states
4343         be EMPTY, PRELOAD, LOADING, FINISHED.
4344         (gtk_file_chooser_default_init): Start in the LOAD_EMPTY state.
4345         (struct _GtkFileChooserDefault): Added a pending_select_paths
4346         field.
4347         (load_remove_timer): Add the new states.
4348         (load_setup_timer): Likewise.
4349         (load_timeout_cb): Likewise.  Switch to the LOAD_LOADING state.
4350         (browse_files_model_finished_loading_cb): Switch to the
4351         LOAD_FINISHED state.
4352         (enum PendingOp): Removed.
4353         (struct _GtkFileChooserDefault): Removed the pending_op and
4354         pending_select_path fields.
4355         (pending_select_paths_free): New utility function.
4356         (pending_select_paths_add): New utility function.
4357         (gtk_file_chooser_default_finalize): Call
4358         pending_select_paths_free().
4359         (pending_op_queue): Removed.
4360         (pending_op_process): Removed.
4361         (pending_select_paths_process): New function.
4362         (browse_files_model_finished_loading_cb): Call
4363         pending_select_paths_process().
4364         (center_selected_row_foreach_cb): Handle multiple selection by
4365         only centering the first row.
4366         (get_is_file_filtered): Constify.
4367         (gtk_file_chooser_default_select_path): Queue into a list of paths
4368         to select if we are not finished loading.
4369         (show_and_select_paths): New utility function.
4370         (up_folder_handler): Use pending_select_paths_add().
4371         (gtk_file_chooser_default_should_respond): Do not call
4372         pending_op_queue(); free the pending_selected_paths instead.
4373         (gtk_file_chooser_default_initial_focus): Don't queue a pending
4374         operation, and don't select the first row unconditionally --- this
4375         will happen when the folder is done loading.
4376         (shortcuts_row_activated_cb): Free the pending_select_paths.
4377         (pending_select_paths_store_selection): New utility function.
4378         (gtk_file_chooser_default_map): Call
4379         pending_select_paths_store_selection() to save the selection
4380         before reloading the folder.
4381         (select_func): Umm?  Call gtk_tree_selection_select_iter().  Don't
4382         move the cursor here; it will be done when processing the pending paths.
4383
4384         * tests/testfilechooser.c (main): Add a button to the command
4385         window to unmap and remap the file chooser.
4386
4387 2005-01-24  Matthias Clasen  <mclasen@redhat.com>
4388
4389         * docs/tutorial/gtk-tut.sgml:
4390         * docs/tutorial/gtk_tut.sgml:
4391         * docs/reference/gtk/tmpl/gtkliststore.sgml:
4392         * gtk/gtkactiongroup.c:
4393         * gtk/gtksizegroup.c:
4394         * gtk/gtksizegroup.h:
4395         * gtk/gtktogglebutton.c: Replace "effect" by "affect" where
4396         appropriate.  (#165108, Dan Winship)
4397
4398 2005-01-24  Matthias Clasen  <mclasen@redhat.com>
4399
4400         * gtk/gtkwidget.c (gtk_widget_class_init): Document 
4401         GtkWidget::style-set.  (#164222, Alex Graveley)
4402         
4403 2005-01-22  Matthias Clasen  <mclasen@redhat.com>
4404
4405         * gdk/gdkdisplay.h (gdk_display_add_client_message_filter_full): 
4406         Remove the accidentally added prototype for this unimplemented 
4407         function.  (#164893, Jeff Franks)
4408
4409         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): Avoid spurious
4410         drags.  (#164884)
4411
4412 2005-01-23  Tor Lillqvist  <tml@novell.com>
4413
4414         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle Greek tonos
4415         dead accent key. (#164859, reported and fix verified by Daniel
4416         Atallah.)
4417
4418         * gtk/gtkimcontextsimple.c (gtk_compose_seqs): Handle
4419         GDK_Greek_accentdieresis (tonos and dialytika) combining with iota
4420         and upsilon.
4421
4422         * gtk/gtkfilesystemwin32.c (gtk_file_system_win32_volume_get_display_name): 
4423         Don't call GetVolumeInformation() for network drives. They might
4424         be disconnected, and calling GetVolumeInformation() will then
4425         cause long delays. (#164448, reported by Dave Neary.) It seems to
4426         be very hard to reliably find out whether a network drive is
4427         connected or not, so it's easier to just not try getting the
4428         volume name for them. See the bug report for discussion.
4429
4430         Make volume name display formats translatable.
4431
4432         Fix for #163702, from Ivan Wong: 
4433         
4434         * gdk/win32/gdkprivate-win32.h 
4435         * gdk/win32/gdkglobals-win32.c: New flag _ignore_destroy_clipboard.
4436         
4437         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle
4438         WM_DESTROYCLIPBOARD. Unless _ignore_destroy_clipboard, generate a
4439         GDK_SELECTION_CLEAR event.
4440
4441         * gdk/win32/gdkselection-win32.c
4442         (gdk_selection_owner_set_for_display): Set _ignore_destroy_clipboard
4443         when emptying the clipboard ourselves.
4444
4445         (gdk_selection_send_notify_for_display): Remove the artifical
4446         GDK_SELECTION_CLEAR event generation.
4447
4448 2005-01-21  Matthias Clasen  <mclasen@redhat.com>
4449
4450         * gtk/gtkwidget.c (gtk_widget_get_accessible): More details
4451         provided by Bill Haneman.
4452
4453 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
4454
4455         * gtk/gtkwidget.c (gtk_widget_get_accessible): Add docs.  (#164725,
4456         George Kraft IV)
4457
4458         * gtk/gtkdialog.c (gtk_dialog_map): Don't loop forever
4459         here, even if the only focusable widgets are labels.
4460
4461 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
4462
4463         Support tinting in GtkCellRendererPixbuf (#162903, Jorn Baayen):
4464         
4465         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_class_init) 
4466         Add a follow-state property which when TRUE causes the pixbuf
4467         to be tinted according to state.
4468
4469         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): 
4470         Use follow-state and colorize the pixbuf when appropriate.      
4471         
4472 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
4473
4474         Support wrapping in GtkCellRendererText  (#163608):
4475         
4476         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
4477         Add wrap-mode and wrap-width properties which cause a 
4478         text cell to break to a specified width when set.
4479
4480         * gtk/gtkcellrenderertext.c (get_layout): Use wrap-mode
4481         and wrap-width when they are set.
4482
4483 2005-01-20  Matthias Clasen  <mclasen@redhat.com>
4484
4485         * gtk/gtkmodules.c (load_module): Don't reverse the order
4486         of modules when putting them in gtk_modules.  (#162676, Dennis
4487         Cranston, patch by Remus Draica)
4488
4489         * gtk/gtktreeview.c (gtk_tree_view_search_move): Don't crash 
4490         if the tree is empty.  (#164669, Priit Laes)
4491
4492 Wed Jan 19 18:57:02 2005  Manish Singh  <yosh@gimp.org>
4493
4494         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Call
4495         GDK_DISPLAY_XDISPLAY with a display, not a window. Clean up the
4496         function a bit too.
4497
4498 Wed Jan 19 17:17:31 2005  Manish Singh  <yosh@gimp.org>
4499
4500         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): Squash
4501         strict aliasing warning in _NET_VIRTUAL_ROOTS code.
4502
4503 2005-01-19  Tor Lillqvist  <tml@novell.com>
4504
4505         * gdk/win32/gdkkeys-win32.c (update_keymap,
4506         gdk_keymap_translate_keyboard_state): Handle keyboards with
4507         ShiftLock (and not CapsLock) correctly. (#161814)
4508
4509 2005-01-19  Matthias Clasen  <mclasen@redhat.com>
4510
4511         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_should_respond):
4512         In save mode, don't return paths containing nonexisting 
4513         directories.  (#162443, Jean Marie Favreau)
4514
4515         * gtk/gtkobject.c (gtk_object_add_arg_type): Use GLib limit 
4516         macros to avoid sparse warnings. Pointed out by Kjartan Maraas.
4517
4518         * gdk/x11/gdkdisplay-x11.c: Precache the _NET_VIRTUAL_ROOTS
4519         atom.
4520
4521         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): 
4522         Support _NET_VIRTUAL_ROOTS.  (#163910, Carsten Haitzler)
4523         
4524         * gdk/gdk.symbols: 
4525         * gdk/x11/gdkx.h: 
4526         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_get_user_time): 
4527         Add a function to obtain the last user interaction 
4528         time.  (#163119, Elijah Newren)
4529
4530 Tue Jan 18 13:56:09 2005  Manish Singh  <yosh@gimp.org>
4531
4532         * gtk/gtkfilechooserdefault.c (pending_op_queue): Actually assign
4533         PENDING_OP_NONE.
4534
4535 Tue Jan 18 13:46:46 2005  Manish Singh  <yosh@gimp.org>
4536
4537         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids):
4538         disambiguate nested if/else.
4539
4540 2005-01-18  Federico Mena Quintero  <federico@ximian.com>
4541
4542         Merged from gtk-2-6:
4543
4544         * gtk/gtkfilechooserdefault.c (pending_op_queue): Don't queue an
4545         operation to select the first file if we are in SAVE or
4546         CREATE_FOLDER modes.  Executing that operation would overwrite the
4547         contents of the save-name entry.
4548
4549 2005-01-18  Matthias Clasen  <mclasen@redhat.com>
4550
4551         * gdk/gdkdisplay.h: 
4552         * gdk/x11/gdkwindow-x11.c (gdk_display_warp_pointer): 
4553         * gdk/win32/gdkwindow-win32.c (gdk_display_warp_pointer): Add
4554         pointer warping to GDK.  (#160437)
4555
4556         * gtk/gtkcolorsel.c (key_press): Use gdk_display_warp_pointer.
4557
4558 2005-01-18  Matthias Clasen  <mclasen@redhat.com>
4559
4560         * gtk/gtkstyle.c (gtk_default_draw_check) 
4561         (gtk_default_draw_option, gtk_default_draw_handle): Add some
4562         more NULL checks, patch by Michael Natterer.
4563
4564 Tue Jan 18 10:55:47 2005  Søren Sandmann  <sandmann@redhat.com>
4565
4566         * gtk/gtkstyle.c (gtk_default_draw_handle): Check for NULL detail
4567         and NULL widget.
4568
4569         * gtk/gtkstyle.c (gtk_default_draw_box): Check for NULL detail and
4570         NULL widget.  (#164477, Michael Natterer)
4571
4572 2005-01-18  Matthias Clasen  <mclasen@redhat.com>
4573
4574         Avoid X errors when running against servers which
4575         implement XRender < 0.4.  (#164427, Albert Chin)
4576         
4577         * gdk/x11/gdkprivate-x11.h:
4578         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render_with_trapezoids): 
4579         New function to check for trapezoid support in XRender.
4580         (gdk_x11_draw_trapezoids, _gdk_x11_drawable_draw_xtrapezoids): 
4581         Use it here.
4582         
4583         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): Add a 
4584         separate have_render_with_trapezoids field.
4585
4586         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize it.
4587
4588 2005-01-17  Matthias Clasen  <mclasen@redhat.com>
4589
4590         * gtk/gtkiconview.c: Remove debug output. (#164376, Jens Finke)
4591
4592 Mon Jan 17 16:44:36 2005  Jonathan Blandford  <jrb@redhat.com>
4593
4594         * docs/Makefile.am (EXTRA_DIST): add tree-column-sizing.png to
4595         dist.
4596
4597 2005-01-17  Matthias Clasen  <mclasen@redhat.com>
4598
4599         * gtk/gtkfilechooserdefault.c (shortcuts_add_bookmarks): Save
4600         and restore the selected row in the bookmark list and the
4601         save folder combo.  (#164290)
4602
4603 2005-01-16  Matthias Clasen  <mclasen@redhat.com>
4604
4605         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new_with_backend):
4606         Fix argument order in docs.  
4607
4608 2005-01-15  Matthias Clasen  <mclasen@redhat.com>
4609
4610         * gtk/gtktextview.c (gtk_text_view_check_keymap_direction): 
4611         * gtk/gtkentry.c (gtk_entry_create_layout): Prefer LTR over RTL 
4612         if the keymap is neutral.  (#164125, Phil Blundell)
4613
4614 2005-01-14  Matthias Clasen  <mclasen@redhat.com>
4615
4616         * gtk/gtktreeview.c (gtk_tree_view_set_search_column): Allow to
4617         reset the property to its default value -1. 
4618         (gtk_tree_view_get_search_column): Return the default value in
4619         the g_return_val_if_fail() check.  (#163864, Richard Hult)
4620
4621         * gtk/gtkcellrendererprogress.c (gtk_cell_renderer_progress_set_value): 
4622         Add a translator hint.  (#163889)
4623
4624         * configure.in: Check for _NL_TIME_FIRST_WEEKDAY too, since it
4625         is an enum value, not a define. Pointed out by Tommi Komulainen.
4626         * gtk/gtkcalendar.c (gtk_calendar_init): Adapt.
4627
4628 2005-01-13  Matthias Clasen  <mclasen@redhat.com>
4629
4630         * configure.in: Check for nl_langinfo()
4631         * gtk/gtkcalendar.c (gtk_calendar_init): Use nl_langinfo() when it's
4632         available to determine first day of week   (#163842, Vincent Untz)
4633
4634         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget): Add hints about 
4635         the lifecycle of widgets.  (#159503, Christian Persch)
4636
4637         * demos/gtk-demo/main.c (create_text): Use monospace for the 
4638         source code view.  (#163526, Theerud Lawtrakul)
4639
4640         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Use R as mnemonic
4641         for the Credits button to avoid duplicate.  (#163465, Tim-Philipp 
4642         Müller)
4643         
4644         * configure.in: Add an OS_LINUX conditional.
4645
4646         * gdk/Makefile.am (TESTS):
4647         * gdk-pixbuf/Makefile.am (TESTS):
4648         * gtk/Makefile.am (TESTS): Only run abicheck on Linux.  (#163917,
4649         Roger Leigh)
4650
4651 2005-01-13  Matthias Clasen <mclasen@redhat.com>
4652
4653         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
4654         (gtk_tree_view_set_headers_clickable): Make the headers-visible
4655         property readwrite instead of just writable, and remove the
4656         g_return_if_fail check that there is a model when setting this
4657         property. Also improve the blurb.  (#163851, Richard Hult)
4658
4659 2005-01-12  Owen Taylor <otaylor@redhat.com>
4660
4661         * configure.in: Remove GLIB_DIVERT_BEFORE_HELP() on
4662         initialization of gdktarget, that was causing it to be
4663         evaluated before host was set. Simplify --with-gdktarget help
4664         message.
4665
4666         * gtk/Makefile.am: Use grep | head -n 1 instead of grep -m 1 
4667         which doesn't work with slightly older versions of GNU grep 
4668         in install-libtool-import-lib rule.
4669         
4670 2005-01-12  Tor Lillqvist  <tlillqvist@novell.com>
4671
4672         Fix for #162790, by Iwan Wong:
4673         
4674         * gdk/win32/gdkdrawable-win32.c: Implement dashed lines
4675         correctly. Simplify the interface to render_line_horizontal() and
4676         render_line_vertical(). Need to draw lines "manually" also on
4677         NT-based Windowses if we have a dash offset or are drawing
4678         double-dashed lines.
4679
4680         * gdk/win32/gdkprivate-win32.h: Keep also the dash offset,
4681         double-dash flag, and a brush for the background colour (used by
4682         the odd dashes in the double-dash line style) in the GdkGCWin32
4683         struct.
4684
4685         * gdk/win32/gdkgc-win32.c: Set up above new fields.
4686
4687 2005-01-10  Federico Mena Quintero  <federico@ximian.com>
4688
4689         Fix #162617.
4690
4691         * gtk/gtkfilesystemunix.c (STAT_NEEDED_MASK): Take out
4692         GTK_FILE_INFO_IS_HIDDEN; we don't need to stat() to know this.
4693         (gtk_file_system_unix_get_folder): Make error reporting more
4694         accurate.  Don't bail out if we can't read the directory.
4695         (fill_in_stats): Don't return an error; just assume we don't have
4696         stat info for this folder's files.
4697         (fill_in_names): Don't create the hash table for the names if we
4698         can't open the directory.
4699         (gtk_file_folder_unix_list_children): Don't emit the
4700         "finished-loading" signal --- we don't do asynchronous loads, so
4701         we are always finished loading.
4702         (gtk_file_folder_unix_get_info): Use helper functions; handle the
4703         case where we can't stat '/'.
4704         (get_icon_type_from_path): Don't call fill_in_stats() here; only
4705         use the info we have.
4706         (fill_in_mime_type): Don't return an error.  Don't do anything if
4707         we don't have the stat info.
4708
4709 2005-01-10  Owen Taylor  <otaylor@redhat.com>
4710
4711         * Makefile.am (EXTRA_DIST): Adding missing ChangeLog.pre*
4712         to EXTRA_DIST.
4713
4714 2005-01-10  Matthias Clasen  <mclasen@redhat.com>
4715
4716         * gtk/gtkaccelgroup.c (gtk_accel_group_class_init): Document
4717         signals.  (#163319, Murray Cumming)
4718
4719 2005-01-09  Tor Lillqvist  <tlillqvist@novell.com>
4720
4721         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Set current
4722         cursor also when changing the cursor of a window that is the first
4723         ancestor of the window containing the pointer that has a cursor
4724         defined. (#163035, Ivan Wong)
4725
4726 2005-01-09  Anders Carlsson <andersca@gnome.org>
4727
4728         * gtk/gtkcellrenderertext.c: (get_size):
4729         * gtk/gtklabel.c: (gtk_label_size_request):
4730         * gtk/gtkprogressbar.c: (gtk_progress_bar_size_request):
4731         Don't pass NULL to pango_context_get_metrics. Use 
4732         pango_context_get_language instead, which is way faster.
4733         
4734 2005-01-08  Matthias Clasen  <mclasen@redhat.com>
4735
4736         * configure.in: Bump version
4737
4738         * === Released 2.6.1 ===
4739         
4740         * gdk-pixbuf-2.0.pc.in: Require gmodule-no-export-2.0
4741
4742 2005-01-07  Tor Lillqvist  <tml@iki.fi>
4743
4744         * gdk/win32/gdkselection-win32.c (_gdk_selection_property_store):
4745         Fix braino. (#163232, Arnaud Charlet)
4746
4747 2005-01-06  Matthias Clasen  <mclasen@redhat.com>
4748
4749         * gtk/gtkiconview.c: Make markup_column work, and fix some
4750         layout issues when either icon or text is missing.  (#163065)
4751
4752 2005-01-06  Federico Mena Quintero  <federico@ximian.com>
4753
4754         * gtk/gtkfilechooserdefault.c (file_list_build_popup_menu): Add an
4755         "Open _Location" item.  Fixes #148839.
4756
4757 2005-01-06  Matthias Clasen  <mclasen@redhat.com>
4758
4759         * README.in: Fix a typo.  (#163128, kentaro fukuchi)
4760
4761 2005-01-06  James M. Cape  <jcape@ignore-your.tv>
4762
4763         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new)
4764         (gtk_file_chooser_button_new_with_backend): Use default title if
4765         NULL is passed.
4766
4767         * docs/reference/gtk/tmpl/gtkfilechooserbutton.sgml: Make examples
4768         match API.
4769
4770 2005-01-05  Federico Mena Quintero  <federico@ximian.com>
4771
4772         Fix #161409:
4773
4774         * gtk/gtkfilechooserdefault.c (shortcuts_row_activated_cb): Queue
4775         a pending operation to select the first row.
4776
4777 2005-01-05  Federico Mena Quintero  <federico@ximian.com>
4778
4779         * gtk/gtkpathbar.c (_gtk_path_bar_set_path): Don't call
4780         button_data_free() explicitly; the button is weak-reffed and the
4781         callback will free the button data.  Fixes #163010.
4782         (_gtk_path_bar_set_path): Don't ref/sink the button.  And for the
4783         failure case, call gtk_widget_destroy() on it.
4784
4785         * gtk/gtkfilechooserdefault.c (check_is_folder): Use
4786         gtk_file_system_get_folder() again (see the ChangeLog entry from
4787         2004-08-25).  We can't first get the parent folder and then
4788         request the info for the path in question, as the parent folder
4789         may not be readable.  See bug #162617.
4790         (gtk_file_chooser_default_set_current_folder): Assert that the
4791         passed-in path is not null.
4792         (shortcuts_find_current_folder): Likewise.
4793         (shortcuts_add_current_folder): Likewise.
4794         (set_list_model): Likewise.
4795         (gtk_file_chooser_default_map): Only reload the current folder if
4796         it exists.
4797         (bookmarks_check_add_sensitivity): Check for the current folder
4798         being NULL.
4799         (browse_files_select_first_row): Don't set the cursor if there is
4800         no model loaded.
4801
4802 2005-01-05  Matthias Clasen  <mclasen@redhat.com>
4803
4804         * gtk/gtkfilechooserdefault.c: Don't construct errors from 
4805         the GTK_FILE_SYSTEM_ERROR domain. Partial fix for #162911.
4806         (get_file_info, check_is_folder): Translate errors from
4807         the filesystem into the GTK_FILE_CHOOSER_ERROR domain. Rest
4808         of the fix for #162911, noticed by Murray Cumming.
4809
4810 Wed Jan  5 11:42:49 2005  Søren Sandmann  <sandmann@redhat.com>
4811
4812         * gtk/gtkviewport.c (gtk_viewport_realize):
4813         * gtk/gtktextview.c ((text_window_realize): Set the background of
4814         the windows to None instead of adding EXPOSURE_MASK, as suggested
4815         by Owen in #162112.
4816
4817         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Update 
4818         the user time when receiving a WM_DELETE message.  (#162980, 
4819         Elijah Newren)
4820         
4821 Tue Jan  4 16:52:14 2005  Jonathan Blandford  <jrb@redhat.com>
4822
4823         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event):
4824         only reorder on button 1, part of #141937
4825
4826 Tue Jan  4 11:36:43 2005  Søren Sandmann  <sandmann@redhat.com>
4827
4828         Bug 162112.
4829         
4830         * gtk/gtktextview.c (text_window_realize): Add GDK_EXPOSURE_MASK
4831         to win->window's event_mask
4832
4833         * gtk/gtkviewport.c (gtk_viewport_realize): Add GDK_EXPOSURE_MASK
4834         to viewport->view_window.
4835
4836 2005-01-04  Matthias Clasen  <mclasen@redhat.com>
4837
4838         * demos/testpixbuf.c (main): Remove the size_prepared callback,
4839         to test incremental display.
4840         (new_testrgb_window): Return the drawing area, not the window,
4841         since we want to queue draws on the drawing area.
4842
4843 2005-01-03  Matthias Clasen  <mclasen@redhat.com>
4844
4845         * examples/*: Re-extract.
4846
4847         * docs/tutorial/gtk-tut.sgml: Small corrections.
4848         
4849         * docs/tutorial/gtk-tut.sgml: Some updates for the drawing
4850         section.  (#161414, Robert Ancell)
4851
4852         * docs/tutorial/gtk-tut.sgml: Make it build.
4853
4854         * gtk/gtkdialog.c (gtk_dialog_run): Some clarification
4855         regarding modality.  (#112903, Dave Bordoley)
4856
4857         * gtk/gtkfixed.c (gtk_fixed_set_has_window): 
4858         Add a little motivation.  (#145556, Tommi Komulainen)
4859
4860         * docs/tutorial/gtk-tut.sgml: Clarify section on 
4861         g_signal_connect_swapped.   (#120543, David Bourguignon)
4862
4863         Make gtk_icon_theme_load_icon() work independent of
4864         icon factory initialization.  (#162791, Tristan Van Berkom)
4865         
4866         * gtk/gtkiconfactory.[hc]: Rename ensure_default_icons to
4867         _gtk_icon_factory_ensure_default_icons, and make it non-static.
4868
4869         * gtk/gtkicontheme.c (find_builtin_icon): ..and call it here.
4870
4871 2005-01-02  Matthias Clasen  <mclasen@redhat.com>
4872
4873         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_remove_shortcut_folder): 
4874         Don't add a shortcut here.  (#162752, Tor Lillqvist)
4875
4876 2005-01-02  Tor Lillqvist  <tml@iki.fi>
4877
4878         * gtk/Makefile.am (libgtk_target_ldflags): Add -lole32, needed for
4879         CoTaskMemFree in get_special_folder() below.
4880
4881         * gtk/gtkfilesystem.h: Implement case-insensitive path compare on
4882         Win32 using _gtk_file_system_win32_path_compare().
4883
4884         * gtk/gtk.symbols: Add _gtk_file_system_win32_path_compare.
4885
4886         * gtk/gtkfilechooserbutton.c (model_add_special)
4887         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Use
4888         _gtk_file_system_win32_get_desktop() to get correct Desktop folder
4889         on Win32. (#144003)
4890
4891         * gtk/gtkfilesystemwin32.c: Remove unnecessary includes. Do
4892         consider all drives "mounted", including floppies. Trying to
4893         inspect the contents of a nonexistent floppy will cause errors
4894         later that are handled normally, no need to avoid them
4895         completely. Keep the drive type in the GtkFileSystemVolume.
4896         Support UNC paths. (#161797, #137874) Fix error message
4897         capitalizations as in gtkfilesystemunix.c.
4898
4899         (gtk_file_system_win32_init): Start one timeout per
4900         GtkFileSystemWin32.
4901
4902         (gtk_file_system_win32_finalize): Remove the timeout.
4903
4904         (get_special_folder): Copied from GLib.
4905
4906         (_gtk_file_system_win32_get_desktop): New function, uses
4907         get_special_folder().
4908
4909         (gtk_file_system_win32_list_volumes): Don't start a timeout at
4910         each call to this function. Don't assume A: and B: are floppies.
4911
4912         (gtk_file_system_win32_get_volume_for_path): Don't assume all
4913         volumes are drive roots, i.e. support share roots of UNC paths
4914         (\\server\share).
4915
4916         (gtk_file_system_win32_get_folder): Don't assume errno is set
4917         after g_file_test() returns FALSE. It isn't on Win32 (and even on
4918         Unix I don't think one should assume anything about errno after
4919         g_file_test()).
4920
4921         (gtk_file_system_win32_volume_get_is_mounted): Always return TRUE.
4922
4923         (gtk_file_system_win32_volume_get_display_name): Don't call
4924         GetVolumeInformation() on drives A: or B: if they are removable,
4925         as they might then be floppies, causing an unnecessary
4926         delay. (#157820)
4927
4928         (gtk_file_system_win32_volume_render_icon): Use network icon for
4929         unrecognized drive types.
4930
4931         (canonicalize_filename, gtk_file_system_win32_parse): Don't get
4932         confused by UNC paths.
4933
4934         (bookmarks_serialize): Use _gtk_file_system_win32_path_compare()
4935         for case-insensitive UTF-8 path comparison.
4936
4937         (extract_icon): Use SHGetFileInfo() which is faster than
4938         ExtractAssociatedIcon(). Icon extraction is still slow, though,
4939         needs work.
4940
4941         (win32_pseudo_mime_lookup): Don't use the same icon for all
4942         shortcuts or executables. Cache only other file type icons.
4943
4944         (gtk_file_system_win32_render_icon): Use network stock icon for
4945         remote drives and UNC server share roots. Compare home directory
4946         case-insensitively. Do lookup icons also for executable files,
4947         after all, it's these files that can have individual icons in the
4948         first place. Yes, it can be slow. Needs work.
4949
4950         (filename_is_drive_root): Require also the slash after the colon.
4951
4952         (filename_is_server_share): New function.
4953
4954         (_gtk_file_system_win32_path_compare): New function, does
4955         case-folded UTF-8 comparison.
4956
4957         * gtk/gtkfilesystemwin32.h: Declare
4958         _gtk_file_system_win32_path_compare().
4959
4960 2005-01-01  Matthias Clasen  <mclasen@redhat.com>
4961
4962         * gtk/gtkbutton.c (gtk_button_set_image): Allow unsetting the
4963         custom image by passing NULL.
4964         (gtk_button_init): Initialize image_is_stock to TRUE, fixing
4965         a problem with changing stock labels.  (#162273, Marcin 
4966         Krzyzanowski)
4967
4968 2005-01-01  Tor Lillqvist  <tml@iki.fi>
4969
4970         * gtk/gtkmodules.c (get_module_path)
4971         * gtk/gtkrc.c (gtk_rc_make_default_dir, gtk_rc_get_im_module_file,
4972         gtk_rc_get_theme_dir, gtk_rc_add_initial_default_files): With
4973         g_getenv() now returning UTF-8 on Win32, no need to call
4974         g_locale_to_utf8().
4975
4976 2004-12-31  Matthias Clasen  <mclasen@redhat.com>
4977
4978         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup_keyval) 
4979         (_gtk_key_hash_lookup): Don't sort a list of values as if
4980         it was a list of entries. This fixes crashes during mnemonic
4981         activation in the presence of multiple keymaps. (#162488, 
4982         Christian Persch)
4983
4984 2004-12-30  Matthias Clasen  <mclasen@redhat.com>
4985
4986         * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): Fix
4987         state propagation when making an insensitive combo box sensitive
4988         again.  (#162524, Carlos Garnacho Parro)
4989
4990         * gtk/gtkfilechooserdefault.c: Use secondary text for error 
4991         dialogs.
4992
4993         * gtk/gtkfilesystemunix.c: Clean up some cases of errno handling
4994         (#162496, noted by Tor Lillqvist), and use g_filename_display_name()
4995         for error messages. Also mark some error messages for translation,
4996         fix capitalization of error messages.
4997
4998         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property): 
4999         Use g_value_get_boolean() for ellipsize_set.  (#162447, 
5000         Brian Tarricone)
5001
5002 2004-12-30  Tor Lillqvist  <tml@iki.fi>
5003
5004         * gtk/gtkicontheme.c (gtk_icon_theme_init): Use /usr/share/pixmaps
5005         only on Unix.
5006
5007 2004-12-28  Matthias Clasen  <mclasen@redhat.com>
5008
5009         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Inherit
5010         submenu direction from the parent menu.
5011
5012         * gtk/gtkmenushell.c (gtk_menu_shell_select_submenu_first): 
5013         Return a boolean indicating whether an item in the submenu
5014         was selected.
5015         (gtk_real_menu_shell_move_current): When going in child 
5016         direction, don't get stuck at completely insensitive 
5017         submenus.  (#162055, Billy Biggs)       
5018
5019 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
5020
5021         Make the clipboard image API more robust (#162357, 
5022         Torsten Schoenfeld):
5023         
5024         * gtk/gtkclipboard.c (clipboard_image_received_func): Don't
5025         ref the pixbuf if it is NULL.
5026
5027         * gtk/gtkselection.c (gtk_selection_data_set_pixbuf): 
5028         NULL-terminate the varargs in the call to 
5029         gdk_pixbuf_save_to_buffer(). 
5030         (gtk_selection_data_get_pixbuf): Only use a pixbuf loader 
5031         if there is data to load.
5032
5033 2004-12-27  Matthias Clasen  <mclasen@redhat.com>
5034
5035         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): 
5036         Set x_root and y_root in button and motion events from 
5037         extended input devices.  (#148715, Robert Ögren)
5038
5039         * gtk/gtktreeview.c (gtk_tree_view_class_init): Fix a 
5040         typo.  (#162339, Alessio Dessi)
5041
5042         * gtk/gtkadjustment.c (gtk_adjustment_class_init): Document
5043         properties as new since 2.4.  (#156101, Billy Biggs)
5044
5045         * configure.in: Add a warning about the linux-fb 
5046         target.  (#155488, Zeeshan Ali)
5047
5048         * gtk/gtkmain.c (gtk_init_with_args): Typo fix.  (#162278,
5049         Torsten Schoenfeld)
5050
5051 2004-12-26  Matthias Clasen  <mclasen@redhat.com>
5052
5053         * gtk/gtkfilechooser.c (gtk_file_chooser_set_action): 
5054         Typo fix.  (#162219, Masao Mutoh)
5055         (gtk_file_chooser_set_preview_widget_active): 
5056         Another typo.  (#162218, Masao Mutoh)
5057
5058 2004-12-23  Matthias Clasen  <mclasen@redhat.com>
5059
5060         * gtk/gtkliststore.c (gtk_list_store_iter_children): 
5061         Return TRUE if there are children.  (#162134, Iñigo Serna,
5062         patch by John Finlay)
5063
5064         * gtk/gtkcombobox.c (gtk_combo_box_button_state_changed): 
5065         Transfer state from the button to the cell view to get
5066         prelighting right.  (#156327, Ricardo Veguilla)
5067
5068 Wed Dec 22 14:22:19 2004  Søren Sandmann  <sandmann@redhat.com>
5069
5070         * tests/testtoolbar.c (timeout_cb): Add sensitivity-changing
5071         timeout. Written by Christian Persch.
5072
5073 Wed Dec 22 14:14:02 2004  Søren Sandmann  <sandmann@redhat.com>
5074
5075         Bug #161561
5076         
5077         * gdk/x11/gdkwindow-x11.c (tmp_{re,un}set_bg): Only set/reset the
5078         background for windows that get expose events. 
5079
5080         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Remove
5081         hack to repaint !expose windows.
5082
5083 Wed Dec 22 11:35:41 2004  Søren Sandmann  <sandmann@redhat.com>
5084
5085         Bug #147497, make menu items activate immediately when you release
5086         the button.
5087         
5088         * gtk/gtkmenu.c (gtk_menu_enter_notify, menu_motion_notify): Make
5089         items activate immediately.
5090
5091         * gtk/gtkmenu.c (definitely_within_item): New function
5092         * gtk/gtkmenu.c (check_threshold): New function
5093
5094 2004-12-22  Matthias Clasen  <mclasen@redhat.com>
5095
5096         * gtk/gtklabel.c (gtk_label_setup_mnemonic): Don't forget to
5097         null the mnemonic_menu when unsetting a mnemonic, reported
5098         by Owen Taylor.
5099
5100 2004-12-21  Matthias Clasen  <mclasen@redhat.com>
5101
5102         * gtk/gtkliststore.c (generate_order): Generate the order the
5103         way it is supposed to be, order[new_pos] == old_pos.
5104         (gtk_list_store_reorder): Invert the order before using it.
5105
5106 2004-12-22  Matthias Clasen  <mclasen@redhat.com>
5107
5108         Fix sorting of list stores.  (#161886, Marcin Krzyzanowski)
5109
5110         * gtk/gtkliststore.c (generate_order): Generate the order the
5111         way it is supposed to be, order[new_pos] == old_pos.
5112         (gtk_list_store_reorder): Invert the order before using it.
5113
5114         * gtk/gtkiconview.c (gtk_icon_view_rows_reordered): Adapt to the
5115         list store fix.
5116
5117 Wed Dec 22 01:24:01 2004  Jonathan Blandford  <jrb@redhat.com>
5118
5119         * gtk/queryimmodules.c (main): print out the version and binary
5120         name in the header comment.  Problem reported by Seth Nickell.
5121
5122 2004-12-20  Matthias Clasen  <mclasen@redhat.com>
5123
5124         * gtk/gtkliststore.c (gtk_list_store_sort_iter_changed): Pass a
5125         root path to gtk_tree_model_rows_reordered().  (#161720,
5126         Marcin Krzyzanowski)
5127
5128         * gtk/gtkactiongroup.c (gtk_action_group_translate_string): Don't 
5129         translate NULL messages.  (#161789, Morten Welinder)
5130
5131         * gtk/gtkmessagedialog.c (setup_primary_label_font): Don't show
5132         the secondary label on show_all().  (#161707, Christian Persch)
5133
5134 2004-12-19  Tor Lillqvist  <tml@iki.fi>
5135
5136         * gdk/win32/gdkdnd-win32.c (resolve_link, gdk_dropfiles_filter):
5137         Use wide character API when available. Use UTF-8 for filenames.
5138
5139         * gdk/win32/gdkselection-win32.c (_gdk_dropfiles_store): Include
5140         the string's trailing zero byte in the property's length, just for
5141         safety.
5142
5143 2004-12-18  Matthias Clasen  <mclasen@redhat.com>
5144
5145         * gtk/gtkfilechooserentry.c (check_completion_callback) 
5146         (load_directory_callback): Add missing GDK_THREADS_ENTER/LEAVE.
5147
5148         * gtk/gtkfilechooserdefault.c (edited_idle_cb) 
5149         (shortcuts_drag_outside_idle_cb): Add missing 
5150         GDK_THREADS_ENTER/LEAVE.  (#161604)
5151         
5152         * gtk/gtkfilechooserdefault.c (selection_check_foreach_cb): 
5153         (list_select_func): Don't call gtk_file_info_get_is_folder()
5154         on NULL. 
5155
5156         * gtk/gtkaboutdialog.c (gtk_about_dialog_get_logo_icon_name): 
5157         (gtk_about_dialog_init): Add missing initializations.  (#161646,
5158         Torsten Schoenfeld)
5159