]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-4
b26f4e42b7c32644d1fa1af291682af4eef6becb
[~andy/gtk] / ChangeLog.pre-2-4
1 Tue Oct 28 09:21:29 2003  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkmain.c (gtk_check_version): Move docs inline,
4         rewrite docs, mention memory management for the return
5         value. (Partly addresses #125549, Michael Natterer)
6
7 2003-10-28  Padraig O'Briain  <padraig.obriain@sun.com>
8
9         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_remove_filter):
10         Changew index to filter_index to fix compilation error.
11
12         * gtk/gtkfilesystem.h: Correct definition of gtk_file_path_get_string.
13
14 Mon Oct 27 15:47:58 2003  Manish Singh  <yosh@gimp.org>
15
16         * gdk/x11/gdkscreen-x11.c: #include <X11/extensions/Xrandr.h> if
17         we have RandR support, for XRRUpdateConfiguration declaration.
18
19         * gtk/gtkfilefilter.c: #include "gtkprivate.h" for _gtk_fnmatch
20         declaration.
21
22         * gtk/gtkuimanager.c (gtk_ui_manager_add_ui_from_file): Make
23         length a gsize variable, since that's what g_file_get_contents()
24         expects.
25
26 Mon Oct 27 12:18:49 2003  Owen Taylor  <otaylor@redhat.com>
27
28         * NEWS: Fix attribution for above/below EWMH work.
29
30 Sat Oct 25 23:30:13 2003  Matthias Clasen  <maclas@gmx.de>
31
32         * gtk/gtkactiongroup.c (gtk_action_group_class_init): Add "name" 
33         as a construct-only property.  (#125475, Murray Cumming)
34
35 Thu Oct 23 21:55:10 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
36
37         Fix bug 116297 and 125472
38         
39         * gtk/gtktoolbar.c (gtk_toolbar_highlight_drop_location): Make
40         this function take an index and a GtkToolItem.
41
42         * tests/testtoolbar.c (main): Make "Show Arrow" default to
43         true. Make one of the separators !draw and expand.
44         Update for new highlight_drop_location() API.
45
46         * gtk/gtktoolitem.[ch]: Remove "pack_end" property
47
48         * gtk/gtktoolbar.h: Formatting fixes.
49
50         * gtk/gtktoolbar.c: Remove "pack_end" child property. Allow
51         separator tool items to expand.
52         (logical_to_physical, physical_to_logical): Fix off-by-one errors
53         (Fix #125472, Marco Pesenti Gritti)
54
55         * gtk/gtkseparatortoolitem.[ch]: Add new "draw" property.
56         (gtk_separator_tool_item_expose) only draw if "draw" is TRUE. Also
57         return FALSE, not TRUE.
58         (gtk_separator_too_item_{set|get}_property,
59         (gtk_separator_tool_item_{set|get}_draw): new functions
60
61 Fri Oct 24 16:54:04 2003  Owen Taylor  <otaylor@redhat.com>
62
63         * === Released 2.3.0 ===
64
65         * configure.in: Remove a stray comma.
66
67         * README.in: Fix a few notes about Xft 1 and pango-1.0.
68
69         * NEWS: Finish updates for 2.3.0.
70
71         * po/Makefile.in.in: Update to latest GLib version.
72
73 Fri Oct 24 20:31:35 2003  Kristian Rietveld  <kris@gtk.org>
74
75         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
76         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch],
77         gtk/gtktreemodelfilter.[ch]: Fix licensing (I managed to put it
78         under GPL licensing instead of LGPL...). (Fixes #125381, Soeren
79         Sandmann).
80
81 Fri Oct 24 20:22:40 2003  Kristian Rietveld  <kris@gtk.org>
82
83         * gtk/gtktreemodelfilter.h: add padding to the class structure.
84
85 2003-10-23  Federico Mena Quintero  <federico@ximian.com>
86
87         * gtk/gtkfilechooser.c (gtk_file_chooser_get_preview_uri): Fixed docs.
88         (gtk_file_chooser_remove_filter): Likewise.
89         (gtk_file_chooser_select_all): Added docs.
90         (gtk_file_chooser_unselect_all): Likewise.
91
92         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_new): Added docs.
93
94         * gtk/gtkfilechooserwidget.c (gtk_file_chooser_widget_new): Added docs.
95
96 Thu Oct 23 23:22:15 2003  Matthias Clasen  <maclas@gmx.de>
97
98         * gtk/gtkfilefilter.c: 
99         * gtk/gtkfilechooser.c: Add "Since: 2.4" to all API doc comments.
100
101 Thu Oct 23 22:33:47 2003  Matthias Clasen  <maclas@gmx.de>
102
103         * gtk/gtkfilefilter.c (gtk_file_filter_new): Fix doc markup.
104
105 Thu Oct 23 21:49:05 2003  Matthias Clasen  <maclas@gmx.de>
106
107         * NEWS: Remove a few duplicates, group the menu changes.
108
109 Thu Oct 23 21:12:50 2003  Kristian Rietveld  <kris@gtk.org>
110
111         * NEWS: Updates for 2.3.0; changed header to match the style we used
112         for 2.1.0.
113
114 Thu Oct 23 20:47:44 2003  Matthias Clasen  <maclas@gmx.de>
115
116         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Actually
117         assign the new leader.  (#125168, Mariano Suarez-Alvarez)
118
119 Thu Oct 23 20:21:16 2003  Kristian Rietveld  <kris@gtk.org>
120
121         * gtk/gtkcelllayout.c, gtk/gtkcellview.c gtk/gtkcellviewmenuitem.c,
122         gtk/gtkcombobox.c, gtk/gtkcomboboxentry.c, gtk/gtkentrycompletion.c,
123         gtk/gtktreemodelfilter.c, gtk/gtkcellrenderertoggle.c: Fix includes.
124
125 Thu Oct 23 15:13:56 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
126
127         * NEWS: Partial update for 2.3.0.
128
129 Thu Oct 23 01:09:04 2003  Owen Taylor  <otaylor@redhat.com>
130
131         * gtk/gtkfilechooserdefault.c: Convert GtkOptionMenu to
132         GtkComboBox.
133
134 Wed Oct 22 23:20:04 2003  Owen Taylor  <otaylor@redhat.com>
135
136         * gtk/gtkfilechooser.[ch] gtk/gtkfilefilter.[ch] 
137         gtk/gtkfilechooserwidget.[ch] gtk/gtkfilechooserdialog.[ch]:
138         gtk/gtkfilechooserutils.c gtk/gtkfilechooserprivate.[ch]:
139         Basic framework for the new file selector widget.
140
141         * gtk/gtkfilechooserdefault.[ch] gtk/gtkcellrenderersep.[ch] 
142         gtk/gtkfilechooserentry.[ch] gtk/gtkfilesystemmodel.[ch]:
143         Initial implementation of the GtkFileChooser user interface.
144
145         * gtk/gtkfilesystemunix.[ch]: GtkFileSystem implementation
146         for Unix files.
147
148         * configure.in gtk/Makefile.am gtk/xdgmime: Build code
149         for freedesktop.org MIME system on Unix.
150
151         * tests/testfilechooser.c: Test program for GtkFileChooser
152
153         * tests/prop-editor.c: Add support for properties on interfaces.
154
155 Tue Oct 21 16:12:51 2003  Owen Taylor  <otaylor@redhat.com>
156
157         * demos/gtk-demo/menus.c (do_menus): Fix some unused
158         variables.
159
160         * gtk/gtkmain.c (_gtk_get_lc_ctype): Fix an unused
161         variable warning.
162
163 Thu Oct 23 00:04:50 2003  Matthias Clasen  <maclas@gmx.de>
164
165         * NEWS: Partial update for 2.3.0.
166
167 Tue Oct 21 22:07:12 2003  Kristian Rietveld  <kris@gtk.org>
168
169         * gtk/gtktreeview.c (gtk_tree_view_real_move_cursor): set
170         ctrl_pressed and shift_pressed according to the current event
171         state (if there is one). (Fixes #125063, reported by Sebastien Bacher).
172
173 Mon Oct 20 23:24:27 2003  Kristian Rietveld  <kris@gtk.org>
174
175         * gtk/gtkentry.c (gtk_entry_key_press): remove the completion
176         timeout when the user pressed on Enter/ESC. Fixes the bug where the
177         completion popup popped up after the user pressed on Enter (which is
178         just weird). Reported by the Epiphany people (all of them).
179
180 Mon Oct 20 20:27:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
181
182         Add support for OS X like sliding of toolbar items during drag and
183         drop, (#110919, Dave Bordoley)
184
185         Make dnd highlighting the responsibility of the
186         application. (Fixes #116298, Owen Taylor)
187
188         * gtk/gtktoolbar.h: Add prototypes for new API.
189         
190         * gtk/gtktoolbar.c
191         (physical_to_logical, logical_to_physical): new functions
192         converting between "position including placeholders" and "position
193         excluding placeholders".
194         (gtk_toolbar_class_init): remove drag_leave and drag_motion
195         handlers
196         (struct _ToolbarContent): new struct containing information
197         related to toolbar items.
198         (gtk_toolbar_highlight_drop_location): new public function
199         (gtk_toolbar_unhighlight_drop_location): new public function
200         
201         * tests/testtoolbar.c
202         (toolbar_drag_motion, toolbar_drag_leave): new functions
203         (main): connect to dnd signals.  Make the "New" item expand to
204         make drag and drop more exciting.
205
206 Wed Oct 15 22:39:23 2003  Kristian Rietveld  <kris@gtk.org>
207
208         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): it's
209         _set_active, not _set_active_item.
210
211 Wed Oct 15 22:31:09 2003  Kristian Rietveld  <kris@gtk.org>
212
213         * gtk/gtkcombobox.h: add padding to the class structure.
214         * gtk/gtkcomboboxentry.h: ditto.
215         * gtk/gtkentrycompletion.h: ditto.
216
217 Wed Oct 15 22:04:59 2003  Kristian Rietveld  <kris@gtk.org>
218
219         * gtk/gtkcombobox.c (gtk_combo_box_get_active),
220         (gtk_combo_box_set_active): mention in the docs that -1 is a valid
221         value and what it means.
222
223         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): set the active
224         item to -1 (default),
225         (gtk_combo_box_entry_active_changed): do nothing when the index is
226         < 0.
227
228 Tue Oct 14 16:10:21 2003  Jonathan Blandford  <jrb@redhat.com>
229
230         * gtk/gtkcombobox.c (gtk_combo_box_set_active_iter): New function
231         to set the active row by iter.
232
233         * gtk/gtkcombobox.c (gtk_combo_box_get_active_iter): New function
234         to get the active row by iter.
235
236 2003-10-13  Federico Mena Quintero  <federico@ximian.com>
237
238         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Don't do
239         operations on windows if the tree view is not mapped.
240         (gtk_tree_view_button_press): Compare equal types of pointers, not
241         GtkWidget* vs. GtkTreeView*.
242
243 Mon Oct 13 21:01:43 2003  Kristian Rietveld  <kris@gtk.org>
244
245         * gtk/gtkentrycompletion.c (gtk_entry_completion_popup): remove
246         the reset of first_sel_changed, as after the first popup the treeview
247         will always have a row selected and will thus not focus_to_cursor.
248
249         * gtk/gtkentry.c (keyval_is_cursor_move): new function to determine
250         whether the keyval should move the completion selection cursor (used
251         to avoid ending up with extreme cluttered code), also added
252         all KP_ equivalents of the keys here,
253         (gtk_entry_completion_key_press): Keynav tweaks based on comments
254         from Dave Bordoley and Marco Pesenti Gritti; add the -1 state
255         as possible current selection, implement Home/End keys, modified
256         the down key to stop cycling. Maybe page up/down should be implemented
257         at some later time.
258
259 Mon Oct 13 20:58:07 2003  Matthias Clasen  <maclas@gmx.de>
260
261         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon): Make it work 
262         as documented when pixmap or mask is NULL.  (#124081) 
263
264 Mon Oct 13 20:21:38 2003  Kristian Rietveld  <kris@gtk.org>
265
266         * gtk/gtkentry.c (gtk_entry_set_text): I overlooked a return when
267         I was adding the signal block/unblock code. Oops. (Noticed by
268         Marco Pesenti Gritti).
269
270 Mon Oct 13 20:21:55 2003  Kristian Rietveld  <kris@gtk.org>
271
272         * demos/testpixbuf-scale.c: enable GTK_DISABLE_DEPRECATED again,
273         (set_interp_type), (main): port over from option menu to GtkComboBox.
274
275 Mon Oct 13 19:41:55 2003  Kristian Rietveld  <kris@gtk.org>
276
277         * tests/testmenus.c: Still uses option menus, so turn off
278         GTK_DISABLE_DEPRECATED.
279
280 Sun Oct 12 01:10:29 2003  Matthias Clasen  <maclas@gmx.de>
281
282         * gtk/gtkalignment.[hc]: 
283         * gtk/gtkcombobox.[hc]: 
284         * gtk/gtkcomboboxentry.[hc]: 
285         * gtk/gtktreemodelfilter.[hc]: Move GET_PRIVATE macros
286         from header to implementation.
287
288 Sun Oct 12 00:18:02 2003  Matthias Clasen  <maclas@gmx.de>
289
290         * tests/testtreeview.c: 
291         * demos/testpixbuf-scale.c: 
292         * tests/prop-editor.c: These files still use option menus,
293         so turn off GTK_DISABLE_DEPRECATED to fix the build. 
294
295 Sat Oct 11 23:14:36 2003  Matthias Clasen  <maclas@gmx.de>
296
297         * gtk/gtkactiongroup.h: 
298         * gtk/gtkaction.h: 
299         * gtk/gtkradioaction.h: 
300         * gtk/gtkradiotoolbutton.h: 
301         * gtk/gtkseparatortoolitem.h: 
302         * gtk/gtktoggleaction.h: 
303         * gtk/gtktoolitem.h: 
304         * gtk/gtkuimanager.h: Add G_BEGIN_DECLS/G_END_DECLS to make 
305         these usable in C++.  (#124351, Murray Cumming)
306
307 Sat Oct 11 19:09:05 2003  Kristian Rietveld  <kris@gtk.org>
308
309         * gtk/gtkentry.c (gtk_entry_set_text): Check if completion is
310         non-NULL before accessing it. Oops.
311
312 Sat Oct 11 15:47:03 2003  Kristian Rietveld  <kris@gtk.org>
313
314         * gtk/gtkentrycompletion.[ch] (gtk_entry_completion_insert_action),
315         (gtk_entry_completion_insert_action_text),
316         (gtk_entry_completion_insert_action_markup): the gchar* parameters
317         should be const (pointed out by both Marco Pesenti Gritti and
318         Murray Cumming (#124356).
319
320 Sat Oct 11 15:37:19 2003  Kristian Rietveld  <kris@gtk.org>
321
322         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate): for the custom
323         child list mode, allocate the height allocation->height to the
324         button instead of the height requested by the button. (Tiny
325         size allocation screwup noticed by Macro Pesenti Gritti).
326
327 Sat Oct 11 15:23:27 2003  Kristian Rietveld  <kris@gtk.org>
328
329         Fixes based on comments from Marco Pesenti Gritti.
330
331         * gtk/gtkentry.c (gtk_entry_set_text): block the completion changed
332         signal handler, avoids the completion popup to popup when text is
333         set programmatically in most cases (we actually have to handle this
334         in the _editable functions as well, but that will break popping up
335         when the user actually typed something :),
336         (gtk_entry_completion_key_press): when handling enter, bail out
337         when nothing has been selected,
338         (gtk_entry_completion_changed): don't popdown when the entry content
339         changed.
340
341         * gtk/gtkentrycompletion.c (gtk_entry_completion_init),
342         (gtk_entry_completion_selected_changed): unselect_all on the
343         first selected changed signal. Avoids having a default row selected,
344         (_gtk_entry_completion_popup): don't select the first row by default.
345
346         * gtk/gtkentryprivate.h (struct _GtkEntryCompletionPrivate): add a
347         first_sel_changed field.
348
349 Fri Oct 10 23:02:58 2003  Matthias Clasen  <maclas@gmx.de>
350
351         * demos/gtk-demo/menus.c: Replace GtkItemFactory by GtkUIManager 
352         in the intro (again).
353
354 Fri Oct 10 22:50:05 2003  Matthias Clasen  <maclas@gmx.de>
355
356         Fixes for (#124212, Marco Pesenti Gritti):
357         
358         * gtk/gtkuimanager.c (update_smart_separators): Don't spit 
359         warnings for popups.
360         (_gtk_menu_is_empty): Return FALSE for non-menus.
361
362 Fri Oct 10 19:10:12 2003  Kristian Rietveld  <kris@gtk.org>
363
364         * gtk/gtkcombo.h: Deprecate.
365         * gtk/gtkoptionmenu.h: Ditto.
366
367         * gtk/gtkcombobox.c (gtk_combo_box_size_request),
368         (gtk_combo_box_size_allocate): Rework, things behave better now. Still
369         needs some work on requesting enough size when taking the items in
370         the list into account.
371
372         * gtk/gtkfilesel.c: put gtkoptionmenu.h include inside "enable
373         deprecated" guards.
374         * gtk/gtkinputdialog.c: ditto.
375         * gtk/gtkitemfactory.c: ditto.
376         * gtk/gtkoptionmenu.c: ditto.
377
378         * demos/gtk-demo/menus.c: remove the option menu.
379         * demos/gtk-demo/sizegroup.c: replace the option menus with
380         GtkComboBox.
381         * demos/gtk-demo/textview.c: ditto.
382         (A general GtkComboBox demo will be added later on).
383
384 Wed Oct  8 00:06:17 2003  Matthias Clasen  <maclas@gmx.de>
385
386         * demos/gtk-demo/ui_manager.c (activate_radio_action): New
387         callback to propertly report radio actions.
388
389         * demos/gtk-demo/ui_manager.c (do_ui_manager): Use it here.
390
391 Tue Oct  7 23:23:05 2003  Matthias Clasen  <maclas@gmx.de>
392
393         * gtk/gtkplug.c (xembed_set_info): Put the supported protocol
394         version in in the right field of the _XEMBED_INFO property.  
395         (#123885, Denis Mikhalkin)
396
397 Mon Oct  6 14:18:47 2003  Jonathan Blandford  <jrb@redhat.com>
398
399         * gtk/gtkexpander.c (gtk_expander_animation_timeout): only show
400         the child if we have one.
401
402         (gtk_expander_button_release): use
403         gtk_widget_activate instead.
404
405 Mon Oct  6 21:05:46 2003  Matthias Clasen  <maclas@gmx.de>
406
407         * gtk/gtktable.c (gtk_table_class_init): Start the blurb for 
408         "right_attach" with a capital.  (#123945, Christian Rose)
409
410 Sun Oct  5 23:59:03 2003  Matthias Clasen  <maclas@gmx.de>
411
412         * tests/testsocket.c (child_read_watch): Remove an
413         extraneous unref.  (#122336, Frederic Crozat)
414
415 Sun Oct  5 22:38:22 2003  Matthias Clasen  <maclas@gmx.de>
416
417         * gtk/gtkeventbox.c (gtk_event_box_class_init): Trim 
418         whitespace in "visible-window" blurb.  (#123910, Christian Rose)
419
420 Sun Oct  5 00:53:15 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
421
422         * gtk/gtktoolbar.c (gtk_toolbar_list_children_in_focus_order):
423         focus arrow before pack_end items (#123851, Matthias Clasen)
424
425 Fri Oct  3 20:50:48 2003  Kristian Rietveld  <kris@gtk.org>
426
427         * gtk/gtkcombobox.c (gtk_combo_box_set_model): only set the model
428         on ->priv->cell_view if ->priv->cell_view is non-NULL.
429
430         * gtk/gtkcomboboxentry.c: include gtkintl.h, add text_renderer
431         field to GtkComboBoxEntryPrivate,
432         (gtk_combo_box_entry_class_init), (gtk_combo_box_entry_init),
433         (gtk_combo_box_entry_set_property), (gtk_combo_box_entry_get_property),
434         (gtk_combo_box_entry_set_text_column), (gtk_combo_box_entry_new): add
435         a construct-only "text_column" property and reorder code to use it
436         and support inheriting this widget.
437
438 Thu Oct  2 23:28:02 2003  Kristian Rietveld  <kris@gtk.org>
439
440         * gtk/gtkcombobox.c: Added API doc comments.
441
442         * gtk/gtkcomboboxentry.c: Ditto.
443
444 2003-10-02  Matthias Clasen  <maclas@gmx.de>
445
446         * gtk/gtktoggleaction.c: Documentation tweaks.
447
448 Wed Oct  1 22:43:40 2003  Kristian Rietveld  <kris@gtk.org>
449
450         * gtk/gtkcellview.[ch]: implement the GtkCellLayout interface, drop
451         packing/attribute/cell data functions from the header,
452         (gtk_cell_view_set_cell_data): added support for cell data funcs.
453
454         * gtk/gtkcombobox.[ch]: implement the GtkCellLayout interface, drop
455         packing/attribute/cell data functions from the header, implemented
456         cell data func support.
457
458         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_new): updated
459         for the move to GtkCellLayout.
460
461         * tests/testcombo.c (create_combo_box_grid_demo), (main): ditto.
462
463 2003-10-01  Matthias Clasen  <maclas@gmx.de>
464
465         * gtk/gtkaction.c (gtk_action_class_init): 
466         (gtk_action_[gs]et_property): Introduce a separate
467         "hide_if_empty" property for empty menu handling.
468         (_gtk_action_sync_menu_visible): ...and use it here.
469
470         * tests/testmerge.c (main): ...and here.
471
472         * gtk/gtktoolitem.c (gtk_tool_item_class_init): Fix signal doc 
473         comments to pacify gtk-doc.
474
475         * gtk/gtkmain.c: Doc formatting tweaks.
476
477         * gtk/gtktoolitem.c (gtk_tool_item_set_is_important): Fix a typo.
478
479         * gtk/gtkcheckmenuitem.h (gtk_check_menu_item_set_draw_as_radio): 
480         Use the same parameter names as in .c file, to pacify gtk-doc.
481
482         * gtk/gtktoggletoolbutton.[hc]: 
483         * gtk/gtktoolbutton.[hc]: 
484         * gtk/gtktoolitem.[hc]:
485         * gtk/gtktoolbar.[hc]: 
486         * gtk/gtkcolorbutton.[hc]: 
487         * gtk/gtkfontbutton.[hc]: 
488         * gtk/gtkalignment.[hc]: Define GET_PRIVATE macros in the 
489         source, not in the header.
490
491         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_[sg]et_draw_as_radio): 
492         Document these as 2.4 API additions.
493
494 Tue Sep 30 23:42:56 2003  Kristian Rietveld  <kris@gtk.org>
495
496         * gtk/gtkentry.c (gtk_entry_set_completion),
497         (gtk_entry_get_completion): Add API doc comments.
498
499         * gtk/gtkentrycompletion.c: Fix #includes and add API doc comments.
500
501 Tue Sep 30 23:12:34 2003  Kristian Rietveld  <kris@gtk.org>
502
503         * gtk/gtktreemodelfilter.c: Add "Since: 2.4" to all API doc comments.
504
505 Tue Sep 30 22:59:58 2003  Kristian Rietveld  <kris@gtk.org>
506
507         * gtk/gtktreeviewcolumn.c: Some API doc comment fixes.
508
509         * gtk/gtkcellayout.c: Fix #include and oooooh API doc comments!
510
511 2003-09-30  Matthias Clasen  <maclas@gmx.de>
512
513         * tests/merge-*.ui: 
514         * tests/testmerge.c: Test handling of empty menus.
515
516         * gtk/gtkuimanager.c (_gtk_menu_is_empty): New function to determine
517         whether a menu is empty. Used in gtkaction.c.
518         (update_smart_separators): Also update the visibility of empty menus.
519         (update_node): When creating a new menu proxy, insert an "Empty" menu 
520         item which only gets shown if the menu is empty. 
521
522         * gtk/gtkaction.c (gtk_action_class_init): Document the meaning of
523         "is_important" for menu proxies.
524         (_gtk_action_sync_menu_visible): New function to sync the visibility
525         of menu proxies. Used in gtkuimanager.c.
526         (gtk_action_sync_visible): New function to sync the visibility of 
527         proxies.
528
529 Tue Sep 30 21:43:34 2003  Kristian Rietveld  <kris@gtk.org>
530
531         * gtk/gtkcombobox.c (gtk_combo_box_menu_button_press): set
532         popup_in_progress to TRUE,
533         (gtk_combo_box_menu_show): and back to FALSE here; the menu now
534         won't disappear on the first button release. (Reported by Matthias
535         Clasen).
536
537 Tue Sep 30 21:08:43 2003  Kristian Rietveld  <kris@gtk.org>
538
539         * gtk/gtkcombobox.c (gtk_combo_box_init): actually show the child.
540
541         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_init): ditto. (#123543,
542         Marco Pesenti Gritti).
543
544 2003-09-30  Murray Cumming  <murrayc@usa.net>
545  
546         * gtk/gtkcellrenderer.h: The render vfunc takes a GdkDrawable*
547         instead of a GdkWindow*, because that what it is given. The 
548         documentation was already correct. This should cause no API/ABI
549         breakage with C compilers.
550         * gtk/gtkcellrenderertext.c, gtkcellrendererpixbuf.c, 
551         gtkcellrenderertogger.c: Updated the declarations of the render vfunc
552         implementation accordingly.
553
554 2003-09-30  Matthias Clasen  <maclas@gmx.de>
555
556         * gdk/gdkkeys.c (gdk_keymap_class_init): Document the
557         "direction-changed" and "keys-changed" signals.
558
559         * gdk/gdkscreen.c (gdk_screen_class_init): Document the 
560         "size-changed" signal.
561
562         * gdk/gdkdisplaymanager.c (gdk_display_manager_class_init): 
563         Document the "display-opened" signal.
564
565         * gdk/gdkdisplay.c (gdk_display_close): Doc tweak.
566         (gdk_display_class_init): Document the "closed" signal.
567
568 Sat Sep 27 16:02:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
569
570         * gtk/gtktextview.[ch]: rename property tab_moves_focus to
571         accepts_tab. (#122709 again).
572
573 2003-09-27  Matthias Clasen  <maclas@gmx.de>
574
575         * gtk/gtkwindow.c (gtk_window_new):
576         * gtk/gtkitemfactory.c (gtk_item_factory_new): Document 
577         the fact that the newly created object does not come with 
578         a floating reference.  (#103068, patch by Frederic Lespez)
579         
580         * gtk/gtkitemfactory.h: Deprecate GtkItemFactory in favor 
581         of GtkUIManager. Just leave GtkTranslateFunc undeprecated, 
582         since GtkActionGroup uses it.
583
584         * tests/testtext.c: Turn off GTK_DISABLE_DEPRECATED, since
585         this test uses the soon-to-be-deprecated GtkItemFactory.
586
587         * demos/gtk-demo/Makefile.am (demos): Add ui_manager.c,
588         remove item_factory.c
589
590         * demos/gtk-demo/ui_manager.c: Duplicate of item_factory.c 
591         using GtkUIManager instead of GtkItemFactory.
592
593         * tests/testmerge.c: Demonstrate the use of the 
594         connect-proxy signal.
595
596         * gtk/gtkaction.c (connect_proxy): Add connect-proxy and 
597         disconnect-proxy signals to do small customizations 
598         like displaying tooltips in the statusbar without 
599         custom actions.  (#122894, Philip Langdale)
600
601         * gtk/gtkuimanager.c (update_node): Don't leak tooltip.
602
603 Fri Sep 26 23:49:44 2003  Kristian Rietveld  <kris@gtk.org>
604
605         Landing the new ComboBox. Note that only gtkcombobox.h and
606         gtkcomboboxentry.h are public.
607
608         * gtk/gtkcellview.[ch], gtk/gtkcellviewmenuitem.[ch],
609         gtk/gtkcombobox.[ch], gtk/gtkcomboboxentry.[ch]: new files.
610
611         * gtk/Makefile.am, gtk/gtk.h: adding the new files.
612
613         * tests/testcombo.c: and a new test.
614
615         * tests/Makefile.am: adding the new test.
616
617 2003-09-25  Tor Lillqvist  <tml@iki.fi>
618
619         * demos/gtk-demo/main.c: Don't use hardcoded DEMOCODEDIR on Windows.
620
621 2003-09-21  Tor Lillqvist  <tml@iki.fi>
622
623         * gdk/win32/gdkevents-win32.c (handle_wm_paint): New
624         function. Code split out from gdk_event_translate(). Needed
625         because gdk_event_get_graphics_expose() couldn't do anything
626         sensible otherwise. (Not that I think graphics exposes work anyway
627         in gdk/win32, but at least now the code could work.)
628
629         (gdk_event_get_graphics_expose): Call handle_wm_paint() instead of
630         gdk_event_translate(), which couldn't have worked as it doesn't
631         take any pre-allocated GdkEvent parameter any longer.
632         
633         (gdk_event_translate): Handle WM_MOUSEACTIVATE: Don't let
634         GDK_WINDOW_TEMP windows be activated. (#122578, John Ehresman)
635
636 2003-09-24  Matthias Clasen  <maclas@gmx.de>
637
638         * demos/gtk-demo/appwindow.c (do_appwindow): Demonstrate tooltips
639         on toolitems.
640
641         * gtk/gtkaction.c (connect_proxy): Sync tooltips on toolitems.
642
643         * gtk/gtkuimanager.c (update_node): Don't complain about missing
644         actions on popups. Re-set "tooltip" property on toolitems after
645         adding them to parent to trigger proxy update.
646
647 2003-09-22  Matthias Clasen  <maclas@gmx.de>
648
649         * tests/testmerge.c (main): Initially activate the JUSTIFY_RIGHT
650         group member to test the fix for #122904.
651
652         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
653         Add the action to the group before activating it, otherwise we
654         may end up with multiple active group members.  (#122904, Marco
655         Pesenti Gritti)
656
657 2003-09-21  Matthias Clasen  <maclas@gmx.de>
658
659         Changes to make cross-process merging feasible:
660         
661         * gtk/gtkuimanager.[hc]: Add a readonly "ui" property which holds the
662         merged UI definition. Remove the "changed" signal, since its role
663         is now filled by "notify::ui". Instead add a "actions-changed" signal
664         which gets emitted when the set of actions changes.
665
666         * gtk/gtktoggleactionprivate.h:
667         * gtk/gtktoggleaction.[hc] (gtk_toggle_action_[sg]et_draw_as_radio):
668         Add a "draw_as_radio" property to toggle actions so that they can be
669         used as proxies for radio actions much like the "draw_as_radio" 
670         property on check menu items enables them to operate as proxies for
671         radio actions.
672
673         Prevent the "show_all" trap for action-based menus (see
674         http://mail.gnome.org/archives/gtk-devel-list/2003-September/
675         msg00260.html):
676
677         * gtk/gtkmenu.c (gtk_menu_{hide,show}_all): Remove g_return_if_fail()
678         calls from static functions.
679
680         * gtk/gtkuimanager.c (update_node): 
681         * gtk/gtkaction.c (connect_proxy): Set "no_show_all" on constructed
682         widgets whose visibility is externally controlled.
683
684         * gtk/gtkwidget.[hc] (gtk_widget_[gs]et_no_show_all): Add a boolean 
685         "no_show_all" property with setter and getter. When TRUE, it keeps
686         gtk_widget_{hide,show}_all() from modifying the visibility of the 
687         widget and its children.
688
689 Sun Sep 21 23:13:37 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
690
691         * gtk/gtktextview.[ch]: Add new "tab moves focus" property (#122709)
692
693 2003-09-20  Tor Lillqvist  <tml@iki.fi>
694
695         * gtk-zip.sh.in: Don't use zip -r on the etc directory, to avoid
696         including editor backup files. List files we want explicitly.
697
698         * gtk/gtkmain.c (_gtk_get_lc_ctype): New function. On Unix, just
699         calls setlocale (LC_CTYPE, NULL). On Windows, looks for the
700         LC_ALL, LC_CTYPE and LANG environment variables, than calls
701         g_win32_getlocale().
702
703         (gtk_get_default_language): Code snippet moved to above function,
704         call it.
705
706         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave)
707         * gtk/gtkrc.c (gtk_rc_context_parse_file): Call
708         _gtk_get_lc_ctype() instead of setlocale().
709
710 Fri Sep 19 18:15:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
711
712         * gtk/gtkpaned.c, gtk/gtkhpaned.c: implement RTL flipping
713         (#96632)
714
715 Fri Sep 19 13:24:54 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
716
717         * gtk/gtktreeview.c (gtk_tree_view_get_cursor): Improve
718         documentation. (#117306, Steve Chaplin)
719
720 2003-09-19  Tor Lillqvist  <tml@iki.fi>
721
722         * gdk/win32/gdkkeys-win32.c (update_keymap): Handle dead keysyms
723         present on the US-International keyboard. For clarity, order
724         keysyms in case statement according to numeric value.
725
726         (gdk_keymap_translate_keyboard_state): Handle Caps Lock
727         correctly. (#120176, Ken Rastatter and Owen Taylor)
728
729 2003-09-18  Matthias Clasen  <maclas@gmx.de>
730
731         * gtk/gtkaction.c (gtk_action_finalize): Call g_closure_unref() to
732         unref a closure, not g_object_unref().  (#122637, Marco Pesenti Gritti)
733
734         Install accelerators on actions, not on proxies, support
735         accelerator-only actions:
736         
737         * gtk/gtkmenu.c (get_accel_path): New function to get the accel path
738         and its lock status either via _gtk_widget_get_accel_path() or by 
739         looking at the accel_path stored in the menu item itself and determining
740         its lock status by peeking into the contained accel label. This was
741         already (accidentally) committed a week ago.
742
743         * gtk/gtkaction.h (gtk_action_set_accel_group):
744         (gtk_action_[dis]connect_accelerator): New functions.
745
746         * gtk/gtkaction.c (struct _GtkActionPrivate): Add accel_group,
747         accel_closure and accel_count. We must have a reference to the 
748         accel_group, since we need it in connect_proxy. The count is necessary
749         to ensure that the accelerator isn't removed before the last proxy 
750         requesting it has been unmerged.
751         (connect_proxy): Connect the accelerator to the 
752         action now, only set the accel_path on the menuitem.
753         (remove_proxy): Disconnect the accelerator from the action, not from
754         the menuitem.
755         (gtk_action_set_accel_group): Set the accel group. 
756         (gtk_action_[dis]connect_accelerator): Count the number of times
757         this functions have been called and install/remove the accelerator if
758         the count leaves/reaches zero.
759
760         * gtk/gtkuimanager.h (GtkUIManagerItemType): Add 
761         GTK_UI_MANAGER_ACCELERATOR.
762
763         * gtk/gtkuimanager.c (NodeType): Add NODE_TYPE_ACCELERATOR.
764         (start_element_handler): Create NODE_TYPE_ACCELERATOR nodes from
765         <accelerator> elements.
766         (gtk_ui_manager_add_ui): Create NODE_TYPE_ACCELERATOR nodes when
767         type is GTK_UI_MANAGER_ACCELERATOR.
768         (update_node): Set the accel group on actions before creating their
769         proxies. Don't set the accel group on created menus. For 
770         NODE_TYPE_ACCELERATOR nodes, [dis]connect the actions' accelerator.
771         (print_node): Also emit <accelerator> elements.
772
773         * tests/testmerge.c (dump_accels): Add a "Dump Accels" button. 
774
775         * gtk/gtkuimanager.c (update_node): Robustness improvements.
776
777 2003-09-17  Matthias Clasen  <maclas@gmx.de>
778
779         * gtk/gtkuimanager.c (text_handler): Report unexpected character
780         data as error from the GMarkup parser, otherwise things like
781         gtk_ui_manager_add_ui_from_string (ui, "Hi there!", -1, &error) 
782         pass unexpectedly.
783
784 Wed Sep 17 02:38:53 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
785
786         * gtk/gtktoolbar.c (gtk_toolbar_class_init): revert accidentally
787         committed redraw_on_allocate change.
788
789 Tue Sep 16 10:42:00 2003  Eric Warmenhoven  <eric@warmenhoven.org>
790
791         * gdk/linux-fb/gdkwindow-fb.c: Add gdk_window_set_keep_{above,below}
792         stubs to fix compilation
793
794         * gdk/linux-fb/gdkrender-fb.c: Add gdk_shadow_fb_stop_updates stub for
795         when shadowfb is disabled. Patch from pjm@cctechnol.com (#120847).
796
797         * gdk/linux-fb/gdkmouse-fb.c: Add GDK_MOUSE_DEVICE environment
798         variable. Patch from Marc Welz (#121347).
799
800 2003-09-16  Matthias Clasen  <maclas@gmx.de>
801
802         * gtk/gtkaction.h: Apply egtk-format-protos.
803
804 2003-09-15  Matthias Clasen  <maclas@gmx.de>
805
806         * gtk/gtkuimanager.c: Doc tweaks.
807
808         Smart separators; see 
809         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00133.html:
810         
811         * gtk/gtkuimanager.c (update_smart_separators): New function which 
812         implements "smart" separators by iterating once over the entries of a 
813         menu, hiding and showing separators as necessary.
814         (update_node): Mark separators used as fences of placeholders as
815         hidden. Explicitly added separators are marked as smart. Call 
816         update_smart_separators after updating a menu or toolbar node. 
817         Connect update_smart_separators to "notify::visible" signal on menu
818         and tool items.
819         
820         * tests/merge-[12].ui: Test smart separators.
821
822         Changes to allow setting action state before connecting signal; see
823         the thread starting at 
824         http://mail.gnome.org/archives/gtk-devel-list/2003-September/msg00140.html:
825         
826         * gtk/gtkactiongroup.[hc]: (gtk_action_group_add_radio_actions):
827         (gtk_action_group_add_radio_actions_full): Add value parameter to allow
828         setting the currently selected group member before connecting signals.
829         (GtkToggleActionEntry): Separate struct for constructing toggle actions,
830         including a boolean to initialize the action state before connecting
831         signals.
832         (gtk_action_group_add_toggle_actions):
833         (gtk_action_group_add_toggle_actions_full): New functions to construct
834         toggle actions from an array of GtkToggleActionEntries.
835
836         * demos/gtk-demo/appwindow.c: 
837         * tests/testactions.c: 
838         * tests/testmerge.c: Adjust to new action group API.
839
840 Sun Sep 14 16:59:52 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
841
842         * gtk/gtktoolbar.c (gtk_toolbar_init): Name the arrow 
843         "gtk-toolbar-arrow" so themes can special-case it.
844
845 Sun Sep 14 16:07:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
846
847         * gtk/Makefile.am (gtk_c_sources): sort the list of files.
848
849 Sun Sep 14 15:49:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
850
851         * gtk/gtktoolbar.c (toolbar_item_is_homogeneous): Unref the
852         PangoFontMetrics. Patch from Steve Chaplin (#122257).
853
854 2003-09-14  Tor Lillqvist  <tml@iki.fi>
855
856         * gdk/win32/gdkwindow-win32.c (show_window_internal): Remove
857         special-case code for WS_EX_TRANSPARENT (GDK_INPUT_ONLY) windows,
858         the usefulness of which was already in doubt. Removing it fixes
859         bugs #118575 and #121851.
860
861 Fri Sep 12 16:32:53 2003  Jonathan Blandford  <jrb@redhat.com>
862
863         Merge from stable.
864
865         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save the
866         pressed button (used to determine if we want to initiate a drag later
867         on) if the current grab widget is either NULL or tree_view (Reported
868         by Jeroen Zwartepoorte).
869
870 2003-09-12  Matthias Clasen  <maclas@gmx.de>
871
872         * gdk/gdkdraw.c (gdk_draw_string, gdk_draw_text) 
873         (gdk_draw_text_wc): Add deprecation notes.  (#121955, Martin Pool)
874
875 2003-09-11  Matthias Clasen  <maclas@gmx.de>
876
877         * gdk/gdkpango.c: Doc tweaks.
878
879         * tests/testgtk.c: Add table menu tests.
880
881         * gtk/gtkmenu.c (gtk_menu_free_private): Don't forget to free the 
882         GtkMenuPrivate struct itself. Pointed out by valgrind.
883
884         * gtk/gtkuimanager.c (gtk_ui_manager_finalize): Clean up 
885         properly.  (#121998)
886
887 Wed Sep 10 22:25:04 2003  Kristian Rietveld  <kris@gtk.org>
888
889         The table menu patch! Turns GtkMenu into a table, so you can attach
890         menu items in numerous new ways! Be creative!
891
892         Contains some bug fixes and RTL adaptions from Matthias Clasen.
893
894         * gtk/gtkmenu.c [toplevel]: introduce ATTACH_INFO_KEY, extend
895         GtkMenuPrivate, introduce AttachInfo, add child properties enum,
896         (gtk_menu_free_private), (gtk_menu_get_private): we have to free
897         the heights array in the private struct,
898         (gtk_menu_class_init): reorder code a bit, install child properties,
899         (get_attach_info), (get_child_attach): new utility functions,
900         (gtk_menu_set_child_property), (gtk_menu_get_child_property): introduce
901         child properties, for the attach info,
902         (gtk_menu_remove): remove AttachInfo from menu item,
903         (gtk_menu_real_insert): implemented algorithm to automagically place
904         inserted menu items at the correct place in the table,
905         (gtk_menu_size_request), (gtk_menu_size_allocate),
906         (compute_child_offset): reworked/rewritten to support table menus,
907         (gtk_menu_attach): new function,
908         (find_child_containing), (gtk_menu_move_current): new functions to
909         get table menu keynav right.
910
911         * gtk/gtkmenu.h: add gtk_menu_attach() prototype.
912
913 2003-09-10  Matthias Clasen  <maclas@gmx.de>
914
915         * gtk/gtksocket.c (gtk_socket_filter_func): Only remove 
916         PropertyNotify events from the stream if they have been handled,
917         in order to enable extending the plug<->socket communication via
918         properties.
919
920 Wed Sep 10 01:06:44 2003  Kristian Rietveld  <kris@gtk.org>
921
922         Big TreeView DnD fixage, makes drops on empty models work, makes
923         TreeStore DnD work and gets rid of gtk-tree-model-drop-append.
924         Related bugs #95362 and #113314. I don't want to touch this code
925         ever again.
926
927         * gtk/gtktreeprivate.h (GtkTreePrivate): add empty_view_drop field.
928
929         * gtk/gtktreednd.c (gtk_tree_get_row_drag_data): add check
930         for selection_data->length.
931
932         * gtk/gtktreeview.c (struct DestRow), (dest_row_free),
933         (set_dest_row), (get_dest_row): we don't store just the row ref
934         anymore, but a struct with the row ref and additional info,
935         (set_destination_row): handle drops on empty space and some
936         style fixes,
937         (get_logical_dest_row): also return path_down_mode/drop_append_mode
938         flags, handle dropping childs on their new parents, rewrite
939         drop append handling into something saner,
940         (gtk_tree_view_drag_motion): show a "drop possible arrow" on empty
941         spaces,
942         (gtk_tree_view_drag_drop): updates for updated backend,
943         (gtk_tree_view_drag_data_received): updates for updated backend,
944         path down mode (treestore DnD) handling,
945         (gtk_tree_view_set_drag_dest_row): set empty_view_drop flag,
946         when we are trying to drop a row on an empty model,
947         (gtk_tree_view_get_drag_dest_row): handle empty_view_drop flag.
948
949         * gtk/gtkliststore.c (gtk_list_store_drag_data_received),
950         (gtk_list_store_row_drop_possible): style and drop-append fixes.
951
952         * gtk/gtktreestore.c (gtk_tree_store_drag_data_received): ditto.
953
954 2003-09-08  Alexander Larsson  <alexl@redhat.com>
955
956         * gtk/gtkeventbox.[hc]:
957         Implement gtk_event_box_get/set_input_only()
958         
959         * tests/testgtk.c:
960         Tests for the new input only event boxes
961
962 Mon Sep  8 21:44:20 2003  Kristian Rietveld  <kris@gtk.org>
963
964         Fixes from David Hampton <hampton@employees.org> via gtk-devel-list.
965
966         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_elt_get_path): fix
967         the call to gtk_tree_model_filter_add_root,
968         (gtk_tree_model_filter_row_changed): bail out if c_path is not above
969         the virtual root, allow building levels on the second try to convert
970         the child path to a filter path,
971         (gtk_tree_model_filter_convert_iter_to_child_iter): pass the virtual
972         root when calling gtk_tree_model_filter_elt_get_path.
973
974 2003-09-07  Matthias Clasen  <maclas@gmx.de>
975
976         * gtk/gtkuimanager.c (update_node): Fix a C99ism.  (#121640,
977         Josh Beam)
978
979         Fixes for accelerator handling during (un)merging:
980         
981         * gtk/gtkuimanager.c (update_node): Move setting info-action
982         after the switch, since the old action is needed in some cases.
983         In cases of proxy type mismatch, disconnect the old proxy from
984         the old action.
985
986         * gtk/gtkaction.c (remove_proxy): Renamed from 
987         gtk_action_remove_proxy(). Move unsetting of the accelerator
988         here from disconnect_proxy() in order to catch all cases of 
989         removing a proxy.
990         (gtk_action_disconnect_proxy): Fix logic in g_return_if_fail()
991         to fail if proxy isn't a proxy of action.
992
993 2003-09-07  Pablo Saratxaga  <pablo@mandrakesoft.com>
994
995         * configure.in: Added Uzbek latin (uz) and cyrillic (uz@Cyrl) to
996         ALL_LINGUAS
997
998 2003-09-07  Matthias Clasen  <maclas@gmx.de>
999
1000         * gtk/gtkaction.c (disconnect_proxy): Make disconnect work
1001         for toolitems.
1002
1003 2003-09-06  Matthias Clasen  <maclas@gmx.de>
1004
1005         * gtk/gtkaction.c (gtk_action_connect_proxy): Disconnect from 
1006         prev_action, not from action.  (Fix by David Hampton)
1007
1008 Fri Sep  5 14:15:10 2003  Owen Taylor  <otaylor@redhat.com>
1009  
1010         * Back out locale-dependent interpretation of
1011         KP_Decimal, the official XFree86 interpretation
1012         is that KP_Decimal => . KP_Separator => ,
1013         always, independent of locale. 
1014         (#105161, Frederic Crozat, 
1015         http://bugs.xfree86.org/show_bug.cgi?id=534)
1016  
1017 2003-09-04  Matthias Clasen  <maclas@gmx.de>
1018
1019         * tests/testmerge.c: Test buttons and toggle buttons as proxies.
1020
1021         * gtk/gtktoggleaction.c (connect_proxy): 
1022         (gtk_toggle_action_real_toggled): Support toggle buttons as proxies. Note 
1023         that a "draw_as_radio" property is needed for check buttons similar to 
1024         check menu items, in order to fully support button proxies for radio actions.
1025
1026         * gtk/gtkaction.c (connect_proxy): Allow buttons as proxies.
1027
1028         * tests/testmerge.c (toggle_dynamic): Test gtk_ui_manager_add_ui(). 
1029
1030         * gtk/gtkuimanager.h: Add GtkUIManagerItemType enum which is needed for the
1031         'type' argument of gtk_ui_manager_add_ui().
1032
1033         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui): Add 'type' and 'top' arguments
1034         to make this function as powerful as the XML methods of adding UI.  (#120647)
1035
1036 Thu Sep  4 19:11:23 2003  Kristian Rietveld  <kris@gtk.org>
1037
1038         Merge from stable.
1039
1040         * docs/RELEASE-HOWTO: updates.
1041
1042 2003-09-04  Matthias Clasen  <maclas@gmx.de>
1043
1044         * tests/merge-2.ui: Use "position" instead of "pos".
1045
1046         * gtk/gtkuimanager.c (start_element_handler): No need 
1047         to be terse: Change the name of the "pos" attribute
1048         to "position".
1049
1050 2003-09-04  Matthias Clasen  <maclas@gmx.de>
1051
1052         * gtk/gtkuimanager.c: Un-prefix GtkUIManagerNodeType and 
1053         GtkUIManagerNode to shorten the names and to make the
1054         GTK_UI_MANAGER_<TYPE> names available for a public enum.
1055
1056         * gtk/gtkactiongroup.c:
1057         * gtk/gtkuimanager.c: Various doc tweaks.       
1058
1059         * gtk/gtkuimanager.c (start_element_handler):
1060         (end_element_handler): Improve error reporting. 
1061
1062 Wed Sep  3 23:18:17 2003  Kristian Rietveld  <kris@gtk.org>
1063
1064         Merge from stable.
1065
1066         * gtk/gtkmenu.c (gtk_menu_real_move_scroll): for the END case,
1067         use end_position - page_size instead of G_MAXINT, since
1068         gtk_menu_scroll_to doesn't CLAMP anymore internally. (Fixes #121237,
1069         reported by Havoc Pennington).
1070
1071 Wed Sep  3 21:58:03 2003  Kristian Rietveld  <kris@gtk.org>
1072
1073         Merge from stable.
1074
1075         * gtk/gtkiconfactory.c (cached_icon_free): if icon->style != NULL,
1076         unref it. (Fixes memleak, patch from Kjartan Maraas).
1077
1078 Wed Sep  3 21:38:26 2003  Kristian Rietveld  <kris@gtk.org>
1079
1080         * gdk/Makefile.am, gdk/linux-fb/gdkfbmanager.c, gdk/x11/gdkcolor-x11.c,
1081         gdk-pixbuf/io-gif.c, gtk/Makefile.am, gtk/gtkcalendar.c,
1082         gtk/gtkclist.c, gtk/gtkctree.c, gtk/gtkdnd.c, gtk/gtkentry.c,
1083         gtk/gtkhandlebox.c, gtk/gtkitemfactory.c, gtk/gtkmenu.c,
1084         gtk/gtknotebook.c, gtk/gtkrange.c, gtk/gtkrc.h, gtk/gtktree.c,
1085         gtk/gtktypeutils.h: big patch from Kjartan Maraas
1086         to fix numerous typos.
1087
1088 Wed Sep  3 17:38:01 BST 2003  Tony Gale <gale@gtk.org>
1089
1090         * docs/faq/gtk-faq.sgml: Correct compile line for threads example.
1091
1092 2003-09-02  Tor Lillqvist  <tml@iki.fi>
1093
1094         * gdk/win32/gdkdisplay-win32.c (gdk_display_open): Don't call
1095         CloseHandle() on the HMODULE returned from GetModuleHandle().
1096         Didn't cause any harm, but didn't do anything useful either. When
1097         running a GTK+ program under MS's debugger, the CloseHandle() call
1098         would cause a "first-chance exception" in ntdll.dll to show up.
1099         (The exception is caught appropriately if you let it proceed, but
1100         it confuses the person using the debugger). Thanks to Bruce
1101         Hochstetler for noticing.
1102
1103 Tue Sep  2 21:01:19 2003  Kristian Rietveld  <kris@gtk.org>
1104
1105         Merge from stable.
1106
1107         * gtk/gtktreeview.c (gtk_tree_view_button_press): revert the change
1108         to only select when button 1 is pressed introduced in the fix of
1109         bug #120187.
1110
1111 2003-09-02  Matthias Clasen  <maclas@gmx.de>
1112
1113         * gtk/gtkactiongroup.c (gtk_action_group_new): Doc addition.
1114
1115         * gtk/gtkuimanager.c: Shorten the names of some static 
1116         functions.
1117
1118         Support adding and removing merge nodes dynamically (#120647, 
1119         Anders Carlsson):
1120         
1121         * gtk/gtkuimanager.[ch] (gtk_ui_manager_new_merge_id): Renamed 
1122         gtk_ui_manager_next_merge_id to gtk_ui_manager_new_merge_id 
1123         and made it public.
1124         (gtk_ui_manager_add_ui): New function to add UI elements
1125         without juggling XML fragments, currently restricted to menuitems,
1126         toolitems and separators. Actions still come from registered 
1127         action groups.
1128
1129 Mon Sep  1 19:39:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1130
1131         * gdk/gdkwindow.c (gdk_window_get_bg_gc): Fix bug where the
1132         background pixmap was being offset twice, once by the ts_origin in
1133         gdk_window_get_bg_gc(), and once by gdk_draw_rectangle().
1134
1135 2003-09-01  Matthias Clasen  <maclas@gmx.de>
1136
1137         * gtk/gtkuimanager.[ch] (gtk_ui_manager_ensure_update): Make
1138         this public again, since it's occasionally useful.  (#121128,
1139         Marco Pesenti Gritti)
1140
1141         * gtk/gtkaction.c: Add an "is_important" property and propagate
1142         it to toolitem proxies.  (#121058, Marco Pesenti Gritti)
1143
1144 Mon Sep  1 00:32:30 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1145
1146         * tests/testtoolbar.c (main): connect to "delete_event" so the
1147         application will actually quit when you close the window
1148
1149 2003-09-01  Matthias Clasen  <maclas@gmx.de>
1150
1151         * gtk/gtkuimanager.c (gtk_ui_manager_get_widget) 
1152         (gtk_ui_manager_get_action): g_return_if_fail() if
1153         path is NULL.
1154         (gtk_ui_manager_get_node): Avoid a segfault if path is empty.
1155         (gtk_ui_manager_finalize): Remove the idle on finalize. (#121125, 
1156         Marco Pesenti Gritti)
1157
1158 2003-08-31  Matthias Clasen  <maclas@gmx.de>
1159
1160         * gtk/gtktoolitem.c: Fix some typos in docs.
1161
1162         * gtk/gtkuimanager.[ch] (gtk_ui_manager_get_action): New function,
1163         replaces gtk_ui_manager_activate().  (#120658)
1164
1165         * tests/testmerge.c: Use gtk_ui_manager_get_action() instead of
1166         gtk_ui_manager_activate().
1167
1168         * gtk/gtkaction.c: 
1169         * gtk/gtkactiongroup.c: Some doc tweaks.
1170
1171         * gtk/gtkuimanager.[hc]: Get rid of the remove_widget signal. It
1172         wasn't emitted anyway. Some doc tweaks.
1173
1174 2003-08-30  Matthias Clasen  <maclas@gmx.de>
1175
1176         * tests/testmerge.c (add_widget): Connect to "destroy" on toolbar,
1177         rather than to "remove" on handlebox. 
1178
1179         * gtk/gtkuimanager.[hc] (gtk_ui_manager_activate): New method to
1180         activate an action found by following a path.  (#120658)
1181
1182         * tests/testmerge.c: Add a button to test gtk_ui_manager_activate().
1183
1184         * tests/testmerge.c (add_widget): Put toolbars in handleboxes.
1185
1186         * gtk/gtkuimanager.[hc]: Add a boolean property, "add_tearoffs" with 
1187         setter and getter. If it is set, add tearoff menu items to regular 
1188         menus, but not to popups. Add a signal "changed", which gets emitted
1189         when the merged ui has changed.  (#120649, #120656)
1190
1191         * tests/testmerge.c: Add button to test the generation of tearoff 
1192         menu items.
1193
1194 2003-08-29  Matthias Clasen  <maclas@gmx.de>
1195
1196         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full): 
1197         Actually group the actions together rather than putting each in its 
1198         own group.
1199
1200         * gtk/gtkradioaction.c (create_menu_item): Set "draw_as_radio" on 
1201         proxy menu items for radio actions.
1202
1203         * gtk/gtkgamma.c (gamma_ok_callback): Use g_strtod instead of strtod.
1204
1205 Fri Aug 29 21:40:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1206
1207         * gtk/gtkactiongroup.c (gtk_action_group_add_radio_actions_full):
1208         Fix use of uninitialized variable.
1209
1210         * gtk/gtktextutil.c
1211         (_gtk_text_util_append_special_char_menuitems): add const cast to
1212         get rid of warning
1213
1214 2003-08-29  Matthias Clasen  <maclas@gmx.de>
1215
1216         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Install 
1217         "draw_as_radio" as a separate property, not as an alias of 
1218         "inconsistent".
1219         (gtk_check_menu_item_get_property): 
1220         (gtk_check_menu_item_set_property): Also support "draw_as_radio".
1221
1222 Fri Aug 29 20:32:07 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1223
1224         * gtk/gtktoolbar.c: Only treat buttons as homogeneous when they
1225         are narrower than 13 time the estimated character width of the
1226         font. (#107781, David Bordoley)
1227
1228         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): Check
1229         here if the GtkToggleButton is active. This may be the case if it
1230         is a radio button.
1231
1232         * gtk/gtktoolbar.c: Clarify documentation wrt. GtkSignalFunc
1233         vs. void (*) (GtkWidget, gpointer). (#107495, Mariano
1234         Suarez-Alvarez).
1235
1236         * gtk/gtkcheckmenuitem.[ch]: new "draw_as_radio"
1237         property. (#111207, David Bordoley).
1238
1239         * gtk/gtktoggletoolbutton.c
1240         (gtk_toggle_tool_button_create_menu_proxy): use new
1241         "draw_as_radio" property on the menu item when the item is a radio
1242         tool button
1243
1244         * gtk/gtktoolbutton.c (gtk_tool_button_create_menu_proxy): Fixes
1245         to only pay attention to the "use_underline" property when the
1246         button label comes from the "label" property.
1247
1248 2003-08-29  Laurent Dhima  <laurenti@alblinux.net>
1249
1250         * configure.in: Added "sq" to ALL_LINGUAS.
1251         
1252 2003-08-28  Matthias Clasen  <maclas@gmx.de>
1253
1254         * gdk/x11/gdkkeys-x11.c (gdk_keymap_translate_keyboard_state): Markup
1255         fix in the docs.
1256
1257         * gtk/gtkuimanager.c: Change the XML format:
1258         <Root> element is replaced by <ui>,
1259         <menu> element is replaced by <menubar>,
1260         <submenu> element is replaced by <menu>,
1261         <dockitem> element is replaced by <toolbar>,
1262         <popups> element is gone,
1263         verb attribute is replaced by action,
1264         name defaults to action or the element name. 
1265
1266         * gtk/gtkactiongroup.[hc]: Replace GtkActionGroupEntry by 
1267         GtkActionEntry and GtkRadioActionEntry. GtkActionEntry is simplified 
1268         by removing the user_data, entry_type and extra_data fields, 
1269         GtkRadioActionEntry is further simplified by removing the callback. 
1270         The user_data can now be specified as an argument to 
1271         gtk_action_group_add_actions(). There is a new method 
1272         gtk_action_group_add_radio_actions(), which is similar to 
1273         gtk_action_group_add_actions(), but takes GtkRadioActionEntrys
1274         and a callback parameter in addition to the user_data. The callback
1275         is connected to the ::changed signal of the first group member.
1276         There are _full() variants taking a GDestroyNotify of 
1277         gtk_action_group_add_[radio_]actions().
1278
1279         * gtk/gtkradioaction.[hc]: Add a ::changed signal which gets emitted 
1280         on every member of the radio group when the active member is changed. 
1281         Add an integer property "value", and a getter for the value of "value"
1282         on the currently active group member. 
1283
1284         * tests/testactions.c: 
1285         * tests/testmerge.c: 
1286         * tests/merge-[123].ui:  
1287         * demos/gtk-demo/appwindow.c: Adjust to these changes.
1288
1289         * gtk/gtktoolbar.c (gtk_toolbar_append_element): Trivial doc fix.
1290
1291 2003-08-27  Anders Carlsson  <andersca@gnome.org>
1292
1293         * demos/gtk-demo/appwindow.c (do_appwindow): Focus the
1294         text view, so the tool bar won't have focus.
1295
1296 Tue Aug 26 09:57:38 2003  Owen Taylor  <otaylor@redhat.com>
1297
1298         * gdk/x11/gdkkeys-x11.c (update_keymaps): Fix variable
1299         declaration not at start of block. (#120371, Damien Carbery)
1300
1301 2003-08-26  Matthias Clasen  <maclas@gmx.de>
1302
1303         * gtk/gtkuimanager.[hc] (gtk_ui_manager_add_ui_from_string): Use gssize 
1304         for length, not gsize.
1305
1306         * gtk/gtkuimanager.c: Refactor the XML format a bit: rename <Root> to 
1307         <ui> and make it optional in strings. Rename verb to action, <dockitem> 
1308         to <toolbar>, <menu> to <menubar>, <submenu> to <menu>.
1309
1310         * demos/gtk-demo/appwindow.c: 
1311         * tests/testactions.c: 
1312         * tests/testmerge.c:
1313         * tests/merge-1.ui:
1314         * tests/merge-2.ui:
1315         * tests/merge-3.ui: Adjust to the new XML format.
1316
1317 Mon Aug 25 19:55:55 2003  Owen Taylor  <otaylor@redhat.com>
1318
1319         * gtk/gtktextview.c (gtk_text_view_update_layout_width): 
1320         Since we add one to the layout's reported width to
1321         account for the cursor, we need to subtract one when
1322         setting the wrap width for the layout. (Fixes infinite
1323         loop (#120325, Frederic Crozat)
1324
1325         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
1326         Be a bit more careful about rounding when converting
1327         wrapped width from Pango units to pixels.
1328
1329 2003-08-26  Matthias Clasen  <maclas@gmx.de>
1330
1331         Rename GtkMenuMerge to GtkUIManager. 
1332         
1333         * gtk/gtkuimanager.[hc]: New files. 
1334         * gtk/gtkmenumerge.[hc]: Removed. 
1335
1336         * gtk/Makefile.am: 
1337         * gtk/gtk.h:
1338         * tests/testmerge.c: 
1339         * tests/testactions.c: 
1340         * demos/gtk-demo/appwindow.c: Replace all uses of GtkMenuMerge by 
1341         GtkUIManager.
1342
1343         * demos/gtk-demo/appwindow.c: Make GtkMenuMerge demo less intimidating: 
1344         add comments to entries array, remove newlines from ui definition. Don't 
1345         use the ::add_widget signal.
1346
1347 Mon Aug 25 17:28:04 2003  Owen Taylor  <otaylor@redhat.com>
1348
1349         * gtk/gtknotebook.c (gtk_notebook_forall): Don't
1350         include page->menu_label - causes various problems,
1351         including #12047.
1352
1353 Mon Aug 25 23:21:43 2003  Kristian Rietveld  <kris@gtk.org>
1354
1355         Merge from stable.
1356
1357         Fixes #115871, reported by Michael Natterer.
1358
1359         * gtk/gtktreeprivate.h: added GtkTreeSelectMode enum,
1360         added ctrl_pressed and shift_pressed bitfields,
1361         (_gtk_tree_selection_internal_select_node): replace GdkModifierType
1362         arg with GtkTreeSelectMode.
1363
1364         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode),
1365         (gtk_tree_selection_select_path), (gtk_tree_selection_unselect_path),
1366         (_gtk_tree_selection_internal_select_node): all updated for
1367         GdkModifierType -> GtkTreeSelectMode move.
1368
1369         * gtk/gtktreeview.c (gtk_tree_view_button_press): set ctrl_pressed
1370         and shift_pressed around selection handling block,
1371         (gtk_tree_view_real_select_cursor_row),
1372         (gtk_tree_view_real_toggle_cursor_row),
1373         (gtk_tree_view_real_selection_cursor_parent),
1374         (gtk_tree_view_real_set_cursor): use ctrl_pressed and shift_pressed,
1375         instead of checking the event state. And also updates for the
1376         GdkModifierType -> GtkTreeSelectMode move.
1377
1378 Wed Aug 20 21:26:49 2003  Owen Taylor  <otaylor@redhat.com>
1379
1380         * gtk/gtkplug.c (gtk_plug_focus): Send the focus on
1381         to the parent when there was no focus widget before
1382         and no focus widget after - that is, when there are
1383         no focusable widgets. (#108678, help tracking it
1384         down from Padraig O'Briain, Federico Mena Quintero, )
1385
1386         * gtk/gtkxembed.[ch]: Move various shared utilities
1387         for the XEMBED protocol eused by GtkPlug and GtkSocket 
1388         here.
1389
1390         * gtk/gtkxembed.[ch] gtkplug.c gtksocket.c: Implement
1391         a flag bit that is sent with focus mesages to indicate
1392         that the focus has wrapped around on the toplevel;
1393         use this bit to catch infinite loops when there is no
1394         focusable widget at ll in the entire toplevel.
1395
1396         * tests/testsocket.c (child_read_watch): Remove an
1397         extraneous unref.
1398
1399         * gtk/gtkplug.c gtk/gtksocket.c gtk/gtkxembed.h: 
1400         Up XEMBED protocol version to 1, add logic for 
1401         sending the right version in XEMBED_EMBEDDED_NOTIFY.
1402
1403         * gtk/gtksocket.c (gtk_socket_add_window): Send
1404         the embedder window in the XEMBED_EMBEDDED_NOTIFY
1405         as the spec requires.
1406
1407 Mon Aug 25 16:15:41 2003  Owen Taylor  <otaylor@redhat.com>
1408
1409         * gdk/x11/gdkkeys-x11.c: Fix up CapsLock and 
1410         NumLock handling for non-XKB. Add a special case
1411         hack for NumLock on Sun servers. (Patch from
1412         Robert Basch, #115819)
1413
1414 2003-08-25  Matthias Clasen  <maclas@gmx.de>
1415
1416         * gtk/gtkactiongroup.c (gtk_action_group_add_actions): Remove C99isms. (Morten 
1417         Welinder)
1418
1419         * gtk/gtkactiongroup.[hc] (gtk_action_group_set_translate_func,
1420         gtk_action_group_set_translation_domain): Hooks for translation of
1421         label and tooltip in GtkActionGroupEntries.  (#120620)
1422
1423 2003-08-25  Matthias Clasen  <maclas@gmx.de>
1424
1425         * gtk/gtkactiongroup.h (GtkActionGroupEntryType): Namespace the enum
1426         values properly. Sorry about the resize grip trouble, Owen.  (#120621)
1427         
1428         * gtk/gtkactiongroup.c: 
1429         * demos/gtk-demo/appwindow.c: 
1430         * tests/testmerge.c: 
1431         * tests/testactions.c: Use new GtkActionGroupEntryType enum.  
1432
1433 Sun Aug 24 17:14:44 2003  Owen Taylor  <otaylor@redhat.com>
1434
1435         * gtk/gtk.h: Remove reference to gtkresizegrip.h.
1436
1437 Sun Aug 24 17:03:44 2003  Owen Taylor  <otaylor@redhat.com>
1438
1439         * gtk/Makefile.am: Fix accidental commit of references
1440         to gtkresizegrip.[ch]
1441
1442 Sun Aug 24 17:00:03 2003  Owen Taylor  <otaylor@redhat.com>
1443
1444         * gtk/gtkrc.c: Fix some missing initializations of
1445         rc_file->directory.
1446
1447 2003-08-24  Matthias Clasen  <maclas@gmx.de>
1448
1449         * gtk/gtkaction.[ch]: 
1450         * gtk/gtktoggleaction.[ch]: 
1451         * gtk/gtktoggleactionprivate.h: 
1452         * gtk/gtkradioaction.[ch]: 
1453         * gtk/gtkactiongroup.[ch]: 
1454         * gtk/gtkmenumerge.[ch]: A model-view separation for menus and
1455         toolbars, using the EggMenu code by James Henstridge.
1456
1457         * gtk/gtk.h: Include new headers.
1458         * gtk/Makefile.am: Add new files.
1459
1460         * tests/testactions.c: Test for actions.
1461         * tests/testmerge.c: Test for menu merging.
1462         * tests/merge-[123].ui: Test data for testmerge. 
1463         * tests/Makefile.am: Add testactions and testmerge.
1464
1465         * demos/gtk-demo/appwindow.c: Use GtkMenuMerge to construct the 
1466         menubar and toolbar.
1467         
1468 Sat Aug 23 21:40:18 2003  Owen Taylor  <otaylor@redhat.com>
1469  
1470         * gtk/gtkrc.c (gtk_rc_context_parse_one_file): Fix 
1471         problem where rc_file->directory wasn't always getting
1472         set. (#120549, Luis Villa)
1473  
1474 2003-08-22  Christian Rose  <menthos@menthos.com>
1475
1476         * configure.in: Added "ne" to ALL_LINGUAS.
1477
1478 Thu Aug 21 16:00:36 2003  Owen Taylor  <otaylor@redhat.com>
1479  
1480         * gtk/gtkrc.c: Keep a list of current GtkRcFiles
1481         being parsed, not just the directories for those
1482         files. Use that to catch recursion. (Part of
1483         #114988)
1484  
1485 Thu Aug 21 21:27:45 2003  Kristian Rietveld  <kris@gtk.org>
1486
1487         Merge from stable.
1488
1489         Fix option menu scrolling (#119821, Owen Taylor).
1490
1491         * gtk/gtkmenu.c (gtk_menu_scroll_to): remove logic introduced
1492         by #80484 and the CLAMP,
1493         (get_menu_height): new function,
1494         (gtk_menu_real_move_scroll): sort of moved the CLAMP here to correct
1495         new_offset to handle page up/down right.
1496
1497 Thu Aug 21 15:17:42 2003  Owen Taylor  <otaylor@redhat.com>
1498
1499         * gdk/x11/gdkkeys-x11.c: Change the interpretation
1500         of consumed_modifiers so that it contains:
1501          - Modifiers combinations actually found in
1502            state.
1503          - Single modifier modifier combinations.
1504         But not multi-modifier combinations that aren't
1505         in event->state. Document. (#100439)
1506
1507 Thu Aug 21 20:53:46 2003  Kristian Rietveld  <kris@gtk.org>
1508
1509         Slightly modified patch from Yann Rouillard to improve selection
1510         behavior with the mouse. Fixes #120187.
1511
1512         * gtk/gtktreeview.c (gtk_tree_view_button_press): only
1513         select/deselect items on the first button press of button 1,
1514         expand checks for row_activated to include triple clicks.
1515
1516 Thu Aug 21 01:33:51 2003  Kristian Rietveld  <kris@gtk.org>
1517
1518         Merge from stable.
1519
1520         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): always round
1521         approximate digit widths up, to avoid truncation, convert to
1522         pango pixels when we have the full string width instead of converting
1523         the approx digit width to pango pixels, take inner border and
1524         interior focus into account correctly. (Fixes #116368, patch from
1525         Morten Welinder).
1526
1527 2003-08-20  Noah Levitt  <nlevitt@columbia.edu>
1528
1529         * gtk/queryimmodules.c: Don't look at the same directory twice (in
1530         simple cases). (#120342)
1531
1532 Wed Aug 20 22:04:47 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
1533
1534         * gdk/gdkwindow.c: Make the layers in the paint stack have their
1535         own pixmap instead of sharing one. (#118317)
1536
1537         * tests/testgtk.c (create_get_image): Fixes to make the window fit
1538         on an 800x600 screen
1539
1540 Wed Aug 20 22:03:25 2003  Kristian Rietveld  <kris@gtk.org>
1541
1542         Merged from stable.
1543
1544         * gtk/gtkspinbutton.c (start_spinning): change the type of step
1545         to gdouble, since it gets it's data from a gdouble (Fixes #113547).
1546
1547 Mon Aug 18 17:19:12 2003  Owen Taylor  <otaylor@redhat.com>
1548
1549         * modules/input/gtkimcontextxim.[ch]: Substantially
1550         rework the handling of status windows:
1551         
1552          - Store the current StatusWindow in the 
1553            GtkIMContextXIM structure and vice-versa, so we
1554            don't have to hunt the window hierarchy on
1555            cleanup.
1556          - Use the Gtkidget hierarchy instead of/or as well
1557            as the GdkWindow hierarchy when finding the toplevel;
1558            this helps for things like GtkHandlebox
1559          - Watch GtkWidget::hierarchy_changed to catch 
1560            changes in the toplevel without changes in the
1561            GdkWindow (reparenting)
1562          - Never create the GtkWindow for the status window
1563            unless we have text to display.
1564          - Various cleanups, add lots of comments.
1565
1566         (#115077, much help from Takuro Ashie and Hidetoshi
1567         Tajima in tracking this down and figuring out a fix.)
1568
1569         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_focus_in): 
1570
1571         * modules/input/gtkimcontextxim.c: Track the current
1572         screen for each toplevel so that we show the status
1573         window on the right screen. (#116340, James Su)
1574
1575         * modules/input/gtkimcontextxim.c: If create a new IC
1576         when we currently have the focus, call XSetICFocus()
1577         on it.
1578         
1579         * modules/input/gtkimcontextxim.c (get_im): Fix bug
1580         with multiple open screens.
1581
1582 Tue Aug 19 14:37:46 2003  Owen Taylor  <otaylor@redhat.com>
1583
1584         * gtk/gtkimmulticontext.[ch] (struct _GtkIMMulticontext): 
1585         Replace client_window field with 'priv' pointer,
1586         retaining binary compatibility.
1587
1588         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_slave): 
1589         save use_preedit/cursor_location/focus status and set
1590         up the new slave appropriately. (#118651, Botond Botyanszki)
1591
1592 Tue Aug 19 13:58:50 2003  Owen Taylor  <otaylor@redhat.com>
1593
1594         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
1595         Don't use impl->position_info.clip_rect for toplevels.
1596         (#107068, reported by Thomas Mirlacher)
1597
1598 Mon Aug 18 11:48:51 2003  Owen Taylor  <otaylor@redhat.com>
1599
1600         * gdk/x11/gdkdrawable-x11.c (convert_to_format): 
1601         Add a fallback for unaligned source data for
1602         FORMAT_ARGB_MASK. (#117217)
1603
1604 Mon Aug 18 10:51:57 2003  Owen Taylor  <otaylor@redhat.com>
1605
1606         * configure.in: Rework handling of REBUILD_PNGS,
1607         so that we also don't try to REBUILD_PNGS when
1608         cross-compiling and there is no gdk-pixbuf-csource.
1609         But give an error if gtk/stock-icons/gtkstockpixbufs.h
1610         is not in the source tree. (Note that REBUILDS_PNG
1611         was set backwards before, which is why you always
1612         had to manually recreate gtkstockpixbufs.h!)
1613
1614 Mon Aug 18 10:19:55 2003  Owen Taylor  <otaylor@redhat.com>
1615
1616         * gtk+-2.0-uninstalled.pc.in: Add a missing gtk/ in the
1617         path to libgtk.la. (#120080, Benedikt Spranger)
1618
1619 Sat Aug 16 10:34:49 2003  Owen Taylor  <otaylor@redhat.com>
1620
1621         * modules/input/imcedilla.c: Make the list of default
1622         languages more comprehensive. (Suggestion of
1623         Fco. Javier F. Serrador)
1624
1625 Sat Aug  9 12:47:11 2003  Owen Taylor  <otaylor@redhat.com>
1626
1627         * gdk/gdk.c (gdk_arg_context_parse): Fix broken 
1628         parentheses when skipping args.
1629
1630 Sat Aug 16 16:22:23 2003  Kristian Rietveld  <kris@gtk.org>
1631
1632         Fix major bug in row ref handling, so the new combo box
1633         will actually work right (:. Bug #107748. Patch written
1634         with help from Tim Janik.
1635
1636         The basic idea is to update the row refs in a closure,
1637         before the actual signal is emitted (rather than having
1638         the model connect signal handlers).
1639
1640         * gtk/gtktreemodel.c (gtk_tree_model_base_init): change
1641         g_signal_new calls for row_inserted, row_deleted and
1642         rows_reordered to use the new marshallers,
1643         (row_inserted_marshall), (row_deleted_marshall),
1644         (rows_reordered_marshall): the new marshallers,
1645         (gtk_tree_row_ref_inserted_callback): renamed to
1646         gtk_tree_row_ref_inserted since it isn't a callback
1647         anymore and gets called by the marshaller now,
1648         (gtk_tree_row_ref_deleted_callback): likewise,
1649         (gtk_tree_row_ref_reordered_callback): likewise,
1650         (connect_ref_callbacks), (disconnect_ref_callbacks):
1651         removed,
1652         (gtk_tree_row_reference_new_proxy),
1653         (gtk_tree_row_reference_free),
1654         (gtk_tree_row_reference_inserted),
1655         (gtk_tree_row_reference_deleted),
1656         (gtk_tree_row_reference_reordered): updated.
1657
1658 Fri Aug 15 16:54:39 2003  Owen Taylor  <otaylor@redhat.com>
1659
1660         Improve Cedilla handling - based on a patch from Gustavo 
1661         De Nardin, #111334
1662
1663         * modules/input/imcedilla.c po/POTFILES.in: Input method that 
1664         produces C_WITH_CEDILLA rather than C_WITH_ACUTE for 
1665         dead_acute+c combinations. Make this the default for
1666         fr and pt.
1667
1668         * gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave): 
1669         Use LC_CTYPE instead of LC_MESSAGES to pick the default
1670         input method.
1671
1672 Fri Aug 15 17:00:19 2003  Owen Taylor  <otaylor@redhat.com>
1673
1674         * gtk/gtkimcontextsimple.c: Fix missing compose sequence
1675         for Multi_key+c+apostrophe.
1676
1677 Fri Aug 15 21:57:34 2003  Kristian Rietveld  <kris@gtk.org>
1678
1679         Merged from stable.
1680
1681         * gtk/gtktreeview.c (gtk_tree_view_adjustment_changed): stop editing
1682         on vertical scrolling. (#108035, reported by Tim Janik).
1683
1684 Fri Aug 15 20:06:42 2003  Kristian Rietveld  <kris@gtk.org>
1685
1686         Merged from stable.
1687
1688         * gtk/gtktreeview.c (gtk_tree_model_sort_row_changed),
1689         (gtk_tree_model_sort_level_find_insert),
1690         (gtk_tree_model_sort_insert_value): fix off-by-one error.
1691         (#109292 continued, patch from Yann Rouillard).
1692
1693 Fri Aug 15 19:43:14 2003  Kristian Rietveld  <kris@gtk.org>
1694
1695         (Note: This is not exactly the same as the patch which went in
1696          gtk-2-2).
1697
1698         * gtk/gtktreeview.c (gtk_tree_view_class_init),
1699         (gtk_tree_view_key_press), (gtk_tree_view_search_key_press_event):
1700         Also support the up, down, left, right, home, end, page up and
1701         page down keys on the numpad. (#119419, reported by Alex Larsson).
1702
1703 Fri Aug 15 12:34:04 2003  Owen Taylor  <otaylor@redhat.com>
1704
1705         Fixes for X/Cygwin builds of GTK+ (#107623, Masahiro Sakai):
1706
1707         * configure.in (GDK_DEP_LIBS_FOR_X): Make sure that
1708         we link libgtk against X explicitely, since we
1709         make GTK+ calls for plug/socket.
1710
1711         * gtk/queryimmodules.c: Use USE_LA_MODULES and 
1712         G_MODULE_SUFFIX here. 
1713
1714         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_image): Protect
1715         XShmPutImage with #ifdef USE_SHM.
1716
1717 Thu Aug 14 18:25:39 2003  Owen Taylor  <otaylor@redhat.com>
1718
1719         * gtk/gtkfilesel.c (gtk_file_selection_populate):
1720         Don't reposition the cursor when we aren't trying
1721         to complete. (Fixes problems with selection on
1722         startup, #108433, reported by Mark Finlay.)
1723
1724         * gtk/gtkfilesel.c (gtk_file_selection_populate): Remove
1725         code that tried to position the cursor after the common
1726         prefix when there was one, it wasn't working, and
1727         would be hard to fix. Just always put the cursor
1728         at the end when completing.
1729
1730 Thu Aug 14 17:58:23 2003  Owen Taylor  <otaylor@redhat.com>
1731
1732         * gtk/gtkfilesel.c (get_current_dir_utf8): If getting
1733         the current directory fails because of encoding
1734         conversion problems, walk up textually to parent
1735         directories until we can convert. (#113627)
1736
1737 Wed Aug 13 17:01:49 2003  Owen Taylor  <otaylor@redhat.com>
1738
1739         * gtk/gtkmenushell.[ch] (gtk_menu_shell_enter_notify):
1740         Remove usage of menu_shell->ignore leave which was
1741         to deal with stray events we no longer get because
1742         we do grabbing differently. Comment it as unused in
1743         the header. (#115837, Keith Bissett)
1744
1745 Wed Aug 13 16:32:43 2003  Owen Taylor  <otaylor@redhat.com>
1746
1747         * gtk/gtkmenu.c (gtk_menu_position, gtk_menu_window_size_request): 
1748         Fix some places that weren't properly Xinerama-ified.
1749
1750         * gtk/gtkmenu.c: Fix problem with windows that scroll
1751         at the top of the screen.
1752
1753 Wed Aug 13 11:34:53 2003  Owen Taylor  <otaylor@redhat.com>
1754
1755         * gtk/gtkcombo.c (gtk_combo_init): connect_after() to 
1756         key-press-event on the entry, so input methods get access to 
1757         key presses before GtkCombo customization.
1758         (#115451, Botond Botyanszki)
1759
1760 2003-08-13  Anders Carlsson  <andersca@gnome.org>
1761
1762         * tests/testtoolbar.c: (set_important_func), (important_toggled),
1763         (create_items_list):
1764         Add an important column.
1765         
1766 Tue Aug 12 15:00:15 2003  Owen Taylor  <otaylor@redhat.com>
1767
1768         * gtk/gtkwindow.c (gtk_window_real_set_focus): Protect
1769         against reentrancy from ::focus-out handlers. 
1770         (#118129, Felipe Heidrich)
1771
1772 Tue Aug 12 14:27:42 2003  Owen Taylor  <otaylor@redhat.com>
1773
1774         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Remove
1775         GDK_LOCK_MASK before calling
1776         gdk_keymap_translate_keyboard_state so bindings 
1777         and accelerators are independent of the Caps-lock
1778         key. (#115384, reported by Toni Willberg)
1779
1780 Mon Aug 11 12:07:14 2003  Owen Taylor  <otaylor@redhat.com>
1781
1782         * gdk/x11/gdkevents-x11.c (get_real_window): Add missing
1783         break statements (#119494, Soeren Sandmann)
1784
1785 Mon Aug 11 11:10:07 2003  Owen Taylor  <otaylor@redhat.com>
1786
1787         * gtk/gtkwidget.h: Mark parent public as well; it's
1788         extensively accessed in existing code, so there is
1789         no advantage in making people use get_parent().
1790         (Tweak to #119463 fix)
1791
1792 2003-08-11  Matthias Clasen  <maclas@gmx.de>
1793
1794         Add support for EWMH "Above" and "Below" window states.  (105100,
1795         Manuel Clos)
1796         
1797         * tests/testgtk.c: Add "Above" and "Below" to the the "Window
1798         State" demo.
1799
1800         * gtk/gtkwindow.h: Add gtk_window_set_keep_above and
1801         gtk_window_set_keep_below.
1802
1803         * gtk/gtk.def: Add gtk_window_set_keep_above and
1804         gtk_window_set_keep_below.
1805
1806         * gtk/gtkwindow.c (gtk_window_set_keep_below):
1807         (gtk_window_set_keep_above): New functions, call the corresponding
1808         gdk functions.
1809
1810         * gdk/x11/gdkwindow-x11.c (gdk_window_set_keep_below): New
1811         function, sets _NET_WM_STATE_BELOW.
1812         (gdk_window_set_keep_above): New function, sets
1813         _NET_WM_STATE_ABOVE.
1814
1815         * gdk/gdkwindow.h: Add gdk_window_set_keep_above and
1816         gdk_window_set_keep_below.
1817
1818         * gdk/gdkevents.h (GdkWindowState): Add GDK_WINDOW_STATE_ABOVE and
1819         GDK_WINDOW_STATE_BELOW.
1820
1821         * gdk/gdk.def: Add gdk_window_set_keep_above and
1822         gdk_window_set_keep_below.
1823
1824         * acinclude.m4: Copy newer versions of JH_CHECK_XML_CATALOG and
1825         JH_PATH_XML_CATALOG from gtk-doc to enable configuring without
1826         xmlcatalog in PATH.  (#119115)
1827
1828 2003-08-10  Matthias Clasen  <maclas@gmx.de>
1829
1830         * gtk/gtkwidget.h (struct _GtkWidget): Mark some members as
1831         public.  (#119463)
1832
1833 2003-08-09  Noah Levitt  <nlevitt@columbia.edu>
1834
1835         * gdk/gdkevents.h:
1836         * docs/reference/gdk/tmpl/windows.sgml: Elaborate a bit more in the
1837         docs on GdkFilterFunc and GdkFilterReturn.
1838
1839 2003-08-09  Matthias Clasen  <maclas@gmx.de>
1840
1841         * gtk/gtkcalendar.c:  Add and hook in gtk_calendar_scroll,
1842         to let the mouse wheels select the month. Scrolling down
1843         moves forward in time. (#53134, Abigail Brady) 
1844
1845         * gtk/gtkcalendar.c: Complete the RTL flipping support for
1846         GtkCalendar, make it possible to flip the headings using the
1847         "magic translated string" technique.  Translators, note the
1848         comment in gtk_calendar_init() explaining this.  (#102416)
1849
1850         * gtk/gtkcalendar.c: Get the information about the first day of
1851         the week from the locale using another instance of the "magic
1852         translated string" technique.  Ignore the display option
1853         GTK_CALENDAR_WEEK_START_MONDAY with a warning.  (#87977)
1854
1855         * gtk/gtkcalendar.c: Add DND support to GtkCalendar. The selected
1856         date is dragged as text, formatted via strftime %x. Text drops are
1857         accepted if g_date_set_parse() can make sense of the text. A
1858         dedicated data format for date DND has not been introduced yet,
1859         since there didn't seem to be sufficient consensus on such a
1860         format on xdg-list.  (#117297)
1861         
1862 2003-08-08  Matthias Clasen  <maclas@gmx.de>
1863
1864         * gdk/gdkregion-generic.c (gdk_region_spans_intersect_foreach):
1865         Fix a segfault.  (#115284, Jan Kratochvil)
1866
1867 2003-08-08  Tor Lillqvist  <tml@iki.fi>
1868
1869         * gdk/win32/gdkevents-win32.c (print_event): Print also the root
1870         coordinates for events that have such. Print coordinates for enter
1871         and leave events.
1872
1873         (gdk_event_translate): Don't use event uninitialixed in the
1874         return_exposes branch of the WM_PAINT handler.
1875
1876         * gdk/win32/gdkwindow-win32.c (gdk_window_new,
1877         _gdk_windowing_window_get_pointer, _gdk_windowing_window_at_pointer): 
1878         Must offset top-level window coordinates here, too.
1879
1880 2003-08-08  Matthias Clasen  <maclas@gmx.de>
1881
1882         * demos/gtk-demo/appwindow.c (do_appwindow): Hide the resize grip
1883         when maximized or fullscreen.
1884
1885 2003-08-07  Tor Lillqvist  <tml@iki.fi>
1886
1887         * gdk/win32/gdkinput-win32.h
1888         * gdk/win32/gdkinput-win32.c (_gdk_input_configure_event,
1889         _gdk_input_enter_event): Drop the GdkEvent* parameter, it wasn't
1890         used.
1891
1892         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Adapt caller
1893         accordingly, in fact an uninitialised variable was dereferenced.
1894         
1895
1896         [Win32] Add support for multiple monitors. 
1897         
1898         * gdk/win32/gdkprivate-win32.h
1899         * gdk/win32/gdkglobals-win32.c: New global variables for
1900         multiple-monitor info: _gdk_num_monitors, _gdk_monitors, and
1901         _gdk_offset_x and _gdk_offset_y.
1902         
1903         * gdk/win32/gdkdisplay-win32.c (count_monitor, enum_monitor): New
1904         functions, enumeration functions passed to EnumDisplayMonitors().
1905
1906         (gdk_display_open): If the EnumDisplayMonitors() and
1907         GetMonitorInfo() API is present (on Win98, Win2000 and newer), use
1908         if to find out monitor info.
1909
1910         Calculate the offset between Win32 coordinates (relative to the
1911         primary monitor's origin (and thus negative on monitors to the
1912         left of or above it), and GDK's (visible coordinates should be
1913         non-negative).
1914         
1915         * gdk/win32/gdkscreen-win32 (gdk_screen_get_n_monitors,
1916         gdk_screen_get_monitor_geometry): Use information collected above.
1917
1918         (gdk_window_move, gdk_window_move_resize_window_get_geometry):
1919         Subtract _gdk_offset_{x,y} from GDK root window coordinates.
1920
1921         (gdk_window_get_geometry, gdk_window_get_origin,
1922         gdk_window_get_frame_extents): For top-level windows, add
1923         _gdk_offset_{x,y} to GDK root window coordinates
1924
1925         Still need to handle multiple monitors in
1926         gdk_window_fullscreen(). Probably should make the window
1927         fullscreen on the monitor where the cursor is?
1928
1929         * gdk/win32/gdkevents-win32.c: Add _gdk_offset_{x,y} to all GDK
1930         root window coordinates in GdkEvents.
1931
1932         
1933         [Win32] Fix geometry hint handling. Add support for resize
1934         increment and base size, and aspect ratio geometry hints. The
1935         "gridded geometry" test in testgtk now works beautifully.
1936
1937         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
1938         Turns out this function shouldn't actually ever modify the
1939         window's size, just store the hints. (Old code kept for a while
1940         inside #if 0.)
1941
1942         (gdk_window_set_hints): Remove presumably broken code that handles
1943         the position hints, this function is obsolete anyway.
1944
1945         * gdk/win32/gdkevents-win32.c: Drop the current_{x,y}_root
1946         variables, not used.
1947
1948         (adjust_drag): New function, used to implement resize increment
1949         hints.
1950
1951         (gdk_event_translate): Handle WM_SIZING, implement resize
1952         increment and base size, and aspect ratio geometry hints here. The
1953         WM_GETMINMAXINFO handler takes care of the minimum and maximum
1954         size hints as before. Fix the WM_GETMINMAXINFO handler to take
1955         into account window decorations. No need to modify the
1956         ptMaxPosition and ptMaxSize fields in the MINMAXINFO struct,
1957         the defaults are fine.
1958         
1959         * gdk/win32/gdkprivate-win32.h 
1960         * gdk/win32/gdkwindow-win32.c (_gdk_win32_adjust_client_rect,
1961         _gdk_win32_get_adjusted_client_rect): New helper functions.
1962
1963 2003-08-07  Matthias Clasen  <maclas@gmx.de>
1964
1965         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed): Reset the
1966         toplevel->have_* flags before iterating over the _NET_WM_STATE 
1967         atoms.  (#119217) 
1968
1969 Thu Aug  7 16:49:29 2003  Owen Taylor  <otaylor@redhat.com>
1970  
1971         * gtk/gtkwidget.c (gtk_widget_set_style_internal): 
1972         Fix a bug where on theme change, resize/redraw wasn't
1973         properly getting queued on toplevel windows. (#116346,
1974         Rajkumar Siva)
1975  
1976         * gtk/gtkwidget.c (gtk_widget_invalidate_widget_windows): 
1977         Fix bug where wrong coordinates were used for toplevel
1978         window.
1979  
1980 Thu Aug  7 16:40:21 2003  Owen Taylor  <otaylor@redhat.com>
1981
1982         * gtk/gtknotebook.c (gtk_notebook_remove): Remove leftover
1983         page_num variable (Archit Baweja)
1984
1985 2003-08-07  Matthias Clasen  <maclas@gmx.de>
1986
1987         * gtk/gtkspinbutton.c (gtk_spin_button_default_input): Use g_strtod() to
1988         cope with C libraries with crippled locale support.  (#115293)
1989
1990 2003-08-07  Hans Breuer  <hans@breuer.org>
1991
1992         * gdk/win32/gdkevents-win32.c : finally use TrackMouseEvent
1993         (only if the new window not known to Gdk) to get proper
1994         leave notification, and get rid of the wrong placed 
1995         tooltips, bug #102283
1996  
1997         (gdk_event_translate) : small code reordering to not get
1998         GDK_MOTION_NOTIFY for still mouse and get back tooltips on 
1999         menus, bug #117367
2000
2001 2003-08-07  Tor Lillqvist  <tml@iki.fi>
2002
2003         * gdk/gdk.def
2004         * gdk/win32/gdkfont-win32.c (gdk_fontset_load_for_display): Add
2005         missing function, trivially implement.
2006
2007 2003-08-07  Matthias Clasen  <maclas@gmx.de>
2008
2009         * gtk/gtkctree.c (draw_row): Don't cut descenders when 
2010         rendering.  (#118646, Charles Kerr) 
2011
2012 2003-08-06  Hans Breuer  <hans@breuer.org>
2013
2014         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new) :
2015         initialize bits to 0 (probably default on NT)
2016
2017         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
2018         now it works as intended ;-)
2019
2020 2003-08-04  Hans Breuer  <hans@breuer.org>
2021
2022         * gdk/win32/gdkwindow-win32.c(gdk_window_set_modal_hint) :
2023         set HWND_NOTOPMOST for modal==FALSE, fixes bug #118435
2024
2025         * gdk/win32/gdkwindow-win32.c : implement gdk_window_[un]fullscreen
2026         (gdk_window_{move,resize,move_rezize})) : noop if FULLSCREEN
2027
2028         * gdk/win32/gdkwindow-win32.c (gdk_window_set_icon) :
2029         against all expectations it is basically ony a call with WM_SETICON
2030         needed (the visual effect is there, though colors or mask are
2031         still somewhat wrong).
2032         * gdk/win32/gdkwindow-win32.h : place to store the HICON
2033
2034         * gdk/win32/gdkdrawabke.win32.c : readded the conditional end
2035         pixel drawing as it was fixed at 1999-08-23
2036
2037         gtk/gtk.def : updated
2038
2039 Tue Aug  5 10:07:08 2003  Owen Taylor  <otaylor@redhat.com>
2040
2041         * gtk/gtkmessagedialog.c (gtk_message_dialog_get_property): 
2042         Add a missing break. (#119156, Callum McKenzie)
2043
2044 Tue Aug  5 00:24:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2045
2046         * gtk/gtkmenu.c (gtk_menu_position): New positioning
2047         algorithm.(#116649)
2048
2049 Fri Aug  1 15:26:46 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2050
2051         * gtk/gtktoolbar.c, gtk/toolitem.c: add new "is_important"
2052         property
2053         
2054         * gtk/gtkradiotoolbutton.c
2055         (gtk_radio_tool_button_new_from_widget): Don't take a stock id
2056
2057         * gtk/gtkradiotoolbutton.c
2058         (gtk_radio_tool_button_new_with_stock_from_widget): make this
2059         function take a stock_id.
2060
2061         * gtk/toolbar: documentation
2062
2063 Mon Aug  4 14:53:46 2003  Owen Taylor  <otaylor@redhat.com>
2064
2065         * gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init): 
2066         Fix problem where use_xshm was getting set wrong if
2067         MIT_SHM wasn't found. (George Lebel)
2068
2069 2003-08-04  Tor Lillqvist  <tml@iki.fi
2070
2071         * gdk/win32/gdkevents-win32.c (apply_filters): Fix braino:
2072         actually use the passed-in filter list. The function also needs a
2073         GdkWindow parameter, as filter functions expect
2074         GdkEvent::any.window to be valid. (#119034, Hans Breuer)
2075
2076 2003-08-03  Matthias Clasen  <maclas@gmx.de>
2077
2078         * gdk/x11/gdkscreen-x11.c (gdk_screen_get_n_monitors): 
2079         (gdk_screen_get_monitor_geometry): Improve wording of the docs, avoid
2080         the term "virtual screen".  (#119030, Tor Lillquist)
2081
2082 2003-08-02  Matthias Clasen  <maclas@gmx.de>
2083
2084         * tests/testtext.c (test_init): 
2085         * tests/testgtk.c (test_init): 
2086         * tests/testdnd.c (test_init): 
2087         * demos/pixbuf-init.c (pixbuf_init): 
2088         * demos/gtk-demo/main.c (main): Use g_setenv().
2089
2090         * gdk/x11/gdkdisplay-x11.c (_gdk_windowing_set_default_display): Use
2091         g_unsetenv(). 
2092
2093 Sat Aug  2 12:53:16 2003  Owen Taylor  <otaylor@redhat.com>
2094
2095         * configure.in: Requires glib-2.3.0, pango-1.2.0.
2096
2097         * configure.in: Require Xft version 2,
2098         remove code for handling older versions of pango and Xft.
2099         Many miscellaneous improvements to X checks
2100
2101         * acinclude.m4: Add GTK_ADD_LIB() macro for adding 
2102         a library to a variable, avoiding dups.
2103
2104         * gdk/x11/gdkfont-x11.c (gdk_font_from_description_for_display): 
2105         Always load "fixed"
2106
2107         * gdk/x11/gdk*-x11.[ch]: Remove support for Xft1 and
2108         for pangox.
2109
2110 2003-08-02  Matthias Clasen  <maclas@gmx.de>
2111
2112         * gtk/gtkcolorsel.c (color_sample_drop_handle) 
2113         (palette_drop_handle): 
2114         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  Accept
2115         drops with the wrong format, since the KDE color chooser incorrectly
2116         drops application/x-color with format 8.  (#118810)
2117
2118         * gtk/gtkcolorsel.c (color_sample_drop_handle) (palette_drop_handle): 
2119         * gtk/gtkcolorbutton.c (gtk_color_button_drag_data_received):  
2120         Accept drops with the wrong format, since the KDE color chooser 
2121         incorrectly drops application/x-color with format 8.  (#118810)
2122
2123 2003-08-02  Tor Lillqvist  <tml@iki.fi>
2124
2125         Fix gdk/win32 window geometry handling again. The window position
2126         in a GDK_CONFIGURE event should be that of the client area, not of
2127         the window decorations. (I was confused by the term "window
2128         border" in X11. It does *not* mean the window manager
2129         decorations. There are no X11-style window borders in Win32.)
2130         Also, this time do take the geometry hints into account
2131         appropriately when moving windows. Now testgtk's gravity test's
2132         move buttons work OK. There are stil problems with taking gravity
2133         into account when showing a hidden window.
2134
2135         * gdk/win32/gdkwindow-win32.h: Keep a whole GdkGeometry as hints
2136         instead of separate fields.
2137         
2138         * gdk/win32/gdkevents-win32.c (handle_configure_event): Don't
2139         adjust for decorations.
2140
2141         * gdk/win32/gdkwindow-win32.c (get_outer_rect,
2142         adjust_for_gravity_hints): New functions.
2143         (gdk_window_move, gdk_window_resize, gdk_window_move_resize): Use
2144         above functions, take geometry hints into account.
2145         (gdk_window_set_geometry_hints): Size hints specicy client area,
2146         not including decorations.
2147
2148 Fri Aug  1 17:10:22 2003  Owen Taylor  <otaylor@redhat.com>
2149
2150         * gtk/gtkfilesel.c (cmpl_completion_fullname): Always
2151         return an absolute path (#115590), fix a problem where
2152         you could crash the file selector with a looong name
2153         by returning a newly allocated buffer.
2154
2155 Fri Aug  1 16:44:51 2003  Owen Taylor  <otaylor@redhat.com>
2156
2157         * gtk/gtkfilesel.c (update_cmpl): Fix obvious reallocation
2158         bug in rarely or never hit code path (#118071,
2159         Tor Lillqvist)
2160
2161 Fri Aug  1 16:30:13 2003  Owen Taylor  <otaylor@redhat.com>
2162
2163         * gdk/x11/gdkdrawable-x11.c (_gdk_x11_have_render): 
2164         If the check for missing depths, try actually creating pixmaps
2165         of the depths to deal with Xinerama not reporting
2166         all the depths it should. (#115822)
2167
2168 Fri Aug  1 15:33:59 2003  Owen Taylor  <otaylor@redhat.com>
2169
2170         * gtk/gtksocket.c: Patch from Denis Mikhalkin to
2171         forward KeyRelease events as well as KeyPress events.
2172         (#115597)
2173
2174 Fri Aug  1 15:06:25 2003  Owen Taylor  <otaylor@redhat.com>
2175  
2176         * gdk/gdk.c (gdk_parse_args): g_set_prgname("<unknown>")
2177         if argc is 0 as well, instead of leaving it unset.
2178         (#116023, Michael Meeks)
2179  
2180 Thu Jul 31 23:09:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2181
2182         * gtk/gtktoolbar.c (gtk_toolbar_class_init): make show_arrow
2183         default to TRUE; ignore the property when api_mode != NEW_API
2184
2185 2003-07-31  Matthias Clasen  <maclas@gmx.de>
2186
2187         * gtk/gtkwindow.c (gtk_window_set_default_icon): Rename parameter pixbuf
2188         to icon, to pacify gtk-doc.
2189
2190         * gtk/gtkwidget.c (gtk_widget_class_init): Fix formatting of drag-motion 
2191         example. 
2192
2193 Thu Jul 31 15:33:33 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2194
2195         * gtk/gtk*tool*.h: add padding to subclasses of GtkToolItem
2196
2197 Thu Jul 31 15:29:28 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2198
2199         * gtk/gtktoolitem.c (struct _GtkToolItemPrivate): remove unused
2200         overflow_item field.
2201
2202 Wed Jul 30 21:11:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2203
2204         * gtk/gtktoolitem.h: make _gtk_tool_item_toolbar_reconfigured()
2205         an internal function
2206
2207         * gtk/gtktoolitem.h: remove unused declaration of
2208         _gtk_tool_item_get_drag_window().
2209
2210 Wed Jul 30 17:03:58 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2211
2212         * gtk/gtktoolbutton.[ch]:
2213         (gtk_tool_button_new): swap icon_widget and label arguments to
2214         match BonoboUIToolbarButton.
2215
2216         * gtk/gtktoolbar.h: un-deprecate gtk_toolbar_{set|unset}_style().
2217
2218 2003-07-30  Matthias Clasen  <maclas@gmx.de>
2219
2220         * gtk/gtkwidget.c (gtk_widget_class_init): Some updates to the DND
2221         signal docs. 
2222
2223 2003-07-29  Tor Lillqvist  <tml@iki.fi>
2224
2225         Fix for #108007, #112402, #117042: There was confusion in
2226         gdk/win32 at various places whether a window position refers to
2227         the decoration position or the client area position. Also whether
2228         window size includes decorations or not.
2229         
2230         The correct interpretation apparently is that in GDK (like in
2231         X11), a top-level window position means the decoration's position,
2232         but size means the window's inner size (client area size). In the
2233         Win32 API, the window size usually includes the decorations,
2234         though.
2235         
2236         * gdk/win32/gdkevents-win32.c (decode_key_lparam): Move inside
2237         #ifdef G_ENABLE_DEBUG.
2238         (handle_configure_event): New function, generates GDK_CONFIGURE
2239         events from WM_SIZE and WM_MOVE messages. Even if no event is
2240         generated because of the event mask, still set the private
2241         position and size fields. Calculate position and size correctly.
2242         (gdk_event_translate): Call handle_configure_event().
2243
2244         * gdk/win32/gdkgeometry-win32.c: Cosmetics.
2245
2246         * gdk/win32/gdkwindow-win32.c: Use GDI_CALL() and API_CALL()
2247         macros. Cosmetic debugging output changes.
2248         (SafeAdjustWindowRectEx): Remove. If an application wants to
2249         locate a window outside of the screen, it's not GDK's business to
2250         prevent it. And anyway, with multiple monitors, negative
2251         coordinates are perfectly normal.
2252         (gdk_window_new): Adjust the window size for decorations after
2253         _gdk_window_init_position() has done its job. (But the big window
2254         code currently is presumably broken on Win32 anyway.)
2255         (gdk_window_move): The position passed in is supposed to be that
2256         of the window border, so don't need to adjust for decorations.
2257         (gdk_window_resize, gdk_window_move_resize): Simplify somewhat.
2258
2259 Tue Jul 29 13:55:44 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2260
2261         * gtk/gtktoolbar.c (gtk_toolbar_set_style,
2262         gtk_toolbar_prepend_element, gtk_toolbar_append_element,
2263         gtk_toolbar_insert_space, gtk_toolbar_prepend_space,
2264         gtk_toolbar_append_space, gtk_toolbar_insert_item,
2265         gtk_toolbar_prepend_item, gtk_toolbar_append_item,
2266         gtk_toolbar_set_tooltips, gtk_toolbar_set_orientation,
2267         gtk_toolbar_new, gtk_toolbar_prepend_item):
2268
2269         Move documentation inline from template files.
2270
2271         * gtk/gtktoolbar.c (gtk_toolbar_insert_element,
2272         gtk_toolbar_insert_widget, gtk_toolbar_prepend_widget,
2273         gtk_toolbar_append_widget, gtk_toolbar_remove_space,
2274         gtk_toolbar_insert_stock, gtk_toolbar_unset_icon_size,
2275         gtk_toolbar_get_icon_size, gtk_toolbar_set_icon_size,
2276         gtk_toolbar_get_tooltips, gtk_toolbar_unset_style,
2277         gtk_toolbar_get_style, gtk_toolbar_get_orientation)
2278
2279         Copy documentation from stable that was added after the EggToolbar
2280         branched.
2281
2282         * gtk/gtktoolbar.h: deprecate gtk_toolbar_unset_icon_size()
2283
2284 Mon Jul 28 18:21:34 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2285
2286         * gtk+/docs/: Commit autogenerated changes, so patches will make
2287         sense.
2288
2289 2003-07-27  Tor Lillqvist  <tml@iki.fi>
2290
2291         * gdk/win32/gdkevents-win32.c (build_key_event_state): On Win9x,
2292         the keyboard state returned by GetKeyboardState() doesn't
2293         distinguish between the left and right Control and Alt keys. Thus
2294         we cannot detect AltGr (which is supposed to be left Control +
2295         right Alt) the same way as on NT-based systems, but have to accept
2296         either Control + either Alt as AltGr.
2297
2298 2003-07-27  Matthias Clasen  <maclas@gmx.de>
2299
2300         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2301         Fix function name in warning message.  (#118156, Tim-Philipp
2302         Mller)
2303
2304         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property):
2305         is-expander and is-expanded are boolean properties, not ints.
2306         (#118359, Josh Parsons)
2307
2308 Sat Jul 26 15:21:27 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2309
2310         * gtk/gtkimagemenuitem.c
2311         (gtk_image_menu_item_toggle_size_request): don't request
2312         toggle_space when the image width is 0.
2313
2314 2003-07-25  Tor Lillqvist  <tml@iki.fi>
2315
2316         * gdk/win32/gdkprivate-win32.h
2317         * gdk/win32/gdkglobals-win32.c: New flags _gdk_input_locale_is_ime
2318         and _gdk_keyboard_has_altgr.
2319         
2320         * gdk/win32/gdkevents-win32.c: Lots of changes. Most important
2321         ones detailled here.
2322
2323         Code that has been ifdeffed out for a long time removed. Remove
2324         some really old doc comments that were left behind for some public
2325         functions, the official ones are in the X11 backend anyway. Change
2326         GDK_WINDOW_OBJECT() calls to GdkWindowObject casts. Reformat
2327         multi-line boolean expressions to have the operators at ends of
2328         lines.
2329
2330         As mouse capture with SetCapture() indeed seems to work OK, no
2331         need to have the correspoinding macro USE_SETCAPTURE and ifdefs.
2332
2333         Ifdef out the gdk-ping-msg stuff. I don't remember why it was
2334         needed at some time, and things seem to work fine now without
2335         (knock on wood).
2336
2337         Ifdef out the search for some Latin locale keyboard layout being
2338         loaded. Not used currently, but might be needed after all, if we
2339         decide that we want to be able to generate ASCII control character
2340         events with a non-Latin keyboard.
2341
2342         (assign_object): New helper function, handles the g_object_ref()
2343         and unref() calls when assigning GObject pointers.
2344                 
2345         (generate_crossing_events): Also generate the GDK_NOTIFY_INTERIOR
2346         enter event when the pointer has moved to an ancestor window. Was
2347         left out by mistake.
2348
2349         (gdk_window_is_ancestor): Renamed from gdk_window_is_child().
2350
2351         (gdk_pointer_grab, gdk_pointer_ungrab): Implement the confine_to
2352         functionality, using ClipCursor().
2353                 
2354         (find_window_for_mouse_event): Splice part of code into new
2355         function find_real_window_for_grabbed_mouse_event().
2356
2357         (fixup_event, append_event, apply_filters): New functions, code
2358         refactored out from elsewhere.
2359
2360         (synthesize_enter_or_leave_event, synthesize_leave_event,
2361         synthesize_enter_event,
2362         synthesize_leave_events,synthesize_enter_events): Also take a
2363         GdkCrossingMode parameter, in preparation to generating
2364         GDK_CROSSING_GRAB and GDK_CROSSING_UNGRAB events.
2365
2366         (fixup_event, append_event, fill_key_event_string): New functions,
2367         code refactoring.
2368
2369         (vk_from_char, build_keypress_event, build_keyrelease_event):
2370         Removed as part of dropping WM_CHAR handling.
2371
2372         (build_key_event_state,gdk_event_translate): Call
2373         GetKeyboardState(), once, for each keyboard message, instead of
2374         several calls to GetKeyState() here and there.
2375
2376         (gdk_event_translate): Fix bugs #104516, #104662, #115902. While
2377         at it, do some major refactoring, and some fixes for potential
2378         problems noticed while going through the code.
2379
2380         Don't handle WM_CHAR at all. Only handle WM_KEYDOWN and
2381         WM_KEYUP. Don't need the state variables related to whether to
2382         wait for WM_CHAR or not, and whether the current key is
2383         AltGr. Remove lots of complexity. Thus don't need the
2384         use_ime_composition flag.
2385
2386         Not handling WM_CHAR means dead key handling will have to be taken
2387         care of by GTK, but that seems to work fine, so no worry.
2388
2389         Another side-effect is that Alt+keypad digits don't work any
2390         longer, but it's better to learn to use GTK's ISO14755 support is
2391         anyway.
2392
2393         Be more careful in checking whether AltGr is involved. Only
2394         attempt to handle it if the keyboard actually has it. And
2395         explicitly check for *left* Control plus *right* Alt being
2396         pressed. Still, allow (left) Alt and/or (right) Control with AltGr
2397         chars.
2398
2399         Handle keys using similar code as in the X11 backend. As we have
2400         built a keymap in gdkkeys-win32.c anyway, use it by calling
2401         gdk_keymap_translate_keyboard_state() to look up the keysym from
2402         the virtual key code and keyboard state. Build the key event
2403         string in exactly the same way as the X11 backend.
2404
2405         If an IME is being used, don't generate GDK events for keys
2406         between receiving WM_IME_STARTCOMPOSITION and
2407         WM_IME_ENDCOMPOSITION, as those keys are for the IME.
2408         
2409         For WM_IME_COMPOSITION, handle all the Unicode chars returned from
2410         the IME, not just the first one.
2411
2412         gdk_event_translate() is still quite complex, could split the
2413         message handler cases out into separate functions.
2414
2415         On mouse events, when the mouse is grabbed, use
2416         find_real_window_for_grabbed_mouse_event() in order to be able to
2417         generate correct crossing events.
2418         
2419         No longer take a pre-allocated GdkEvent as parameter. Instead,
2420         allocate events as needed and append them to the queue. (This is
2421         different from how gdk_event_translate() in the X11 backend
2422         works.) This change made the code much clearer, especially in the
2423         cases where we have to generate several GDK events for one Windows
2424         message.  Return FALSE if DefWindowProc() should be called, TRUE
2425         if not. If DefWindowProc() should not be called, also return the
2426         value to be returned from the window procedure.
2427
2428         (Previously, the interaction with gdk_event_translate()'s caller
2429         was much more complex, when we had to indicate whether the
2430         already-queued event should be left in the queue or removed, and
2431         in addition also had to indicate whether to call DefWindowProc()
2432         or not, and what value to return from the window procedure if
2433         not.)
2434
2435         Don't use a separate "private" variable required to be pointing to
2436         the GdkWindowObject of the "window" variable at all times. Just
2437         use casts, even if looks a bit uglier.
2438
2439         Notice destroyed windows as early as possible, and break out of
2440         the messsage switch.
2441
2442         Use _gdk_pointer_root as current_window when the pointer is
2443         outside GDK's top-level windows.
2444         
2445         On WM_INPUTLANGCHANGE, set _gdk_input_locale_is_ime as
2446         appropriate, based on ImmIsIME().
2447         
2448         (gdk_event_translate, gdk_event_send_client_message_for_display,
2449         gdk_screen_broadcast_client_message): Implement client messages.
2450         Use a registered Windows message to pass GDK client messages. Note
2451         that the amount of user data is restricted to four bytes, as it is
2452         carried in the LPARAM. (The WPARAM is used for the message type
2453         "atom".)
2454         
2455         (real_window_procedure): Adapt for new gdk_event_translate()
2456         interface.
2457
2458         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Set
2459         _gdk_input_locale_is_ime initially.
2460
2461         * gdk/win32/gdkwindow-win32.c: Use g_object_ref()/unref() instead
2462         of g_colormap_ref()/unref().
2463
2464         (gdk_window_new): Made code a bit more like the X11 one, pretend
2465         to handle screens (although we just have one for now).
2466
2467         * gdk/x11/gdkevents-x11.c
2468         (gdk_event_send_client_message_for_display,
2469         gdk_screen_broadcast_client_message): Document the user data
2470         limitation on Win32.
2471
2472         * gdk/win32/gdkevents-win32.c (print_event): More complete enter
2473         and leave notify detail output.
2474
2475         * gdk/win32/gdkkeys-win32.c (update_keymap): Make dead keys
2476         visible to GDK and GTK. Store the corresponding GDK_dead_* keysym
2477         for those, so that the GtkIMContextCimple compose tables will
2478         work. Deduce if the keyboard layout has the AltGr key, and set the
2479         above flag accordingly.
2480
2481 2003-07-26  Matthias Clasen  <maclas@gmx.de>
2482
2483         * gtk/gtkwidget.c: Document DND signals.
2484
2485 2003-07-24  Matthias Clasen  <maclas@gmx.de>
2486
2487         * gtk/gtktextview.c (popup_targets_received): Make the "Input Methods"
2488         insensitive when editing isn't possible.  (#118150)
2489
2490 2003-07-23  Matthias Clasen  <maclas@gmx.de>
2491
2492         * gtk/gtkcolorsel.c (gtk_color_selection_init): Make the hue 
2493         spinbutton wrap.  (#118097, John Darrington)
2494
2495         * docs/faq/gtk-faq.sgml: Mention Xnest as a way to debug GTK+ apps. 
2496
2497 2003-07-20  Hans Breuer  <hans@breuer.org>
2498
2499         * makefile.msc : new file to build it all
2500         * Makefile.am : ... added to EXTRA_DIST
2501
2502         * gdk/makefile.msc gtk/stock-icons/makefile.msc 
2503           gtk/makefile.msc.in tests/makefile.msc : updated
2504
2505         * gdk/gdk.def gtk/gtk.def : export a bunch of new 
2506         functions
2507
2508         * gtk/gtkbbox.c : use g_return_val_if_fail() if
2509         there is a value to return
2510
2511         * gtk/gtkfontsel.c gtk/gtkiconfactory.c :
2512         static correctness
2513
2514         * gtk/gtkicontheme.c : ported to use GTimeVal instead of
2515         struct timeval and GTK_DATA_PREFIX instead of GTK_DATADIR
2516
2517         * gtk/gtkicontheme.c : use HAVE_LC_MESSAGES
2518
2519         * gtk/gtkimmulticontext.c : use gtkprivate.h
2520
2521         * gtk/stock-icons/stock_color_picker_25.png
2522           gtk/stock-icons/stock_jump_to_rtl_16.png
2523           gtk/stock-icons/stock_jump_to_rtl_24.png
2524           gtk/stock-icons/stock_redo_rtl_16.png
2525           gtk/stock-icons/stock_redo_rtl_24.png
2526           gtk/stock-icons/stock_undelete_rtl_16.png
2527           gtk/stock-icons/stock_undelete_rtl_24.png
2528           gtk/stock-icons/stock_undo_rtl_16.png :
2529           gtk/stock-icons/stock_undo_rtl_24.png :
2530         readded as binary
2531
2532 Sat Jul 19 22:39:24 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2533
2534         * gtk/gtktoolitem.c (gtk_tool_item_size_request): remove
2535         leftover request of {xy}thickness
2536
2537 Sat Jul 19 16:26:02 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2538
2539         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): don't
2540         attempt to add a NULL icon to the box.
2541
2542 Sat Jul 19 12:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2543
2544         * gtk/gtknotebook.c (gtk_notebook_focus_in|out): only redraw tabs
2545         on focus in/out.
2546
2547 2003-07-19  Matthias Clasen  <maclas@gmx.de>
2548
2549         * gtk/gtkstock.h (GTK_STOCK_DIALOG_AUTHENTICATION): New stock id. 
2550         * gtk/gtkiconfactory.c (get_default_icons): Add
2551         stock_dialog_authentication_48.  (#65765) 
2552         * gtk/stock-icons/Makefile.am (VARIABLES2, IMAGES): Here too.
2553         * gtk/stock-icons/stock_dialog_authentication_48.png: New image.
2554
2555         * gtk/gtkbbox.h: 
2556         * gtk/gtkbbox.c (gtk_button_box_get_child_secondary): New
2557         function. (#64562) 
2558
2559 Sat Jul 19 00:18:40 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2560
2561         * gtk/gtkwindow.c (gtk_window_set_default_icon): Fix C99
2562         declaration
2563
2564         * gtk/gtkwidget.c (gtk_widget_queue_shallow_draw): new function
2565         (gtk_widget_real_focus_{in|out}_event): queue shallow draws
2566         instead of full draws.
2567
2568 2003-07-18  Matthias Clasen  <maclas@gmx.de>
2569
2570         * gtk/gtkwindow.c: Add properties decorated and gravity.  (#80234) 
2571
2572         * gtk/gtktextview.c (gtk_text_view_class_init): Add a new keybinding
2573         signal, move_viewport. 
2574         (gtk_text_view_move_viewport): New function which implements the
2575         move_viewport functionality. 
2576         (gtk_text_view_move_cursor_internal): If the cursor is not visible, move
2577         the viewport. (#78669) 
2578
2579         * gtk/gtkenums.h (GtkScrollStep): New enumeration, used for
2580         move_viewport argument. 
2581
2582         * gtk/gtkstatusbar.c (gtk_statusbar_class_init): Add a has_resize_grip
2583         property.  (#111779) 
2584
2585         * gtk/gtkwindow.h: 
2586         * gtk/gtkwindow.c (gtk_window_set_default_icon): New method.  (#95816)
2587
2588         * gtk/gtkmessagedialog.h:
2589         * gtk/gtkmessagedialog.c (gtk_message_dialog_add_buttons): New method.  
2590         (#65501, Sebastian Rittau)
2591
2592 Fri Jul 18 20:06:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2593
2594         * gtk/gtktextview.c (changed_handler): use
2595         gtk_widget_queue_resize_noredraw().
2596
2597 2003-07-16  Jody Goldberg <jody@gnome.org>
2598
2599         * gdk/x11/gdkwindow-x11.c (gdk_window_focus) : fix cut-n-paste-o
2600
2601 Fri Jul 18 19:55:50 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2602
2603         * gtk/gtkwidget.c (gtk_widget_queue_resize_no_redraw): Add this
2604         API. 
2605
2606 Fri Jul 18 18:43:01 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2607
2608         By popular request give toolbuttons a border.
2609         
2610         * gtk/gtktoolitem.c
2611         (gtk_tool_item_size_allocate):
2612         (gtk_tool_item_size_request): don't request and allocate a border
2613         around the child
2614
2615         * gtk/gtktoolbutton.c 
2616         (gtk_tool_button_size_allocate):
2617         (gtk_tool_button_size_request): remove these functions
2618
2619         * gtk/gtktoolbar.c 
2620         (gtk_toolbar_size_request):
2621         (gtk_toolbar_size_allocate): request and allocate a border if we
2622         have a shadow.
2623
2624 Thu Jul 17 19:24:51 2003  Kristian Rietveld  <kris@gtk.org>
2625
2626         Merged from stable.
2627
2628         Fixes issues pointed out by Morten Welinder in #115140.
2629
2630         * gtk/gtktreeview.c (gtk_tree_view_size_request): fix comment,
2631         (do_validate_rows): update validated_area with a logic OR instead
2632         of a bitwise OR,
2633         (validate_rows_handler): make the if statement match the one in
2634         validate_rows(), so we don't leak the timeout.
2635
2636 Thu Jul 17 19:12:02 2003  Kristian Rietveld  <kris@gtk.org>
2637
2638         Merged from stable.
2639
2640         * gtk/gtktreeview.c (gtk_tree_view_remove_widget): the treeview
2641         should only grab focus back if the "cell_editable" widget still
2642         has focus. (Fixes #110104, testcase provided by Marco Pesenti
2643         Gritti).
2644
2645 Thu Jul 17 19:06:34 2003  Kristian Rietveld  <kris@gtk.org>
2646
2647         Merged from stable.
2648
2649         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
2650         Don't set attr.event_mask twice, those things were meant to be
2651         ORred. (#115139, pointed out by Morten Welinder).
2652
2653 Thu Jul 17 16:11:21 2003  Kristian Rietveld  <kris@gtk.org>
2654
2655         Merged from stable.
2656
2657         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): stop editing
2658         if needed. (Fixes #115869, reported by Michael Natterer).
2659
2660 2003-07-15  Matthias Clasen  <maclas@gmx.de>
2661
2662         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
2663         Fight against gtk-doc stupidity.
2664
2665 2003-07-13  Matthias Clasen  <maclas@gmx.de>
2666
2667         * gtk/gtkdnd.c (gtk_drag_begin): Rename parameter target_list back to 
2668         targets, to pacify gtk-doc.
2669
2670 Sun Jul 13 15:57:57 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2671
2672         * gtk/gtktoolbutton.c (gtk_tool_button_finalize): Fix leaks of
2673         label_text, label_widget and icon_widget. (#117312, 
2674         Christian Persch)
2675         
2676 Sun Jul 13 01:37:51 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2677
2678         * gtk/gtkmenu.c (gtk_menu_class_init): new properties
2679         "horizontal-offset" and "vertical-offset" that determines the
2680         position of the menu when it is a submenu. 
2681
2682         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): position
2683         submenus according to new vertical- and horizontal-offset
2684         properties.
2685
2686 Sat Jul 12 16:16:04 2003  Kristian Rietveld  <kris@gtk.org>
2687
2688         Merged from stable.
2689
2690         * gtk/gtktreeview.c (gtk_tree_view_drag_data_received): special
2691         case drags to "0", scroll to the top after dropping. (Fixes #94968,
2692         reported by Alp Toker).
2693
2694 Sat Jul 12 16:08:32 2003  Kristian Rietveld  <kris@gtk.org>
2695
2696         Merged from stable.
2697
2698         * demos/gtk-demo/editable_cells.c (cell_edited): fixup bad
2699         code (#115784, Owen Taylor).
2700
2701 Sat Jul 12 16:01:03 2003  Kristian Rietveld  <kris@gtk.org>
2702
2703         Merged from stable.
2704
2705         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_set_property):
2706         free the old text and extra_attrs *after* we parsed the new
2707         markup string. (Fixes #114485, reported by Owen Taylor).
2708
2709 Sat Jul 12 15:51:33 2003  Kristian Rietveld  <kris@gtk.org>
2710
2711         Merged from stable.
2712
2713         Fixes #113904, testcase provided by Rene Seindal.
2714
2715         * gtk/gtktreeview.c (gtk_tree_view_button_press): set
2716         pressed_button to -1 when a row has been activated,
2717         (gtk_tree_view_motion_bin_window): only start a drag if there's
2718         a button being pressed.
2719
2720 Sat Jul 12 15:51:18 2003  Kristian Rietveld  <kris@gtk.org>
2721
2722         Merged from stable.
2723
2724         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): use
2725         gdk_window_get_pointer instead of gdk_display_get_window_at_pointer
2726         to avoid a roundtrip (#110272, Owen Taylor).
2727
2728 Sat Jul 12 15:28:26 2003  Kristian Rietveld  <kris@gtk.org>
2729
2730         Merged from stable.
2731
2732         This patch really really fixes scrolling. Related bugs: #81627,
2733         testcase provided by Timo Sirainen, #111500, testcase provided by
2734         manu, #113241, reported by Pedro Gimeno/Michael Natterer.
2735
2736         * gtk/gtktreeview.c (validate_visible_area): scrolling to a dy
2737         which is equal to the lower border of the window means scrolling
2738         to an invisible row, always update the dy when scrolling to an
2739         invisible row, corrected area_above/below calculations for
2740         invisible rows, when walking the tree correct the size
2741         subtracted for invalidated rows, fix wrong logic in comment.
2742
2743 2003-07-11  Matthias Clasen  <maclas@gmx.de>
2744
2745         * gtk/gtkicontheme.c (pixbuf_supports_svg): Use g_strfreev() to free
2746         mime_types.  (#117219, Steve Chaplin)
2747
2748 Tue Jul  8 20:11:04 2003  Owen Taylor  <otaylor@redhat.com>
2749
2750         * gdk/x11/gdkevents-x11.c (get_real_window)
2751         gdk/x11/gdkinput-x11.c (_gdk_input_common_init)
2752         gdk/x11/gdkimage-x11.c (_gdk_windowing_image_init)
2753         gdk/x11/gdkprivate-x11.h (_gdk_windowing_image_init)
2754         Don't assume that all events start with XEventAny - Xkb events
2755         don't! (#105745). So, only do that for core events, and for
2756         non-core events, add a system for registering event types
2757         that start with XEventAny.
2758
2759         * gdk/x11/gdkevents-x11.c (gdk_event_translate):
2760         Check to see if the result of gdk_window_lookup_for_display()
2761         is actually a window.
2762
2763 Fri Jul 11 20:48:14 2003  Kristian Rietveld  <kris@gtk.org>
2764
2765         * gtk/gtktreemodel.c (gtk_tree_path_free): make the path != NULL
2766         check a silent assert, so it follows the g_free() behaviour.
2767
2768 2003-07-11  Matthias Clasen  <maclas@gmx.de>
2769
2770         * gtk/gtkstatusbar.c (gtk_statusbar_init): Center statusbar contents 
2771         vertically.  (#109823, Joe Shaw)
2772
2773 2003-07-11  Morten Welinder  <terra@gnome.org>
2774
2775         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixbuf): Fix memory
2776         access error.  (#69436)
2777
2778 Fri Jul 11 14:32:43 2003  Kristian Rietveld  <kris@gtk.org>
2779
2780         Landing GtkTreeModelFilter and the completion code. (Test program
2781         and documentation will follow next week).
2782
2783         * gtk/gtkcellayout.[ch], gtk/gtkentrycompletion.[ch],
2784         gtk/gtktreemodelfilter.[ch], gtk/gtkentryprivate.h: new files.
2785
2786         * gtkentry.[ch]: added gtk_entry_{get,set}_completion, wrote
2787         necessary code to hook up completion.
2788
2789         * gtktreeviewcolumn.c: made GtkTreeViewColumn implement the new
2790         GtkCellLayout interface.
2791
2792         * gtkmarshalers.list: added BOOLEAN:OBJECT,BOXED.
2793
2794         * gtk/gtk.h, gtk/Makefile.am, po/POTFILES.in: all updated for the new
2795         source files.
2796
2797 Wed Jul  9 19:48:26 2003  Kristian Rietveld  <kris@gtk.org>
2798
2799         Merge from stable.
2800
2801         * gdk/gdkdisplay.c (gdk_display_get_window_at_pointer): don't
2802         directly return from ->window_at_pointer, but set win_x and win_y
2803         first if needed. (Fixes #110166, reported by Arno Charlet).
2804
2805         * gdk/gdkwindow.c (gdk_window_get_composite_drawable): change
2806         function to accept GdkDrawables and not just GdkWindows. This was
2807         already done in some other functions a while back, but this patch
2808         got lost for some reason.
2809
2810 2003-07-09  Matthias Clasen  <maclas@gmx.de>
2811
2812         * gtk/gtkcontainer.c (gtk_container_focus_sort_tab): Consider the text
2813         direction when sorting children.  (#116540, Soeren Sandmann)
2814
2815 Tue Jul  8 17:36:21 2003  Owen Taylor  <otaylor@redhat.com>
2816
2817         * gdk/x11/gdkasync.[ch] gdk/gdkdnd-x11.c: 
2818         Change _gdk_x11_send_xevent_async() to 
2819         _gdk_x11_send_client_message_async() avoid using Xlib
2820         internals that are different on Solaris. 
2821         (#116917, Morten Welinder)
2822
2823 2003-07-08  Matthias Clasen  <maclas@gmx.de>
2824
2825         * gtk/gtkcontainer.c (gtk_container_remove): Doc addition.
2826         (#116501, Doug Quale)
2827
2828 Tue Jul  8 21:35:22 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2829
2830         * gtk/gtktoggletoolbutton.h: remove strange #define
2831         * gtk/gtktoolbutton.h: fix cut'n'paste error
2832         * gtk/gtktoolbutton.c (gtk_tool_button_init): use instance
2833         private data
2834         * gtk/gtktoolitem.c (gtk_tool_item_class_init): use instance
2835         private data instead of g_new0()
2836         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_init): use
2837         instance private data
2838
2839 Tue Jul  8 21:10:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2840
2841         * gtk/gtkbutton.c (gtk_button_realize): remove GDK_EXPOSURE_MASK
2842         for INPUT_ONLY window
2843         * gtk/gtkmenuitem.c (gtk_menu_item_realize): same
2844         * gtk/gtknotebook.c (gtk_notebook_realize): same
2845         * gtk/gtkexpander.c (gtk_expander_realize): same
2846         * gtk/gtkrange.c (gtk_range_realize): same
2847
2848         Fix #116303
2849
2850 Tue Jul  8 19:57:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2851
2852         * gtk/gtkstyle.c (gtk_default_draw_arrow): remove correction on x
2853         when detail is "menuitem". With the new menu look is isn't needed
2854         anymore.
2855
2856         * gtk/gtktoolitem.c (gtk_tool_item_toolbar_reconfigured): queue a
2857         resize here, so that tool items will get a chance to relayout
2858         themselves based on the toolbar configuration.
2859
2860         change DEFAULT_SPACE_SIZE to 4 instead of 5
2861
2862         * gtk/gtktoolbar.c 
2863         Get rid of "!GTK_BIN (item)->child means separator". Separators
2864         are widgets in their own right
2865
2866         change DEFAULT_SPACE_SIZE to 4 instead of 5
2867         
2868         (get_space_size): remove this function
2869         (toolbar_item_is_homogeneous): new function
2870
2871         * gtk/gtkseparatortoolitem.c
2872         (gtk_separator_tool_item_size_request): new function.
2873
2874 Tue Jul  8 14:10:35 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2875
2876         * gtk/gtktoggletoolbutton.h: use private data, add new
2877         internal function _gtk_toggle_tool_button_get_button()
2878
2879         * gtk/gtktoolbutton.h: move to private data
2880
2881         * gtk/gtkradiotoolbutton.c, gtk/gtktoolbutton.c: updates for new
2882         private data.
2883
2884 Tue Jul  8 12:50:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2885
2886         * gtk/gtktoolbutton.c (gtk_tool_button_get_icon_widget): fix a
2887         type check, (#116947, Krasimir Angelov)
2888
2889         * gtk/gtktoolbar.c: Use new GtkToolItem accessors.
2890         
2891         * gtk/gtktoolitem.[ch]: Use a private struct to hold the instance
2892         data. Not instance private data yet, because of bug 116921.
2893
2894         * gtk/gtktoolitem.h: new accessors:
2895                 gtk_tool_item_get_homogeneous ()
2896                 gtk_tool_item_get_expand ()
2897                 gtk_tool_item_get_pack_end ()
2898                 gtk_tool_item_get_use_drag_window ()
2899
2900 Mon Jul  7 16:50:32 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2901
2902         * gtk/gtkcellrenderertext.c
2903         (gtk_cell_renderer_text_class_init): remove accidentally committed
2904         debugging spew
2905
2906         * gtk/gtktoolbar.c
2907         (gtk_toolbar_paint_space_line): remove this function
2908         (gtk_toolbar_expose): always propagate expose, even if the item is
2909         a separator item
2910
2911         * gtk/gtkseparatortoolitem.c
2912         (gtk_separator_tool_item_expose): moved here from gtktoolbar.c
2913         (get_space_size): new function.
2914         (get_space_style): new function
2915
2916 Sun Jul  6 13:00:20 2003  Owen Taylor  <otaylor@redhat.com>
2917
2918         * gtk/gtkdnd.c (_gtk_drag_source_handle_event)
2919         * gtk/gtkdnd.c (gtk_drag_begin_internal):  Remove use
2920         of GDK_POINTER_MOTION_HINT_MASK.
2921
2922         * gtk/gtkdnd.c (gtk_drag_update_idle): Move updating
2923         of the drag into an idle as a superior form of 
2924         expose compression.
2925
2926         * gtk/gtkdnd.c (gtk_drag_begin_internal): Move default icon
2927         creation here, so that we have an icon at the start
2928         of the drag (e.g., when retrieving the window cache
2929         information.)
2930
2931 Sun Jul  6 17:21:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2932
2933         * docs/widget_geometry.txt: better drawing of GtkMenuItem
2934         * docs/widget_geometry.txt: add notes about GtkMenu
2935         * gtk/gtkstyle.c: remove leftover "#include "gtkhandlebox.h""
2936
2937 Sat Jul  5 10:34:00 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
2938
2939         * gtk/gtkmenu.c: add vertical_padding style property.
2940         
2941         * gtk/gtkmenuitem.c: add style properties toggle_spacing,
2942         arrow_spacing and horizontal_padding. Also center separators and
2943         make them a bit taller.
2944
2945         * gtk/*menuitem.c: use new style properties.
2946         
2947         * docs/widget_geometry.txt: Add note about GtkMenuItem
2948
2949         * gtk/gtkstyle.c 
2950         (gtk_default_draw_vline, gtk_default_draw_hline):
2951         fix +/-1 errors. 
2952
2953         (gtk_default_draw_shadow): draw a black border around menus.
2954
2955         * gtk/gtkvseparator, gtk/gtkhseparator.c, gtk/gtkmenuitem.c: fix
2956         calls to gtk_paint_hline() and gtk_paint_vline() (they take x1,
2957         x2 and y1, y2 respectively, not x, width and y, height).
2958
2959 Sat Jul  5 09:55:38 2003  Owen Taylor  <otaylor@redhat.com>
2960
2961         * gdk/x11/gdkdnd-x11.c (precache_target_list): Lookup
2962         all the atoms in the target list at once.
2963
2964         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display):
2965         Local drag short-circuit.
2966
2967         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion): For the
2968         local case, poke the actions in directly instead of
2969         going through xdnd_set_actions.
2970
2971         * gdk/x11/gdkdnd-x11.c (xdnd_read_actions): Short-circuit
2972         the local case.
2973
2974         * gdk/x11/gdkdnd-x11.c (xdnd_manage_source_filter): Don't
2975         XSelectInput()/add a filter if the drag is local.
2976
2977         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_selection): 
2978         Simplify handling of "XdndSelection".
2979
2980         * gdk/x11/gdkevents-x11.c
2981         (gdk_event_send_client_message_to_all_recurse): Somehow,  
2982         a WM_STATE => _NET_WM_STATE change hand been made here.
2983
2984         * gdk/x11/gdkproperty-x11.c (_gdk_x11_precache_atoms): Free
2985         xatom_names, not atom_names.
2986
2987         * tests/testdnd.c (target_drag_motion): Make the trashcan
2988         open again. (Got lost in deprecation cleanup.)
2989
2990 Sat Jul  5 00:49:32 2003  Owen Taylor  <otaylor@redhat.com>
2991
2992         * gtk/gtkdnd.c (gtk_drag_begin): Move the grabs up
2993         earlier, so we don't get a big pile of uncompressed
2994         motion events before the grab takes effect.
2995
2996         * gtk/gtkdnd.c (gtk_drag_update_icon): Call 
2997         gdk_window_process_all_updates() so that the area
2998         we are dragging over gets a change to redraw.
2999
3000         * gtk/gtkdnd.c (_gtk_drag_dest_handle_event): Use 
3001         gdk_window_get_position(), not gdk_window_get_origin().
3002
3003         * gdk/x11/gdkwindow-x11.[ch] (gdk_window_have_shape_ext)
3004         gdkdisplay-x11.h: use XShapeQueryExtension to 
3005         avoid duplicate XQueryExtension when we actually
3006         use it. Remove unnecessary caching in GdkDisplayX11.
3007
3008 Fri Jul  4 23:49:22 2003  Owen Taylor  <otaylor@redhat.com>
3009
3010         * gdk/x11/gdkasync.[ch] (_gdk_x11_get_window_child_info): 
3011         Function to get a range of information about all the
3012         children of a window in a single pass.
3013
3014         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse)
3015         gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Use
3016         _gdk_x11_get_window_child_info() to greatly reduce
3017         the number of roundtrips.
3018
3019 Fri Jul  4 22:57:18 2003  Owen Taylor  <otaylor@redhat.com>
3020
3021         * gdk/x11/gdkasync.[ch] (_gdk_send_xevent_async): Add
3022         a function to XSendEvent() and call a calback on
3023         failure/success.
3024
3025         * gdk/x11/gdkdnd-x11.c (xdnd_send_xevent): Short-circuit
3026         messages to the same process, use _gdk_send_xevent_async().
3027
3028 Fri Jul  4 22:26:27 2003  Owen Taylor  <otaylor@redhat.com>
3029
3030         * gdk/x11/gdkwindow-x11.[ch] gdkevents-x11.c: Split
3031         toplevel-specific pieces of GdkWindowImplX11 into
3032         a separate GdkToplevelX11 structure.
3033
3034 Fri Jul  4 22:05:09 2003  Owen Taylor  <otaylor@redhat.com>
3035
3036         * gdk/x11/gdkasync.c (struct _SetInputFocusState): Fix
3037         some leftover fields.
3038
3039 Fri Jul  4 15:57:52 2003  Owen Taylor  <otaylor@redhat.com>
3040
3041         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
3042         Use asynchronously _gdk_x11_set_input_focus_safe
3043         to avoid having to trap errors and XSync().
3044
3045         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): Use
3046         _gdk_x11_set_input_focus_safe() here as well.
3047
3048         * gdk/x11/gdkevents-x11.c (gdk_check_wm_state_changed):
3049         Rework handling of property notifies on _NET_WM_STATE
3050         so that we ignore _NET_WM_DESKTOP notifies unless we
3051         really care.
3052
3053         * gdk/x11/gdkimage-x11.c (gdk_image_check_xshm): Use
3054         XShmQueryExtension() rather than XQueryExtension() to
3055         avoid extra rountrip.
3056
3057         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_init):
3058         Remove unused call to XGetWindowAttributes()
3059         
3060         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Remove
3061         unused call to XGetKeyboardControl().
3062
3063         * gdk/x11/gdkdisplay-x11.c gdk/gdk.def (gdk_display_flush):
3064         Add (#99571)
3065
3066         * gdk/win32/gdkevents-win32.c gdk/linux-fb/gdkevents-fb.c 
3067         No-op implementations of gdk_display_flush().
3068
3069         * gdk/gdkwindow.c (gdk_window_process_all_updates): Use
3070         gdk_display_flush() rather than gdk_flush() to avoid
3071         XSync().
3072         
3073         * gdk/x11/gdkwindow-x11.c (update_wm_hints)
3074         gdk/x11/gdkwindow-x11.h: Centralize all handling of WM_HINTS here
3075         so that we don't have to get the property back from the server.
3076
3077         * gdk/x11/gdkwindow-x11.c (show_window_internal): Store
3078         the serial of when we map a toplevel to allow optimizing
3079         out notifies on _NET_WM_STATE/_NET_WM_DESKTOP.
3080
3081         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Don't
3082         XTranslateCoordinates() for override-redirect windows.
3083
3084 Fri Jul  4 15:59:27 2003  Owen Taylor  <otaylor@redhat.com>
3085
3086         * gdk/x11/gdkwindow-x11.c (gdk_window_set_group): Remove comment
3087         about setting window group after the window is mapped from docs
3088         - nothing the ICCCM forbids that.
3089
3090         * gdk/x11/gdkcursor-x11.c (gdk_display_get_maximal_cursor_size):
3091         Fix g_return_val_if_fail() in void return function.
3092
3093         * configure.in: Fix misplaced comma that was resulting
3094         in XShm always being disabled.
3095
3096 Fri Jul  4 19:55:49 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3097
3098         * tests/stresstest-toolbar: remove this accidentally committed
3099         file.
3100         
3101         * tests/stresstest-toolbar.c: really add this new test
3102
3103 Fri Jul  4 19:06:31 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3104
3105         * tests/stresstest-toolbar.c: new test for removing items
3106         
3107         * tests/testtoolbar.c: add a popup menu
3108
3109         * gtk/gtkcontainer.c (gtk_container_remove): add hack to avoid
3110           assert widget->parent == container when the container is a
3111           toolbar.
3112
3113         * gtk/gtktoolbar.c (gtk_toolbar_remove_tool_item): Make much
3114         simpler. Also make correct.
3115
3116         * gtk/gtktoolbar.c (gtk_toolbar_button_press): make
3117         popup_context_menu a boolean handled signal.
3118
3119 2003-07-04  Tor Lillqvist  <tml@iki.fi>
3120
3121         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_polygon,
3122         gdk_win32_draw_segments, gdk_win32_draw_lines): We can calculate
3123         the width and height of the bounding rectangle only after the
3124         minumum x and y have been found, and need a separate loop for
3125         it. Thanks to Bruce Hochstetler for providing a sample program
3126         exhibiting the bug.
3127
3128 2003-07-03  Tor Lillqvist  <tml@iki.fi>
3129
3130         * gdk/gdk.def: Add gdk_string_to_compound_text_for_display.
3131         (#116537, Peter Zelezny)
3132
3133 Thu Jul  3 03:13:20 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3134
3135         * gtk/gtkpaned.c (gtk_paned_set_child_property): Insert cast to
3136         fix warning. Assign something to old_value to quiet gcc
3137
3138         * gtk/gtkcalendar.c 
3139         (start_spinning): gtk_timeout_add->g_timeout_add
3140
3141         * gtk/gtkicontheme.c 
3142         (theme_lookup_icon): Make it compile (remove double semicolon)
3143
3144         * gtk/gtktoolbutton.c
3145         (gtk_tool_button_class_init): Long comment about properties.
3146         (gtk_tool_button_class_init): Improve text for "use_underline"
3147         property
3148         (gtk_tool_button_create_menu_proxy): Fix up to use_mnemonic based
3149         on whether the passed-in label has use_mnemonic set
3150         (gtk_tool_button_create_menu_proxy): Split image cloning out in
3151         new function. Make that function also handle image with pixbuf
3152         storage.
3153         (gtk_tool_button_construct_contents): Use gtk_widget_destroy()
3154         instead of gtk_container_remove().
3155         (gtk_tool_button_construct_contents): Fix eliding bug
3156
3157         * gtk/gtktoolbar.c
3158         (gtk_toolbar_finalize): New function. Unref tooltips, pointed out
3159         by Morten Welinder
3160         (gtk_toolbar_button_press): Make popup_context_menu signal provide
3161         coordinates and button number
3162
3163         * tests/testtoolbar.c (main): Add new pixbuf toolbutton
3164
3165         * tests/apple-red.png: new file
3166
3167 Wed Jul  2 18:00:56 2003  Owen Taylor  <otaylor@redhat.com>
3168          
3169         * gtk/gtkicontheme.[ch]: Implement a loader for
3170         named themed icon based on from gnome-desktop library
3171         by Alex Larsson.
3172
3173         * gtk/gtkiconthemeparser.[ch]: .ini file parsing code
3174         from gnome-desktop.
3175
3176         * gtk/gtkiconfactory.[ch]: Add
3177         gtk_icon_source_set/get_icon_name() to allow stock icons
3178         to be based off of named theme icons.
3179
3180         * gtk/gtkiconfactory.c: Rework sources so that the source
3181         is *either* a pixbuf, or a filename, or an icon name,
3182         instead of the pixbuf/filename mix it was before. Put a
3183         workaround for get_pixbuf() so that it can return the
3184         filename pixbuf, e.g, for render_icon().
3185
3186         * gtk/gtkiconfactory.c: Make the default setup use
3187         themed icons, and add builtin icons to the default
3188         icon theme for all the standard pixbufs, so we
3189         don't rely on actually having an icon theme on disk.
3190
3191         * gtk/gtkrc.c: Add support for @"icon-name" to specify
3192         a themed icon for a stock icon source.
3193
3194         * tests/Makefile.am test/testicontheme.c: Add a test
3195         program from gnome-desktop.
3196
3197         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c: Add
3198         Net/IconThemeName / gtk-icon-theme-name setting.
3199
3200         * gtk/gtkiconfactory.c (ensure_cache_up_to_date): Actually
3201         update the icon cache serial so we don't continually
3202         think we are out-of-date.
3203
3204         * gtk/gtkwidget.c: Fix a couple of references in doc comments 
3205         to ::direction_set that should have been to ::direction-changed
3206
3207 Wed Jul  2 14:45:41 2003  Owen Taylor  <otaylor@redhat.com>
3208
3209         * gtk/gtktoolbar.c (gtk_toolbar_realize): Attach the
3210         style to the widget.
3211
3212 Wed Jul  2 15:42:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3213
3214         * gtk/gtk.h: Add new toolbar headers
3215
3216         * tests/testtoolbar.c: new file
3217
3218         * tests/Makefile.am (noinst_PROGRAMS): Add testtoolbar.c
3219
3220         * gtk/gtkexpander.c (gtk_expander_class_init): Make it compile
3221
3222 Tue Jul  1 22:49:25 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3223
3224         * gtk/gtktoolbar.c:
3225         (gtk_toolbar_remove_tool_item): Fix bug where list is changed
3226         inside a for loop (pointed out by Morten Welinder).
3227         (gtk_toolbar_focus_home_or_end): Minor formatting change
3228
3229         Comments from Owen:
3230
3231         * gtk/gtktoolbutton.c: remove copy of elide_underscores(). Use
3232         gtk_toolbar_elide_underscores instead.
3233
3234         * gtk/gtktoolbar.c: rename signal from focus_ends to
3235         focus_home_or_end.
3236         (_gtk_toolbar_elide_underscores): export this as an internal
3237         function.
3238         (gtk_toolbar_move_focus): add comment explaining difference to
3239         gtk_toolbar_focus();
3240         (gtk_toolbar_list_children_in_focus_order): Make TAB_FORWARD and
3241         TAB_BACKWARD focus the right widgets in RTL mode
3242
3243         * gtk/gtktoolbutton.c (gtk_tool_button_new): Change to take
3244         "label" and "icon" parameters
3245
3246         * gtk/gtktoolbutton.[ch]: remove icon_set property.
3247
3248 2003-07-01  Matthias Clasen  <maclas@gmx.de>
3249
3250         * gtk/gtkspinbutton.c (gtk_spin_button_set_digits): Improve docs.
3251         (116364, Morten Welinder) 
3252
3253         * tests/testgtk.c: Use GtkFontButton and GtkColorButton to bring up the
3254         corresponding dialogs.
3255
3256         * gtk/Makefile.am (gtk_public_h_sources): Add gtkfontbutton.h,
3257         gtkcolorbutton.h.  
3258         (gtk_c_sources): Add gtkfontbutton.c, gtkcolorbutton.c. 
3259
3260         * gtk/gtkfontbutton.[hc]: New files containing a font picker widget. 
3261
3262         * gtk/gtkcolorbutton.[hc]: New files containing a color picker widget. 
3263
3264         * gtk/gtk.h: Include gtkexpander.h, gtkfontbutton.h, gtkcolorbutton.h.
3265
3266         * gtk/gtkexpander.c: Small additions to the docs. 
3267
3268 2003-07-01  Tor Lillqvist  <tml@iki.fi>
3269
3270         * gdk/win32/gdkwindow-win32.c (_gdk_windowing_window_get_pointer):
3271         WindowFromPoint() wants screen coordinates (#115422, Tim Evans).
3272
3273 2003-07-01  Matthias Clasen  <maclas@gmx.de>
3274
3275         * configure.in: Check for Xcursor.
3276         
3277         * gdk/x11/gdkcursor-x11.c:
3278         * gdk/gdkdisplay.h: 
3279         * gdk/gdkcursor.h: RGBA cursor support based on Xcursor. New functions:
3280         gdk_cursor_new_from_pixbuf(), gdk_display_supports_cursor_alpha(), 
3281         gdk_display_supports_cursor_color(),
3282         gdk_display_get_default_cursor_size() and 
3283         gdk_display_get_maximal_cursor_size().  (#69436)
3284
3285 2003-06-30  Tor Lillqvist  <tml@iki.fi>
3286
3287         * gdk/win32/gdkdnd-win32.c (find_window_enum_proc): New function,
3288         callback proc for EnumWindows().
3289         (gdk_drag_find_window_for_screen): Actually take the drag_window
3290         argument into account: Instead of using WindowFromPoint(), use
3291         EnumWindows(), to be able to skip the drag_window. (#116320, Tony
3292         M Brown, Herman Bloggs)
3293
3294         * gdk/win32/*.c: Replace gdk_drawable_ref()/unref() and
3295         gdk_window_ref()/unref() calls with g_object_ref()/unref().
3296         Consistently use %p format in debugging output of pointers and
3297         HANDLEs.
3298
3299 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
3300
3301         * gtk/gtkexpander.h: kill some stray characters
3302         breaking the build.
3303
3304 2003-06-30  Mark McLoughlin  <mark@skynet.ie>
3305
3306         Add GtkExpander. See discussion in bug #60553.
3307
3308         * gtk/gtkexpander.[ch]: add.
3309         
3310         * gtk/Makefile.am: build gtk-expander.[ch].
3311         
3312         * docs/widget_geometry.txt: add info on the layout
3313         of GtkExpander.
3314
3315 Mon Jun 30 01:20:19 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3316
3317         * gtkradiotoolbutton.c:         new file
3318         * gtkradiotoolbutton.h:            "
3319         * gtktoggletoolbutton.c:           "
3320         * gtktoggletoolbutton.h:           "
3321         * gtktoolbutton.c:                 "
3322         * gtktoolbutton.h:                 "
3323         * gtktoolitem.c:                   "
3324         * gtktoolitem.h:                   "
3325         * gtktoolbar.c: many changes
3326         * gtktoolbar.h: many changes
3327         * gtkseparatortoolitem.c:       new file
3328         * gtkseparatortoolitem.h           "
3329
3330         New toolbar.
3331         
3332         - Items on a toolbar are now separate widgets, instances of a
3333           subclass of GtkToolItem.
3334
3335         - Items there aren't room for on the toolbar are unmapped, and an
3336           overflow menu with a proxy menu item is added instead.
3337
3338         - The toolbar is keyboard navigatable. Press TAB to focus the
3339           first item, then use arrow keys and Ctrl TAB to move around the
3340           toolbar. TAB moves focus out of the toolbar.
3341
3342         - Bascially all of the old toolbar API is deprecated in favor of
3343           new API in gtktoolbar.h, gtktoolitem.h, gtktoolbutton.h
3344
3345         - The toolbar is backwards compatible with the old toolbar.
3346
3347 2003-06-29  Matthias Clasen  <maclas@gmx.de>
3348
3349         * gtk/gtkwidget.c (gtk_widget_class_init): Remove a duplicate parameter
3350         from docs, some more formatting fixes. 
3351
3352 2003-06-28  Tor Lillqvist  <tml@iki.fi>
3353
3354         Fix for #111028, thanks to J. Ali Harlow, who writes:
3355         I found that the GdkPixmap->GdkImage reference really isn't
3356         important. It's only really there to have somewhere convenient to
3357         store the location of the pixel data in the pixmap and as an easy
3358         way of accessing the dimensions of that data. I have therefore put
3359         together a fix which removes this reference entirely which seems
3360         to solve the problem.
3361
3362         * gdk/win32/gdkpixmap-win32.h (struct _GdkPixmapImplWin32):
3363         Instead of a pointer to a GdkImage, keep a pointer to the pixels
3364         directly.
3365
3366         * gdk/win32/gdkimage-win32.c (_gdk_win32_setup_pixmap_image): Remove.
3367         (_gdk_win32_new_image): New function, replacing the above. Creates
3368         a GdkImage without any associated GdkPixmap.
3369         (gdk_image_new_bitmap, _gdk_image_new_for_depth): Use it instead.
3370
3371         * gdk/win32/gdkprivate-win32.h: Remove from here, too.
3372
3373         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap)
3374         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap)
3375         * gdk/win32/gdkgc-win32.c (_gdk_win32_bitmap_to_hrgn)
3376         * gdk/win32/gdkmain-win32.c (_gdk_win32_drawable_description):
3377         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize,
3378         gdk_pixmap_new, gdk_bitmap_create_from_data, gdk_pixmap_foreign_new)
3379         Corresponding changes.
3380
3381 Thu Jun 26 21:41:16 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3382
3383         * gtk/gtktreeviewcolumn.c
3384         (gtk_tree_view_column_cell_set_cell_data): only set "is_expander"
3385         and "is_expanded" if the new value is different fromt he old one.
3386
3387 Wed Jun 25 18:59:15 BST 2003  Tony Gale <gale@gtk.org>
3388
3389         * docs/faq/gtk-faq.sgml: Fix typos. Update
3390         thread example I missed yesterday.
3391
3392 2003-06-24  Matthias Clasen  <maclas@gmx.de>
3393
3394         * gtk/gtkspinbutton.c (gtk_spin_button_class_init): Add a blurb for
3395         shadow_type. 
3396
3397         * gtk/gtkwidget.c (gtk_widget_class_install_style_property_parser): 
3398         (gtk_widget_class_list_style_properties): Use same parameter names as in  
3399         header (to silence gtk-doc).
3400
3401         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Fix doc comments.
3402
3403 Tue Jun 24 20:00:45 BST 2003  Tony Gale <gale@gtk.org>
3404
3405         * docs/faq/gtk-faq.sgml: Thread support updates
3406         from Owen. Various suggestions from Steve Chaplin.
3407
3408 2003-03-24  Mohammad DAMT  <mdamt@bisnisweb.com>
3409
3410         * po/id.po: Updated Indonesian translation
3411
3412 2003-06-21  Tor Lillqvist  <tml@iki.fi>
3413
3414         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When
3415         emulating X11's automatic grab on button down, pass owner_events
3416         as FALSE. According to the XLib spec, automatic grabs use True for
3417         owner_events when OwnerGrabButtonMask is selected, and I don't see
3418         the X11 backend doing that. (#82497, #91619, #92835, #107322, #110271)
3419         (find_window_for_pointer_event): Improve debugging output.
3420
3421 2003-06-17  Tor Lillqvist  <tml@iki.fi>
3422
3423         * gtk-zip.sh.in (DLLDIR): Look for DLLs also in the bin
3424         subdirectory, where libtool 1.5 installs them.
3425
3426         * README.win32: Point to FSF's binary Win32 distribution of
3427         gettext-runtime.
3428
3429 2003-06-17  Matthias Clasen  <maclas@gmx.de>
3430
3431         * acinclude.m4 (JH_PATH_XML_CATALOG, JH_CHECK_XML_CATALOG): New
3432         macros to check for XML catalog contents and path, borrowed from
3433         gtk-doc. 
3434         * configure.in: New option --enable-man to enable regeneration of
3435         man pages from Docbook, if the necessary tools are found.
3436
3437 2003-06-15  Matthias Clasen  <maclas@gmx.de>
3438
3439         * gtk/gtkcalendar.c (gtk_calendar_class_init): 
3440         * gtk/gtknotebook.c (gtk_notebook_class_init): 
3441         * gtk/gtkalignment.c (gtk_alignment_class_init): 
3442         * gtk/gtkpaned.c (gtk_paned_class_init): Document new properties
3443         as 2.4 additions.
3444
3445         * gtk/gtkwidget.c (gtk_widget_class_init): Move inline signal docs 
3446         to the proper place, immediately before the g_signal_new() call.
3447
3448         * gtk/gtktextiter.h: Make the flags-nature of GtkTextSearchFlags 
3449         more obvious.  (#115122, Jeff Franks)
3450
3451 2003-06-12  Anders Carlsson  <andersca@codefactory.se>
3452
3453         * gtk/gtkwidget.c: (event_window_is_still_viewable):
3454         Special case pixmaps. (#114880)
3455         
3456 2003-06-12  Matthias Clasen  <maclas@gmx.de>
3457
3458         * gtk/gtkwidget.c: Document child-notify and drag-data-received
3459         signals. Owen, we need to figure out where the best place for
3460         these comments in the source is. I currently put them in front of
3461         the signals enum.
3462
3463 2003-06-11  Matthias Clasen  <maclas@gmx.de>
3464
3465         * gtk/gtkdnd.c (gtk_drag_check_threshold): s/threshhold/threshold/.
3466
3467 Thu Jan 12 01:01:19 2003  Kristian Rietveld  <kris@gtk.org>
3468
3469         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3470         silly typo fix. s/seperator/separator/. This gets rid of the
3471         assert spam when using TreeView.
3472
3473 Tue Jun 10 11:23:48 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3474
3475         * modules/input/gtkimcontextxim.c (xim_instantiate_callback): New
3476         function for XIM instantiate callback.
3477         * modules/input/gtkimcontextxim.c (xim_info_try_im): New function
3478         where call to XOpenIM() or XRegisterIMInstantiateCallback() is
3479         actually made.
3480         * modules/input/gtkimcontextxim.c (xim_destroy_callback): New function
3481         for XIM's destroy callback.
3482         * modules/input/gtkimcontextxim.c (get_im): add a check if info->im 
3483         is set or not - if it's not set, call xim_info_try_im() to try to
3484         initiaize it.
3485         * modules/input/gtkimcontextxim.c (reinitialize_ic): reset
3486         filter_key_release flag of the context.
3487         * modules/input/gtkimcontextxim.c (get_ic_real): removed
3488         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic): move
3489         code from the removed get_ic_real().
3490
3491         For XIM instantiation, destruction and re-instantiation. With
3492         this, Gtk+ apps will be able to connect or reconnect to the XIM,
3493         when it starts after the apps, or when the XIM gets lost and recover.
3494         (#113099, #107782).
3495
3496 Mon Jun 10 01:12:31 2003  Kristian Rietveld  <kris@gtk.org>
3497
3498         Merged from stable.
3499
3500         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_get_size):
3501         check if width is !null, not *width. Doh.
3502
3503 Tue Jun 10 01:09:33 2003  Kristian Rietveld  <kris@gtk.org>
3504
3505         Merged from stable.
3506
3507         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3508         Remove the weird dx logic, get all cell_area and background_area
3509         calculations right. Not sure what was up with it before. (Fixes
3510         #110989, testcase from Vasco Alexandre da Silva Costa).
3511
3512 Tue Jun 10 00:58:23 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3513
3514         * tests/testgtk.c: Make it compile with C89 compilers
3515
3516 2003-06-10  Matthias Clasen  <maclas@gmx.de>
3517
3518         * gtk/gtktextview.c (gtk_text_view_class_init): Install boolean
3519         property "overwrite".
3520         (gtk_text_view_[gs]et_property): Handle "overwrite".
3521         * gtk/gtktextview.[hc] (gtk_text_view_[gs]et_overwrite): Getter
3522         and setter for "overwrite" property.  (#110241, Jeroen Zwartepoorte)
3523
3524 2003-06-09  Matthias Clasen  <maclas@gmx.de>
3525
3526         * gtk/gtkpaned.c (gtk_paned_class_init): Install boolean child
3527         properties "resize" and "shrink".
3528         (gtk_paned_[gs]et_child_property): Implementations of 
3529         GtkContainer::[gs]et_child_property.  
3530         * tests/testgtk.c (toggle_resize, toggle_shrink): Use the new
3531         paned child properties instead of remove/add hacks.  (#114667, 
3532         Soeren Sandmann) 
3533
3534 Mon Jun  9 16:18:11 2003  Owen Taylor  <otaylor@redhat.com>
3535
3536         * gtk/gtknotebook.c (gtk_notebook_button_press): Back
3537         out event->window test - it wasn't needed because
3538         of the call to get_widget_coordinates().
3539
3540         * gtk/gtknotebook.c (gtk_notebook_button_press): Remove
3541         call to gtk_widget_grab_focus() when not clicking on
3542         any tabs. (Real fix for #114534)
3543
3544 Sun Jun  8 22:03:09 2003  Owen Taylor  <otaylor@redhat.com>
3545
3546         * tests/testdnd.c: Use application/x-rootwindow-drop for
3547         root window drops. (#108670, Alex Larsson)
3548
3549         * gdk/x11/gdkdnd-x11.c (gdk_drag_motion) gtk/gtkdnd.c (gtk_drag_drop): 
3550         Accept either application/x-rootwin-drop (what GTK+ has always used)
3551         or application/x-rootwindow-drop (what the XDND standard specifies).
3552
3553 Fri Jun  6 11:07:33 2003  Owen Taylor  <otaylor@redhat.com>
3554
3555         * gtk/gtkwidget.c (event_window_still_viewable): 
3556         Before delivering an event to a widget, check that
3557         (if relevant), the event's window is still viewable.
3558         (#105642, Dennis Björklund)
3559
3560         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): 
3561         NULL out private->parent, since after destruction
3562         it might not be valid any more.
3563
3564         * gdk/gdkwindow.c (gdk_window_is_viewable): Fix some
3565         accesses before g_return_val_if_fail(). Treat 
3566         DESTROYED windows as unmapped.
3567
3568 Thu Jun  5 09:28:03 2003  Owen Taylor  <otaylor@redhat.com>
3569
3570         * gtk/gtkentry.c: Recompute unconditionally in
3571         gtk_entry_style_set, and in a new gtk_label_screen_changed().
3572         Protect the guts of recompute_idle_func() with
3573         gtk_widget_has_screen(). (#114040, Morten Welinder) 
3574         Fix FALSE/0 confusion.
3575         
3576 Sun Jun  8 18:27:14 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3577
3578         * gdk/gdkpixbuf-drawable.c (G8fromRGB565): swap G and B.
3579         Fixes (#114669)
3580
3581 Sun Jun  8 11:27:29 2003  Owen Taylor  <otaylor@redhat.com>
3582
3583         * gtk/gtkviewport.c (viewport_set_adjustment): Fix bug with 
3584         set_adjustment (viewport, NULL);
3585
3586 2003-06-07  Matthias Clasen  <maclas@gmx.de>
3587
3588         * gtk/gtkiconfactory.c (get_default_icons): 
3589         * gtk/stock-icons/stock_{undo,redo,undelete,revert}_rtl_{16,24}.png:
3590         * gtk/stock-icons/Makefile.am: Add rtl variants of undo, redo,
3591         undelete and revert.  (#96633)
3592         
3593 Fri Jun  6 16:25:44 2003  Owen Taylor  <otaylor@redhat.com>
3594
3595         * gtk/gtkviewport.c: Many fixes, along with extensive cleanups and 
3596         refactoring of code to reduce duplication; fixes include:
3597
3598         - gtk_viewport_realize(): Position the window correct from adjustment 
3599         values. (#110737, Michael Natterer)
3600
3601         - Remove some division-by-zero checks in places where there is no 
3602         longer division. (#110737)
3603
3604         - gtk_viewport_class_init: Make the hadjustment/vadjustment properties 
3605         G_PARAM_CONSTRUCT, so that there will always be adjustments, even 
3606         if gtk_viewport_new isn't used (#101135, Thomas Leonard).
3607
3608         - Switch over to encapsulated lazy-creation for hadjustment/
3609         vadjustment; even with the CONSTRUCT property, we need this after
3610         destroy.
3611
3612         - When updating the adjustment, immediate set their values to
3613         match the the current range of the viewport, and update the 
3614         viewport position to match the value of the new adjustments. 
3615         (Part of #1165)
3616
3617 2003-06-06  Tor Lillqvist  <tml@iki.fi>
3618
3619         * gdk/win32/gdkprivate-win32.h: Fix typo.
3620
3621         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Set
3622         graphics_exposures and subwindow_mode, too, even if they aren't
3623         currently used.
3624
3625 Fri Jun  6 23:38:23 2003  Kristian Rietveld  <kris@gtk.org>
3626
3627         Merged from stable.
3628
3629         * gtk/gtktreeview.c (do_expand_collapse),
3630         (expand_collapse_timeout), (cancel_arrow_animation): made
3631         expand_collapse_timeout a wrapper with locks around     
3632         do_expand_collapse, made cancel_arrow_animation use
3633         do_expand_collapse. Fixes threadlock. (Fixes #111286, patch from
3634         Peter Bloomfield).
3635
3636 Fri Jun  6 11:05:45 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3637
3638         * modules/input/gtkimcontextxim.h (struct _GtkIMContextXIM):
3639         * modules/input/gtkimcontextxim.c (preedit_start_callback,
3640         preedit_draw_callback, preedit_done_callback): Add a 'finalizing' flag 
3641         to keep preedit-[start,changed,end] signals from being called during
3642         finalization (#111861).
3643
3644 2003-06-05  Noah Levitt  <nlevitt@columbia.edu>
3645
3646         * gtk/gtknotebook.c (gtk_notebook_button_press): Ignore button
3647         presses that are not on the tab (#114534).
3648
3649 Thu Jun  5 20:35:40 2003  Owen Taylor  <otaylor@redhat.com>
3650
3651         * demos/Makefile.am: Conditionalize dependencies for
3652         gdk-pixbuf-csource on cross-compilation (#112391, J. Ali Harlowe). 
3653         Buildtest-inline-pixbufs.h in srcdir. Don't try to build 
3654         test-inline-pixbufs.h if we don't have libpng.
3655
3656         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): 
3657         Add a dependency on gdk-pixbuf.loaders when not 
3658         cross-compiling, remove the dependency on gdk-pixbuf-csource
3659         when not cross compiling.
3660
3661 Thu Jun  5 20:12:51 2003  Owen Taylor  <otaylor@redhat.com>
3662
3663         * gtk/gtkwindow.c (gtk_window_get_default_size): Handle
3664         gtk_window_get_geometry_info() returning NULL.
3665         (#107311, John Finlay)
3666
3667 Thu Jun  5 19:24:33 2003  Owen Taylor  <otaylor@redhat.com>
3668
3669         * gtk/gtktoolbar.c (gtk_toolbar_expose): Subtract off
3670         twice the border width from the width/height, not
3671         1x the border width. (#106336, Rodney Dawes)
3672
3673 Thu Jun  5 15:33:38 2003  Owen Taylor  <otaylor@redhat.com>
3674  
3675         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
3676         If at the end of the buffer, move to the end iter -
3677         parallels behavior of move_iter_to_previous_line.
3678         (#81960, Padraig O'Briain)
3679  
3680 Thu Jun  5 16:12:54 2003  Owen Taylor  <otaylor@redhat.com>
3681
3682         #80023, Yao Zhang, TOKUNAGA Hiroyuki
3683
3684         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations):
3685         Account for the preedit cursor offset if the iter passed
3686         in is at the same place as the insertion cursor.
3687
3688         * gtk/gtktextview.c (gtk_text_view_get_cursor_location):
3689         Encapsulate getting the insertion cursor location.
3690
3691         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location):
3692         Pass the real y/height to the IM context. Take 
3693         text_view->x/yoffset into account.
3694
3695 Thu Jun  5 16:52:54 2003  Owen Taylor  <otaylor@redhat.com>
3696
3697         * gtk/gtktextview.[ch]: Never scroll on focus in
3698         (#81893, Patch from Paolo Maggi)
3699
3700         * gtk/gtktextview.c (gtk_text_view_scroll_[h]pages): 
3701         Scroll to the current cursor location before handling
3702         the action, in case the user just tabbed in
3703         and the cursor is offscreen.
3704
3705 Thu Jun  5 17:20:40 2003  Owen Taylor  <otaylor@redhat.com>
3706          
3707          #107883, Gustavo Giráldez
3708
3709         * gtk/gtktextlayout.c (gtk_text_layout_emit_changed):
3710         Split out the case where we know we changed, and 
3711         already dealt with our cached line being invalidated
3712         from external calls to gtk_text_layout_changed.
3713
3714         * gtk/gtktextlayout.c (gtk_text_layout_changed):
3715         Check if the invalidate yrange intersects our
3716         cached line, and clear it if necessary.
3717
3718 2003-06-05  Tor Lillqvist  <tml@iki.fi>
3719
3720         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle global
3721         filters.
3722
3723 2003-06-05  Matthias Clasen  <maclas@gmx.de>
3724
3725         * gtk/gtktextview.c: Fix for #84668, reported by Torbjrn Andersson:
3726         (gtk_text_view_grab_notify): 
3727         (gtk_text_view_state_changed): Implement these
3728         to unobscure cursor when grab shadowed or insensitised.
3729         (gtk_text_view_unobscure_mouse_cursor): New function to undo the
3730         effect of gtk_text_view_obscure_mouse_cursor(). Code lifted from
3731         gtk_text_view_motion_event().
3732         (gtk_text_view_motion_event): Use gtk_text_view_obscure_mouse_cursor().
3733
3734         * gtk/gtktextview.c (select_all): New keybinding signal for
3735         (un)selecting the whole buffer. Bound to C-a/C-\.  (see #107889)
3736
3737         * gtk/gtkcalendar.c (calendar_timer): 
3738         (stop_spinning): Replace deprecated gtk_timeout_* functions by
3739         their GLib counterparts.  (#114429)
3740
3741         * gtk/gtktreestore.c (gtk_tree_store_new): 
3742         * gtk/gtkliststore.c (gtk_list_store_new): Document restriction on 
3743         types.
3744
3745 Wed Jun  4 19:42:17 2003  Owen Taylor  <otaylor@redhat.com>
3746
3747         * gdk/gdkpango.c (gdk_draw_layout_line_with_colors):
3748         When drawing underlines, join up adjacent runs
3749         where possible, so we don't get changes in 
3750         shaper/font/etc. breaking underlines. (#103662,
3751         Kang Jeong-Hee)
3752
3753 Wed Jun  4 19:22:58 2003  Jonathan Blandford  <jrb@redhat.com>
3754
3755         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_level_find_insert):
3756         Slightly modified patch from Owen Taylor <otaylor@redhat.com> to
3757         improve the speed of inserting rows into an already sorted list,
3758         #109292
3759
3760 Wed Jun  4 19:24:28 2003  Owen Taylor  <otaylor@redhat.com>
3761
3762         * gdk/x11/gdkgc-x11.c gdk/x11/gdkprivate-x11.h: Keep
3763         track of when we have a clip mask set for the GC,
3764         and when we unset it, or switch to a clip region,
3765         immediately call XSetClipMask (..., None) to avoid
3766         Xlib caching stale data. (#111806)
3767
3768         * gtk/gtktextdisplay.c: Don't set a clip mask
3769         when drawing alpha pixmaps; it isn't necessary any more.
3770         (#111806)
3771
3772 Wed Jun  4 18:27:44 2003  Owen Taylor  <otaylor@redhat.com>
3773
3774         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator): 
3775         gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): 
3776         Use GTK_WIDGET_IS_SENSITIVE(), not GTK_WIDGET_SENSITIVE
3777         (#92548, Tim Evans)
3778
3779         * gtk/gtkcheckmenuitem.c (gtk_real_check_menu_item_draw_indicator)
3780         gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator): If
3781         Use state_type = STATE_INSENSITIVE for insensitive menu items.
3782
3783 Wed Jun  4 21:25:35 2003  Kristian Rietveld  <kris@gtk.org>
3784
3785         Merged from stable.
3786
3787         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): use a silent
3788         assert for get_info. (reported by Michael Natterer),
3789         (gtk_tree_view_expand_all_emission_helper),
3790         (gtk_tree_view_expand_all_helper): emit row_expanded for all
3791         expanded rows during an _expand_all operation. (Fixes #111280,
3792         reported by Benjamin Bayart).
3793
3794 Tue Jun  3 18:32:30 2003  Owen Taylor  <otaylor@redhat.com>
3795
3796         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter): Don't
3797         respond to pings on a root window; prevents infinite
3798         loops if we are selecting for SubstructureNotify on the
3799         root window. (#111945, Sergey V. Udaltsov)
3800
3801 Tue Jun  3 17:39:16 2003  Owen Taylor  <otaylor@redhat.com>
3802
3803         #71597, reported by Morten Welinder
3804
3805         * gdk/gdkpixbuf-drawable.c (rgb888amsb): Fix and simplify
3806         (Patch from Christian Petig)
3807
3808         * gdk/gdkpixbuf-drawable.c (rgb{555,565}{a,}{msb,lsb}):
3809         Major rewrite of 555 and 565 conversion routines:
3810
3811         - Move all the bit shifting into a small block of macros,
3812           eliminating much duplication of complicated arithmetic.
3813         - Get rid of 2-pixels at a time code, which was buggy,
3814           hard to maintain, caused unaligned accesses, and
3815           probably didn't actually perform any better.
3816         - Simplify cases where different data types were
3817           used for the little and big endian cases, use
3818           GUINT16_SWAP_LE_BE() where appropriate.
3819                 
3820 Tue Jun  3 15:05:47 2003  Owen Taylor  <otaylor@redhat.com>
3821
3822         * gdk/x11/gdkdrawable-x11.c (convert_to_format): Remove
3823         bad optimization for src_rowstride == dest_stride.
3824         (Didn't consider the case where we were copying only
3825         partial widths of a wider source buffer)
3826         (#113034, reported by Hans Petter Jansson)
3827
3828 2003-06-03  Michael Natterer  <mitch@gimp.org>
3829
3830         * gdk/x11/gdkinput-x11.c (_gdk_input_common_find_events):
3831         reenabled button_release events for xinput devices. (#113948)
3832
3833 2003-06-03  Christian Rose  <menthos@menthos.com>
3834
3835         * configure.in: Added "li" to ALL_LINGUAS.
3836
3837 Mon Jun  2 18:58:54 2003  Owen Taylor  <otaylor@redhat.com>
3838
3839         * gtk/gtknotebook.c (gtk_notebook_size_allocate): Don't
3840         map the event window if the notebook isn't mapped. (#113980,
3841         Richard Reich)
3842
3843 2003-06-02  Sven Neumann  <sven@gimp.org>
3844
3845         * gtk/gtkprogress.c (gtk_progress_changed): added a missing cast.
3846
3847         * gdk/gdkrgb.c (gdk_rgb_try_colormap): removed an unused variable.
3848
3849 2003-06-01  Matthias Clasen  <maclas@gmx.de>
3850
3851         * gtk/gtkalignment.c (gtk_alignment_[gs]et_padding): Add 
3852         Since: 2.4 to the docs.
3853
3854         * gtk/gtkwindow.c (gtk_window_parse_geometry): Add some hints and
3855         an example to the docs.  (#98427)
3856
3857 2003-05-30  Murray Cumming  <murrayc@usa.net>
3858
3859         * gtk/gtkalignment.[h|c]: Added 4-sided padding as properties with
3860         gtk_alignment_get_padding() and gtk_aligment_set_padding(). This
3861         uses the new private data system - see g_type_class_add_private() in
3862         gtk_alignment_class_init() and the use of GTK_ALIGNMENT_GET_PRIVATE().
3863
3864 2003-05-30  Matthias Clasen  <maclas@gmx.de>
3865         
3866         * gtk/gtknotebook.c: Changed guint to GtkNotebookArrow in the
3867         signature of gtk_notebook_draw_arrow() for Solaris builds to go
3868         through.  (#114043, Anand Subramanian)
3869
3870 Thu May 29 18:30:35 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3871
3872         * modules/input/imipa.c: 
3873         use GETTEXT_PACKAGE to get a translation for "ipa"(#113850).
3874
3875 Thu May 29 18:08:01 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3876
3877         * gtk/gtkimmodule.c (_gtk_im_module_list):
3878         use GETTEXT_PACKAGE to get a translation for "Default"(#113850).
3879
3880 Thu May 29 09:34:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
3881
3882         * gtk/gtkimmodule.c (_gtk_im_module_list): make "Default"
3883         label of default input method localizable.
3884         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems): 
3885         use translations of input method context names
3886         * modules/input/imam-et.c, modules/input/imcyrillic-translit.c,
3887           modules/input/iminuktitut.c, modules/input/imthai-broken.c,
3888           modules/input/imti-er.c, modules/input/imti-et.c
3889           modules/input/imviqr.c, modules/input/imxim.c
3890         use GETTEXT_PACKAGE instead of "gtk+" for domain name.
3891         (#113850).
3892
3893 Thu May 29 18:23:01 2003  Kristian Rietveld  <kris@gtk.org>
3894
3895         Merged from stable.
3896
3897         * gtk/gtktreeview.c (gtk_tree_view_button_press): put the focus
3898         grab separate, the user might clear the tree in the focus-in
3899         callback. (Fixes #113086, testcase from Felipe Heidrich).
3900
3901 Thu May 29 18:06:26 2003  Kristian Rietveld  <kris@gtk.org>
3902
3903         Merged from stable.
3904
3905         * gtk/gtktreeview.c (gtk_tree_model_set_model): reset a bunch
3906         of row reference when we unset the model. Also reset
3907         dy and top_row_dy. (Fixes #109289, patch from Owen Taylor).
3908
3909 Thu May 29 17:12:19 2003  Kristian Rietveld  <kris@gtk.org>
3910
3911         Merged from stable.
3912
3913         * gtk/gtktreeview.c (gtk_tree_view_set_cursor_on_cell): cancel
3914         the current editing, if it exists. (Fixes #108956, reported by
3915         Michael Natterer).
3916
3917 Thu May 29 17:06:09 2003  Kristian Rietveld  <kris@gtk.org>
3918
3919         Merged from stable.
3920
3921         * gtk/gtktreeview.c (check_selection_helper): new function,
3922         (gtk_tree_view_row_deleted): traverse the tree from the
3923         deleted node to see whether the selection changed, instead of
3924         just checking this node. (Fixes #107400, reported by 'Duncan').
3925
3926 Thu May 29 16:31:34 2003  Kristian Rietveld  <kris@gtk.org>
3927
3928         Merged from stable.
3929
3930         * gtk/gtktreeview.c (gtk_tree_view_maybe_begin_dragging_row),
3931         (gtk_tree_view_drag_begin): set the DnD icon in _drag_begin
3932         instead of _maybe_begin_dragging_row, so the icon can be
3933         overridden by apps. (Fixes #104374, patch from Daniel Elstner).
3934
3935 Thu May 29 16:14:04 2003  Kristian Rietveld  <kris@gtk.org>
3936
3937         Merged from stable.
3938
3939         * gtk/gtktreeview.c (gtk_tree_view_start_editing): correct
3940         cell_area x/width for the expander if needed. (Fixes #101748,
3941         reported by Dave Cook and Mariano Suarez-Alvarez).
3942
3943 Thu May 29 16:01:38 2003  Kristian Rietveld  <kris@gtk.org>
3944
3945         Merged from stable.
3946
3947         * gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): check
3948         if tree/node are still the same after _internal_select_node.
3949         (Fixes #92256, reported by edscott).
3950
3951 Thu May 29 15:38:30 2003  Kristian Rietveld  <kris@gtk.org>
3952
3953         Fixes #75745, reported by Richard Hult. Merged from stable.
3954
3955         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): set/unset
3956         GTK_CELL_RENDERER_FOCUSED flag whether the current node is the
3957         cursor or not.
3958
3959         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
3960         if we are rendering a cursor row, and the cell the be
3961         processed has focus, then set the GTK_CELL_RENDERER_FOCUSED
3962         flag (else we unset it).
3963
3964 2003-05-27  Matthias Clasen  <maclas@gmx.de>
3965
3966         * gtk/gtkwindow-decorate.c: 
3967         * gtk/gtktreeprivate.h: 
3968         * gtk/gtkdnd.c: 
3969         * gdk/win32/gdkwindow-win32.h: 
3970         * gdk/linux-fb/gdkprivate-fb.h: 
3971         * gdk/linux-fb/gdkkeyboard-fb.c: Remove dubious bitfields of
3972         unspecified signedness.  (#112919, Morten Welinder)
3973
3974         * gtk/queryimmodules.c (escape_string): 
3975         * gtk/gtktextbtree.c (_gtk_text_btree_get_text): 
3976         * gtk/gtksettings.c (_gtk_settings_parse_convert): 
3977         * gtk/gtkrc.c (gtk_rc_parse_assignment): 
3978         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key): 
3979         * gdk/x11/gdkdisplay-x11.c (escape_for_xmessage): Replace all 
3980         occurances of g_string_new ("") by g_string_new (NULL). (#106975,
3981         Morten Welinder) 
3982
3983 2003-05-27  Tor Lillqvist  <tml@iki.fi>
3984
3985         * gtk-zip.sh.in: Only include the Default and Emacs themes' gtkrc
3986         files. Include share/gtk-doc/{gdk-pixbuf,gdk,gtk}.
3987
3988         * gdk/Makefile.am: libgdk-win32-2.0.la depends on
3989         win32/libgdk-win32.la.
3990
3991         * gtk/gtk.def: Add gtk_tree_view_column_cell_get_position.
3992
3993 Sat May 24 22:19:13 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
3994
3995         * gtk/gtkscrollbar.c (gtk_scrollbar_class_init): Make the minimum
3996         scrollbar slider length 21 instead of 7.
3997
3998 2003-05-23  Matthias Clasen  <maclas@gmx.de>
3999
4000         * gtk/gtknotebook.c: Add support for up to four scroll
4001         arrows. Control their display by new style properties
4002         "has_forward_stepper", "has_backward_stepper",
4003         "has_secondary_forward_stepper" and
4004         has_secondary_backward_stepper". (#110540)
4005
4006         * gtk/gtknotebook.h (struct _GtkNotebook): Make in_child and
4007         click_child three bits wide, add
4008         has_{before,after}_{previous,next} fields.
4009
4010         * gtk/gtkcolorsel.c (gtk_color_selection_init): Update color on
4011         focus out of hex_entry.  (#112665)
4012         (hex_focus_out): New signal handler for focus out of hex entry.
4013
4014 Wed May 21 19:01:06 2003  Owen Taylor  <otaylor@redhat.com>
4015
4016         * gtk/gtkwidget.c (gtk_widget_realize): 
4017         g_return_if_fail() if
4018         GTK_WIDGET_ANCHORED (widget) || GTK_IS_INVISIBLE (widget).
4019         (#107872, Christian Reis)
4020
4021 2003-05-22  Matthias Clasen  <maclas@gmx.de>
4022
4023         * gtk/gtkfilesel.c (gtk_file_selection_create_dir): 
4024         (gtk_file_selection_rename_file): Some keynav improvements for the
4025         "Rename File" and "Create Directory" subdialogs: Enter in entry
4026         activates default, default is "Create"/"Rename", Escape cancels
4027         dialog.  (#113110)
4028         (gtk_file_selection_set_filename): Add a hint about opening 
4029         directories.  (#113175)
4030
4031 2003-05-22  Matthias Clasen  <maclas@gmx.de>
4032
4033         * gdk/x11/gdkdrawable-x11.c (gdk_x11_drawable_update_xft_clip):
4034         Use XftDrawSetClipRectangles(), since we're inside HAVE_XFT2
4035         anyway.  (#113476)
4036
4037 Wed May 21 15:53:14 2003  Owen Taylor  <otaylor@redhat.com>
4038
4039         * gtk/gtkprogress.c (gtk_progress_set_format_string,
4040         gtk_progress_set_show_text): Always queue a resize ... 
4041         we rely on the size-allocate to do the update, plus a 
4042         different format can actually change our size requisition.
4043         (#111052, Vasco Alexandre da Silva Costa)
4044
4045         * gtk/gtkprogress.c (gtk_progress_changed): Track
4046         ::changed as well as ::value_changed, and queue a
4047         resize on ::changed when necessary.
4048
4049         * gtk/gtkprogress.c (gtk_progress_set_adjustment): 
4050         Call gtk_progress_changed() here to update or 
4051         queue a resize as necessary.
4052
4053 Wed May 21 14:06:13 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
4054
4055         * gtk/gtkimcontextsimple.c: added composing rules of
4056         Greek accented letters, patch by Vasilis Vasaitis (#107507)
4057
4058 Wed May 21 13:19:05 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
4059
4060         * gtk/gtkenums.h (enum GtkIMPreeditStyle, GtkIMStatusStyle): 
4061         * modules/input/gtkimcontextxim.c (preedit_style_change, status_style_change):
4062         gtk settings for XIMPreeditNone and XIMStatusNone. (#105909)
4063
4064 Wed May 21 12:10:25 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
4065
4066         * gtk/gtkimcontextsimple.c: 
4067         code that can check the compose table for ascending order,
4068         by Vasilis Vasaitis (#104862).
4069
4070 Wed May 21 12:52:01 2003  Owen Taylor  <otaylor@redhat.com>
4071
4072         * gtk/gtkkeyhash.[ch] (_gtk_key_hash_looku): We need 
4073         to pass the unmasked state to gdk_keymap_translate_keyboard_state() 
4074         to handle the case where a modifier not in the mask
4075         (like Num_Lock) changes the key value, so replace
4076         the masked state with a state/mask pair. (#106913,
4077         Olivier Ripoll)
4078
4079         * gtk/gtkwindow.c gtk/gtkbinding.c: Update to pass
4080         in state/mask pair to _gtk_key_hash_lookup()
4081
4082 Tue May 20 21:58:00 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
4083
4084         * modules/input/gtkimcontextxim.c (xim_info_display_closed):
4085         fix a memory leak, free input context list (#113259).
4086
4087 2003-05-21  Matthias Clasen  <maclas@gmx.de>
4088
4089         * configure.in (all_loaders): Add pcx.
4090
4091         * gtk/gtkcalendar.c: Make calendar controls spin.  (#112540)
4092
4093 Tue May 20 17:27:24 2003  Owen Taylor  <otaylor@redhat.com>
4094
4095         * gtk/gtkimmodule.c (gtk_im_module_init): Silently
4096         accept a missing gtk.immodules file, some people
4097         want to run without one. (#112406, patch from
4098         Arnaud Charlet)
4099
4100 Tue May 20 17:05:31 2003  Owen Taylor  <otaylor@redhat.com>
4101
4102         * gtk/gtkwindow.c (gtk_window_compute_hints): Fix 
4103         height/width confusion (#113370, Xan Lopez)
4104
4105 Tue May 20 15:48:45 2003  Owen Taylor  <otaylor@redhat.com>
4106
4107         * gdk/x11/gdkdnd-x11.c gdk/x11/gdkwindow-x11.c: Comprehensively
4108         zero all unused parts of client messages (Mainly Motif DND
4109         and EWMH). Also, fix a couple places where we were putting
4110         contents into Motif DND messages that didn't belong.
4111         (#113361, EWMH problem reported by Lubos Lunak)
4112
4113         * gtk/gtkselection.c (_gtk_selection_request): Handle the
4114         case where the property type for the multiple atoms is
4115         ATOM_PAIR by doing the conversions ourselve. This is
4116         needed for Xt inter-operation.
4117
4118 2003-05-19 Arafat Medini <lumina@silverpen.de>
4119
4120         * configure.in: Added ar to ALL_LINGUAS
4121
4122 2003-05-19  Matthias Clasen  <maclas@gmx.de>
4123
4124         * gtk/gtksettings.c (gtk_rc_property_parse_border,
4125         gtk_rc_property_parse_color, gtk_rc_property_parse_enum,
4126         gtk_rc_property_parse_flags, gtk_rc_property_parse_requisition):
4127         Add docs.
4128
4129         * gtk/gtkwidget.c (gtk_widget_class_install_style_property, 
4130         gtk_widget_class_install_style_property_parser): Add docs. 
4131
4132 2003-05-17  Matthias Clasen  <maclas@gmx.de>
4133
4134         * tests/prop-editor.c: Add navigation for object properties, so
4135         that you can easily edit the properties of the parent of a widget.
4136         (#113152)
4137
4138 Wed May 14 17:45:32 2003  Owen Taylor  <otaylor@redhat.com>
4139
4140         * gdk/gdkkeysyms.h gdk/gdkkeynames.c gdk/gdkkeyuni.c:
4141         Patch from Vasilis Vasaitis to fix Greek_IOTAdi[a]eresis 
4142         inconsistency and leave the old name as an aliass (#104873)
4143
4144 Wed May 14 16:40:09 2003  Owen Taylor  <otaylor@redhat.com>
4145
4146         * gtk/gtkframe.c (gtk_frame_set_label_widget): Patch
4147         from Charles Schmidt to add missing notify (#108305)
4148
4149 Wed May 14 16:00:51 2003  Owen Taylor  <otaylor@redhat.com>
4150  
4151         * gdk/x11/gdkgc-x11.c: Remove unecessary g_return_if_fail().
4152         (#105500, Morten Welinder.)
4153  
4154 Wed May 14 09:05:11 2003   Hidetoshi Tajima <hidetoshi.tajima@sun.com>
4155
4156         * modules/input/gtkimcontextxim.c (get_ic_real): use type of guint32
4157         instead of gumake for XNFilterEvents event mask(#110493).
4158
4159 2003-05-11  Anders Carlsson  <andersca@codefactory.se>
4160
4161         * gtk/gtkdnd.c (gtk_drag_source_unset_icon): Don't cast a gchar to
4162         a GObject. (#112762)
4163
4164 2003-05-08  Sven Neumann  <sven@gimp.org>
4165
4166         * configure.in: set the HAVE_X11R6 automake conditional to false
4167         if not compiling for X11.
4168
4169 2003-05-08  Matthias Clasen  <maclas@gmx.de>
4170
4171         * gtk/gtkcalendar.[ch] (gtk_calendar_set_display_options): 
4172         (gtk_calendar_get_display_options): New functions.
4173         (gtk_calendar_display_options): Depreate.  (#64567)
4174         (gtk_calendar_class_init): Add boolean properties for the display
4175         options.  (#50949)
4176
4177 Tue May  6 16:50:52 2003  Owen Taylor  <otaylor@redhat.com>
4178
4179         Patch from James Henstridge to update to automake-1.7
4180         (#109542)
4181  
4182         * autogen.sh: update to call newer tools.
4183  
4184         * configure.in: various updates, to use M4 macros to put
4185         variables that change each release at the top.
4186         Use AC_HELP_STRING to format help strings.
4187         Use AC_CONFIG_COMMANDS to generate gdkconfig.h.
4188  
4189         * Makefile.am: require Automake 1.7.  Remove gdk-2.0.pc and
4190         gtk+-2.0.pc on uninstall.  Pass --enable-gtk-doc to configure
4191         during distcheck.
4192  
4193         * docs/reference/*/Makefile.am: simplify to use the gtk-doc.make
4194         makefile fragment.
4195  
4196         * */Makefile.am: don't use STRIP_BEGIN/STRIP_END.
4197         Use BUILT_SOURCES where appropriate.
4198         Build generated files in builddir rather than srcdir.
4199         Fix uninstall and distclean targets to satisfy distcheck.
4200
4201         ===
4202
4203         * gdk/*/Makefile.am: Remove the hacks to get gdkenumtypes.h
4204         built first, since we are now using BUILT_SOURCES.
4205
4206         * gdk/Makefile.am: Remove an outdated comment about gdk_headers.
4207
4208         * demos/gtk-demo/Makefile.am: Fix srcdir != buildd problem
4209         with geninclude.pl.
4210
4211         * configure.in: Update versions to 2.3.0.
4212  
4213 2003-05-06  Tor Lillqvist  <tml@iki.fi>
4214
4215         Fix for #110165 (thanks to Arnaud Charlet):
4216         
4217         * gdk/win32/gdkevents-win32.c (build_keypress_event,
4218         build_keyrelease_event): For unshifted control char, use
4219         lowercase ASCII keyval.
4220         (gdk_event_translate): Similarily, when handling WM_SYSKEYDOWN and
4221         UP (i.e. Alt-something), if it's an unshifted ASCII letter, use
4222         lowercase keyval. Use build_key_event_state() here, too, instead
4223         of minor code duplication.
4224
4225 2003-05-06  Matthias Clasen  <maclas@gmx.de>
4226
4227         * tests/testmultidisplay.c: Don't include strings.h, it's not
4228         needed anymore.  (#112388)
4229
4230         * examples/menu/itemfactory.c: 
4231         * docs/tutorial/gtk-tut.sgml: Remove an unneeded include from the
4232         itemfactory example.
4233
4234 2003-05-05  Matthias Clasen  <maclas@gmx.de>
4235
4236         * gtk/gtkdnd.c (gtk_drag_source_set_icon_stock):  Actually set the
4237         icon type to the stock icon type.  (#111735, Dave Bordoley)
4238
4239 2003-05-05  Christian Rose  <menthos@menthos.com>
4240
4241         * configure.in: Added sr and sr@Latn to ALL_LINGUAS.
4242         Removed sp, it's replaced by sr@Latn.
4243
4244 Wed Apr 30 22:09:11 BST 2003  Tony Gale <gale@gtk.org>
4245
4246         * docs/faq/gtk-faq.sgml: GTK+ 2.x updates, mainly from
4247         Gonzalo Odiard
4248
4249 Mon Apr 28 17:54:39 2003  Jonathan Blandford  <jrb@redhat.com>
4250
4251         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy the search
4252         data iff the destroy func isn't NULL.
4253
4254 Thu Apr 24 19:12:05 2003  Owen Taylor  <otaylor@redhat.com>
4255
4256         * autogen.sh (have_libtool): Accept libtool-1.5. (#111480)
4257
4258 2003-04-23  Abel Cheung  <maddog@linux.org.hk>
4259
4260         * configure.in: Added "am" "mk" "ta" to ALL_LINGUAS.
4261
4262 Tue Apr 22 15:33:51 2003  Owen Taylor  <otaylor@redhat.com>
4263
4264         * gtk/gtkfilesel.c (open_new_dir): Fix capitalization
4265         of UTF-8. (#106419, Roozbeh Pournader)
4266
4267 Tue Apr 22 15:17:25 2003  Owen Taylor  <otaylor@redhat.com>
4268
4269         * configure.in: Only check for XFT2 if we found pango-xft
4270         (#105692, Jon Nall)
4271
4272 Tue Apr 22 15:12:19 2003  Owen Taylor  <otaylor@redhat.com>
4273
4274         * gtk/gtkwidget.c (gtk_widget_class_init): Fix PROP_HAS_FOCUS/
4275         PROP_IS_FOCUS confusion. (#111333, Jody Goldberg)
4276
4277 Tue Apr 22 19:43:01 BST 2003  Tony Gale <gale@gtk.org>
4278
4279         * docs/faq/gtk-faq.sgml: add note about version converage.
4280
4281 Mon Apr 21 19:02:16 2003  Owen Taylor  <otaylor@redhat.com>
4282
4283         * gtk/gtksocket.c (activate_key): Fix prototype for
4284         activate_key. (#108927, Jason D. Hildebrand)
4285
4286 Mon Apr 21 18:42:51 2003  Owen Taylor  <otaylor@redhat.com>
4287
4288         * demos/gtk-demo/Makefile.am demos/gtk-demo/geninclude.pl:
4289         Remove geninclude.pl from CVS and don't dist it either,
4290         it is generated. (#108970, Rich Kinder)
4291
4292 Mon Apr 21 18:35:48 2003  Owen Taylor  <otaylor@redhat.com>
4293
4294         * gtk/gtkobject.h: Remove a couple of obsolete comments,
4295         fix another comment. (#109737, Britton Kerin)
4296
4297 Mon Apr 21 18:29:03 2003  Owen Taylor  <otaylor@redhat.com>
4298
4299         * gtk/gtkiconfactory.c (gtk_icon_set_unref): Free
4300         the source list, not just it's contents (Patch
4301         from Charles Kerr, #108243)
4302
4303 Mon Apr 21 18:13:46 2003  Owen Taylor  <otaylor@redhat.com>
4304
4305         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_filter): Patch
4306         from Alex Larsson fixing problem with restacking during
4307         DND. (#108671)
4308
4309 Mon Apr 21 15:07:29 2003  Owen Taylor  <otaylor@redhat.com>
4310
4311         * gdk/x11/gdkdisplay-x11.c (gdk_display_keyboard/pointer_ungrab):
4312         Calling XFlush() after ungrabbing, to avoid problems if
4313         the app subsequently blocks on a long-running operation.
4314         (#106520, reported by Rajkumar Siva)
4315
4316 Fri Apr 18 17:42:45 2003  Owen Taylor  <otaylor@redhat.com>
4317
4318         * gdk/x11/gdkwindow-x11.c (set_initial_hints): Add
4319         SKIP_TASKBAR/SKIP_PAGER to set of properties we
4320         might set on map. (#110019, problem reported
4321         by Loban Rahman)
4322
4323 Fri Apr 18 17:14:33 2003  Owen Taylor  <otaylor@redhat.com>
4324
4325         * gdk/gdkevents.c (gdk_event_copy): Fix for the
4326         case when gdk_event_copy() is called on a non-allocated
4327         event. (#109716, reported by Rich Burridge)
4328
4329 Fri Apr 18 16:57:44 2003  Owen Taylor  <otaylor@redhat.com>
4330
4331         * gdk/x11/gdkdrawable-x11.c (draw_with_images/pixmaps):
4332         Fix pointer arithmetic on 'void *'. (#108322)
4333
4334 Fri Apr 18 16:31:49 2003  Owen Taylor  <otaylor@redhat.com>
4335
4336         * configure.in gdk/x11/gdkdisplay-x11.c modules/input/Makefile.am:
4337         Check for XAddConnectionWatch()/X11R6, and if found, disable XIM and
4338         use of XAddConnectionWatch. Remove --enable-xim config option.
4339         Should fix building on X11R6 (#110523, Albert Chin)
4340
4341 Fri Apr 18 15:56:46 2003  Owen Taylor  <otaylor@redhat.com>
4342
4343         * gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkdrawable-x11.[ch]:
4344         Patch from Morten Welinder to catch Sun servers with a 
4345         broken implementation of the RENDER extension. (#108309)
4346
4347 Fri Apr 18 15:30:38 2003  Owen Taylor  <otaylor@redhat.com>
4348
4349         * gdk/x11/gdkwindow-x11.c (set_text_property): Use
4350         gdk_free_compound_text(), not g_free(). (#107643,
4351         Michael Zucchi)
4352
4353 Fri Apr 18 15:11:50 2003  Owen Taylor  <otaylor@redhat.com>
4354
4355         * gdk/x11/gdkdisplay-x11.c (_gdk_display_x11_get_type)
4356         gdk/x11/gdkscreen-x11.c (_gdk_screen_x11_get_type): Fix
4357         wrong use of base_finalize. (#105126, Sven Neumann)
4358
4359 Fri Apr 18 15:06:00 2003  Owen Taylor  <otaylor@redhat.com>
4360
4361         * gdk/gdkwindow.c (gdk_window_constrain_size): Fix
4362         '/' vs. '*' problem in aspect ration computations. (#108237)
4363
4364 Fri Apr 18 14:15:09 2003  Owen Taylor  <otaylor@redhat.com>
4365
4366         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): 
4367         * gdk/x11/gdkevents-x11.c (gdk_event_translate): You
4368         don't get a XkbMapNotify event if you get a XkbNewKeyboardNotify 
4369         event, so select for both. (#108406, Egmont Koblinger)
4370
4371 Thu Apr 17 09:57:44 2003  Jonathan Blandford  <jrb@gnome.org>
4372
4373         * gtk/gtktreeview.c (validate_visible_area): remove infinite loop
4374         caused by not clearing the scroll_to_path.
4375
4376 2003-04-16  Matthias Clasen  <maclas@gmx.de>
4377
4378         * gtk/gtkstyle.c: Doc additions and fixes.
4379
4380         * gtk/gtktreeviewcolumn.c
4381         (_gtk_tree_view_column_get_neighbor_sizes): Doc fixes.
4382
4383 2003-04-14  Michael Natterer  <mitch@gimp.org>
4384
4385         * gtk/gtkliststore.c (gtk_list_store_move): added checks to ensure
4386         that the iter is not reordered to its own position. Prevents model
4387         corruption for the case that the store contains only a single item
4388         (fixes bug #108387).
4389
4390         Unrelated:
4391
4392         * gtk/gtkliststore.c (gtk_list_store_insert): g_list_alloc() the
4393         new list element later so we don't leak it if we decide to return
4394         early.
4395
4396         * gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
4397         set selection->tree_view->priv->anchor to NULL after freeing it.
4398
4399 2003-04-13  Matthias Clasen  <maclas@gmx.de>
4400
4401         * gtk/gtktreeviewcolumn.c
4402         (gtk_tree_view_column_cell_get_position): Document. 
4403
4404         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): 
4405         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_[sg]et_expand): 
4406         * gtk/gtkbutton.c (gtk_button_[sg]et_focus_on_click): Document
4407         these as 2.4 additions.
4408
4409 2003-04-09  Matthias Clasen  <maclas@gmx.de>
4410
4411         * INSTALL.in: Fix the real thing.
4412
4413         * INSTALL: Typo fix.
4414
4415 Mon Apr  7 19:43:15 2003  Owen Taylor  <otaylor@redhat.com>
4416
4417         * gdk/x11/gdkdisplay-x11.c (gdk_x11_display_ungrab): Flush
4418         after ungrabbing the server.
4419  
4420         * gdk/x11/gdkimage-x11.c: Remove some no-longer-needed
4421         calls to XFlush().
4422
4423         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer):
4424         Use gdk_x11_display_grab/ungrab.
4425
4426         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Initialize
4427         use_xshm to TRUE so SHM gets used when present.
4428  
4429 2003-04-07  Matthias Clasen  <maclas@gmx.de>
4430
4431         * gtk/gtktextlayout.c (set_para_values): 
4432         * gtk/gtkenums.h (GtkWrapMode): Add GTK_WRAP_WORD_CHAR.  (#110086,
4433         David Brigada)
4434
4435         * gtk/gtkcelleditable.c, gtk/gtkfixed.c, gtk/gtktreemodel.c,
4436         gtk/gtktreeselection.c, gtk/gtktreeview.c: Fix numerous
4437         misspellings of possessive "its".  (#110027, Doug Quale)
4438
4439 2003-04-03  Matthias Clasen  <maclas@gmx.de>
4440
4441         * demos/gtk-demo/main.c (demo_find_file): Only use files from the
4442         current directory if it looks like the srcdir.  (#109357)
4443
4444 Wed Apr  2 23:02:26 2003  Soeren Sandmann  <sandmann@daimi.au.dk>
4445
4446         * gtk/gtkbutton.[ch] (gtk_button_class_init): add property
4447         focus_on_click
4448
4449         * gtk/gtkwindow.c (gtk_window_focus): make arrow keyboard
4450         navigation not wrap around.
4451
4452 2003-04-02  Matthias Clasen  <maclas@gmx.de>
4453
4454         * gtk/gtkprogress.c (gtk_progress_get_percentage_from_value):
4455         Return 0 if lower == upper.  (#109155)
4456         (gtk_progress_get_current_percentage): Use
4457         gtk_progress_get_percentage_from_value().
4458
4459 2003-04-01  Matthias Clasen  <maclas@gmx.de>
4460
4461         * gtk/gtkimcontext.c (gtk_im_context_focus_in): Fix docs.
4462         (#109510, Noah Levitt)
4463
4464 Mon Mar 31 13:52:13 2003  Jonathan Blandford  <jrb@redhat.com>
4465
4466         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): null initialize reorder's
4467         members so Purify won't complain.
4468
4469         * gtk/gtkliststore.c (gtk_list_store_sort): ditto.
4470
4471 2003-03-31  Matthias Clasen  <maclas@gmx.de>
4472
4473         * gtk/gtkwindow.c: Add a new property, role, corresponding to 
4474         gtk_window_[gs]et_role().  (#93904)
4475
4476 Sun Mar 30 03:57:42 2003  Jonathan Blandford  <jrb@gnome.org>
4477
4478         * gtk/gtktreeselection.c (gtk_tree_selection_get_selected_rows):
4479         fix crash.  Patch from Markus Lausser <sgop@users.sourceforge.net>
4480
4481 2003-03-29  Matthias Clasen  <maclas@gmx.de>
4482
4483         * gtk/gtkoptionmenu.c (gtk_option_menu_remove_contents): Set state
4484         of labels back to normal before reparenting back.  (#102387)
4485
4486         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): Set
4487         a default window title to match the GtkFontSelectionDialog behavior.
4488  
4489         (gtk_color_selection_dialog_new): Don't call
4490         gtk_window_set_title() if title is NULL.  (bug #101975, Daniel Elstner)
4491
4492 2003-03-29  Matthias Clasen  <maclas@gmx.de>
4493
4494         Fix for bug #78499:
4495         
4496         * gtk/gtkentry.h (struct _GtkEntry): Add flags select_words and
4497         select_lines. 
4498
4499         * gtk/gtkentry.c (gtk_entry_button_press): Set select_words and
4500         select_lines on double/triple click.
4501
4502         * gtk/gtkentry.c (gtk_entry_motion_notify): Implement
4503         select-by-words and select-by-lines behaviour.
4504
4505         Fixes for bug #56248:
4506         
4507         * gtk/gtknotebook.c (stop_scrolling): New function to remove the
4508         timer and queue a redraw. 
4509         (gtk_notebook_grab_notify): 
4510         (gtk_notebook_state_changed): New functions to call stop_scrolling() 
4511         if necessary.   
4512         (gtk_notebook_button_release): Use stop_scrolling().
4513         (gtk_notebook_draw_arrow): Fix drawing of insensitive arrows.
4514
4515         * gtk/gtkrange.c (stop_scrolling): New function to remove the
4516         grab, remove the timer and queue a redraw.
4517         (gtk_range_grab_notify): 
4518         (gtk_range_state_changed): New functions to call stop_scrolling() 
4519         if necessary.   
4520         (gtk_range_button_release): Use stop_scrolling().
4521
4522         * gtk/gtkspinbutton.c (gtk_spin_button_grab_notify): 
4523         (gtk_spin_button_state_changed): Redraw after stop_spinning.
4524         (gtk_spin_button_stop_spinning): Reset click_child to correct the
4525         drawing of the arrows.
4526         (gtk_spin_button_button_release): Use a local copy of click_child,
4527         since stop_spinning() resets it.
4528
4529         * gtk/gtknotebook.c (gtk_notebook_class_init): Add C-A-PgUp and
4530         C-A-PgDown as alternatives to the A-less variants. (This slipped
4531         in accidentally some time ago).  (#97860)
4532
4533 2003-03-26  Sven Neumann  <sven@gimp.org>
4534
4535         * gtk/gtktreeview.c: rewrote the function that does node and arrow
4536         prelighting, queue all redraws from here (Fixes bug #108792).
4537
4538 2003-03-20  Richard Kinder <r_kinder@yahoo.com>
4539
4540         * demos/testpixbuf.c (update_timeout): set error to NULL, not FALSE.
4541         Fixes bug #108778.
4542
4543 2003-03-20  Guntupalli Karunakar <karunakar@freedomink.org>
4544
4545         * configure.in: Added "ml" in ALL_LINGUAS
4546
4547 Sat Mar 15 18:49:27 2003  Manish Singh  <yosh@gimp.org>
4548
4549         * gtk/gtkradiomenuitem.h: use GTK_DISABLE_DEPRECATED instead of
4550         G_DISABLE_DEPRECATED.
4551
4552 2003-03-14  Tor Lillqvist  <tml@iki.fi>
4553
4554         * gdk/win32/gdkevents-win32.c: Use the signed GET_X_LPARAM() and
4555         GET_Y_LPARAM() to extract x and y coordinates from an LPARAM or
4556         DWORD, and not the unsigned HIWORD() and LOWORD(). Systems with
4557         multiple monitors can have negative coordinates on some of the
4558         monitors. (partial fix for #99496, Arnaud Charlet)
4559
4560 2003-03-15  Matthias Clasen  <maclas@gmx.de>
4561
4562         * gtk/gtktextview.c: Add a "buffer" property.  (#108353) 
4563
4564 2003-03-13  Sven Neumann  <sven@gimp.org>
4565
4566         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
4567         removed redundant calls to g_object_notify().
4568         (gtk_cell_renderer_pixbuf_get_size): removed redundant casts, see
4569         bug #108236.
4570
4571         * gtk/gtktextiter.c (_gtk_text_iter_get_segment_char)
4572         (_gtk_text_iter_get_segment_byte): return 0, not NULL (these
4573         functions return an integer value).
4574
4575 2003-03-13  Tor Lillqvist  <tml@iki.fi>
4576
4577         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
4578         WM_MOUSEMOVE, the test whether we have actually moved (and thus
4579         shouldn't generate an GDK event) moved after the call to
4580         propagate() and translate_mouse_coords(). Otherwise we were
4581         testing wrong values. (#108115, Allin Cottrell)
4582         (gdk_event_translate): On WM_?BUTTONUP, set current_{x,y} the same
4583         way as in WM_?BUTTONDOWN and WM_MOUSEMOVE.
4584
4585         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab): if a grab cursor
4586         is used, must copy the HCURSOR with CopyCursor(), as it is OK to
4587         destroy the GdkCursor after calling gdk_pointer_grab(). Set the
4588         cursor right away with SetCursor(), as we won't get any
4589         WM_SETCURSOR messages while the mouse is captured. 
4590         (gdk_display_pointer_ungrab): Correspondingly, destroy the copy
4591         with DestroyCursor() when no longer used. (#108114, Allin Cottrell)
4592
4593         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On
4594         WM_SYSCHAR, return FALSE from the window procedure to prevent the
4595         DefWindowProc from being called. Otherwise Windows would beep,
4596         thinking you are tring to access a (nonexistent) menu when you
4597         press Alt-something. Don't do this for Alt-Space,
4598         though. (#107454, Martyn Russell)
4599
4600         * gdk/win32/gdkcursor-win32.c: Minor spacing and debug print fixes.
4601
4602 Tue Mar 11 12:01:07 2003  Jonathan Blandford  <jrb@gnome.org>
4603
4604         * gtk/gtktreeview.c (gtk_tree_view_class_init): Ctrl/Shift
4605         [left/right] expands/collapses the tree, #108092
4606
4607 2003-03-09  Tor Lillqvist  <tml@iki.fi>
4608
4609         * gdk/win32/gdkdrawable-win32.c (draw_segments): Don't try to
4610         compensate for LineTo() not drawing the end pixel. It causes more
4611         harm than benefits, see bug #81895.
4612
4613 2003-03-08  Matthias Clasen  <maclas@gmx.de>
4614
4615         Bug #107664 continued:
4616
4617         * gdk/x11/gdkinputprivate.h: 
4618         * gdk/x11/gdkinput-none.c (_gdk_input_window_none_event): Remove. 
4619         (_gdk_input_other_event): Return gboolean.
4620         * gdk/x11/gdkinput-xfree.c (_gdk_input_window_none_event): Remove. 
4621         (_gdk_input_other_event): Return gboolean.
4622         * gdk/x11/gdkinput-x11.c (_gdk_input_common_other_event): Return gboolean.
4623
4624         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Make return_val
4625         gboolean, remove pointless call to _gdk_input_window_none_event.
4626
4627         * gdk/win32/gdkinput-win32.[hc] (_gdk_input_other_event): Return gboolean.
4628         (_gdk_input_window_none_event): Remove.
4629
4630         * gtk/gtktextiter.c (_gtk_text_iter_get_indexable_segment): 
4631         (_gtk_text_iter_get_any_segment): 
4632         (_gtk_text_iter_get_segment_byte): 
4633         (_gtk_text_iter_get_segment_char): 
4634         (_gtk_text_iter_get_text_line): 
4635         (_gtk_text_iter_get_btree): Fix 0/NULL confusion.
4636         * gdk/x11/gdkdnd-x11.c (motif_target_table_check): Return gint.
4637         * gdk/win32/gdkfont-win32.c (gdk_font_equal): 
4638         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_get_deskrelative_origin): 
4639         (gdk_window_get_origin): 
4640         * gdk/linux-fb/gdkcolor-fb.c (gdk_colors_alloc): Fix 0/FALSE confusion. 
4641
4642 2003-03-06  Matthias Clasen  <maclas@gmx.de>
4643
4644         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Return gboolean, not gint.
4645         (#107664, Morten Welinder)
4646
4647         * gdk/x11/gdkwindow-x11.c (gdk_window_get_deskrelative_origin): 
4648         * gdk/x11/gdkfont-x11.c (gdk_font_equal): 
4649         * gdk/x11/gdkdnd-x11.c (gdk_drag_get_protocol_for_display): 
4650         Fix TRUE/1 and FALSE/0 confusion.  (#107664, Morten Welinder)
4651
4652         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): 
4653         * gtk/gtkeditable.c (gtk_editable_get_chars): 
4654         * gtk/gtkctree.c (gtk_ctree_find_node_ptr): 
4655         * demos/gtk-demo/main.c (demo_find_file): Fix NULL/FALSE confusion
4656         (#107648, Morten Welinder)Fix NULL/FALSE confusion
4657         (#107648, Morten Welinder)
4658
4659 2003-03-04  Matthias Clasen  <maclas@gmx.de>
4660
4661         * gtk/gtkobject.h: Add deprecation guards for gtk_object_new ().
4662
4663 Sun Mar  2 23:35:57 2003  Jonathan Blandford  <jrb@gnome.org>
4664
4665         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
4666         handle rtl code.  Thanks to Matthias Clasen for an initial patch
4667         to handle the RTL code.
4668
4669         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_get_size): ditto
4670
4671         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_size): ditto
4672
4673         * gtk/gtktreeview.c: (invalidate_column),
4674         (invalidate_last_column),
4675         (gtk_tree_view_get_real_requested_width_from_column),
4676         (gtk_tree_view_size_allocate_columns),
4677         (gtk_tree_view_size_allocate), (gtk_tree_view_button_press),
4678         (gtk_tree_view_button_release_drag_column),
4679         (gtk_tree_view_update_current_reorder),
4680         (gtk_tree_view_motion_drag_column), (gtk_tree_view_bin_expose),
4681         (gtk_tree_view_key_press), (gtk_tree_view_header_focus),
4682         (gtk_tree_view_get_background_xrange),
4683         (gtk_tree_view_get_arrow_xrange),
4684         (gtk_tree_view_is_expander_column),
4685         (gtk_tree_view_set_column_drag_info),
4686         (gtk_tree_view_move_cursor_left_right):
4687         Add RTL support.
4688
4689         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): add an
4690         expand flag.
4691
4692         * gtk/gtktreeviewcolumn.c:
4693         (gtk_tree_view_column_class_init),
4694         (gtk_tree_view_column_set_property),
4695         (gtk_tree_view_column_get_property),
4696         (gtk_tree_view_column_set_expand),
4697         (gtk_tree_view_column_get_expand),
4698         (gtk_tree_view_column_cell_process_action):
4699         Add support for expand flag.  Thanks to Kristian Rietveld for an
4700         initial patch for this.
4701
4702 Fri Feb 28 02:06:17 2003  Jonathan Blandford  <jrb@gnome.org>
4703
4704
4705 2003-03-02  Tor Lillqvist  <tml@iki.fi>
4706
4707         * gdk/gdk.def
4708         * gtk/gtk.def: Add a bunch of missing entries. Noticed by Cedric
4709         Gustin.
4710
4711 2003-03-01  Matthias Clasen  <maclas@gmx.de>
4712
4713         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment): 
4714         (gtk_scrolled_window_set_hadjustment): Replace uses of
4715         gtk_object_new by g_object_new.
4716
4717 Thu Feb 27 17:44:24 2003  Manish Singh  <yosh@gimp.org>
4718
4719         * demos/gtk-demo/main.c
4720         * demos/gtk-demo/tree_store.c
4721         * gdk/x11/gdkscreen-x11.c
4722         * gtk/gtkcellrenderertoggle.c
4723         * gtk/gtkcolorsel.c
4724         * gtk/gtkdnd.c
4725         * gtk/gtkeditable.c
4726         * gtk/gtkentry.c
4727         * gtk/gtkmenu.c
4728         * gtk/gtkmenubar.c
4729         * gtk/gtkmenuitem.c
4730         * gtk/gtkmenushell.c
4731         * gtk/gtkrc.c
4732         * gtk/gtksettings.c
4733         * gtk/gtkstyle.c
4734         * gtk/gtktextbuffer.c
4735         * gtk/gtktextview.c
4736         * gtk/gtktreeviewcolumn.c
4737         * tests/testgtk.c
4738         * tests/testtext.c
4739         * tests/testtreeedit.c
4740         * tests/testtreefocus.c
4741         * tests/testtreeview.c: remove unnecessary G_OBJECT() casts.
4742
4743 Tue Feb 25 21:55:17 2003  Jonathan Blandford  <jrb@redhat.com>
4744
4745         * gtk/gtkoptionmenu.c (gtk_option_menu_position): account for RTL
4746         code.
4747
4748 2003-02-24  Sven Neumann  <sven@gimp.org>
4749
4750         * gtk/gtkmain.c (gtk_get_default_language): fixed documentation.
4751
4752 2003-02-21  Tomas Ogren  <stric@ing.umu.se>
4753
4754         * docs/reference/gtk/tmpl/gtktreemodel.sgml: Fix typos in an example
4755
4756 2003-02-20  Matthias Clasen  <maclas@gmx.de>
4757
4758         * gtk/gtktextbtree.c (_gtk_text_line_previous_could_contain_tag): 
4759         Check if line_ancestor_parent is NULL.  (#102711, Manuel Clos)
4760
4761         * gtk/gtktextview.c (gtk_text_view_scroll_to_iter): 
4762         (gtk_text_view_update_adjustments): Make sure cursor stays visible
4763         during horizontal scrolling.  (#75270)
4764
4765 2003-02-19  Matthias Clasen  <maclas@gmx.de>
4766
4767         * tests/testdnd.c: Replace gtk_timeout_* by their GLib
4768         counterparts. (#106532)
4769
4770         * gdk/gdkkeys.c (gdk_keymap_class_init): Associate the
4771         keys_changed virtual function with the keys_changed signal.
4772         (#106512, Jeff Franks)
4773
4774 2003-02-15  Larry Ewing  <lewing@ximian.com>
4775
4776         * gdk/gdkevents.c (gdk_event_copy): copy the event axes as well.
4777
4778 2003-02-17  Mohammad DAMT  <mdamt@bisnisweb.com>
4779
4780         * po/id.po: Added Indonesian translation
4781         * configure.in: Added "id" to ALL_LINGUAS
4782
4783 2003-02-14  Matthias Clasen  <maclas@gmx.de>
4784
4785         * gtk/gtktextview.c (popup_targets_received): Remove bogus casts.
4786
4787 2003-02-12  Christian Rose  <menthos@menthos.com>
4788
4789         * configure.in: Added "yi" to ALL_LINGUAS.
4790
4791 2003-02-12  Matthias Clasen  <maclas@gmx.de>
4792
4793         Fix for #82734 and #78216:
4794         
4795         * gtk/gtktextview.c (delete_cb): 
4796         (select_all_cb): New callbacks for context menu items.
4797         (popup_targets_received): Add "Delete" and "Select All" to context
4798         menu, mnemonics and title caps for all items.
4799
4800         * gtk/gtkentry.c (gtk_entry_delete_cb): New callback for "Delete"
4801         context menu item.
4802         (popup_targets_received): Add "Delete" to context menu, mnemonics
4803         and title caps for all items.
4804
4805 2003-02-09  Tor Lillqvist  <tml@iki.fi>
4806
4807         * gtk/gtkfilesel.c (win32_gtk_add_drives_to_dir_list): Use
4808         GetDriveType() to recognize removable drives (in order to avoid
4809         hanging if trying to access an empty floppy drive), instead of
4810         hardcoding A: and B: (#105654).
4811
4812 2003-02-09  Matthias Clasen  <maclas@gmx.de>
4813
4814         * gtk/gtkwidget.c (gtk_widget_set_name): Add note about periods in 
4815         names.  (#57680)
4816
4817 2003-02-09  Christian Rose  <menthos@menthos.com>
4818
4819         * configure.in: Removed "en@IPA.po" from ALL_LINGUAS.
4820
4821 Fri Feb  7 04:49:46 2003  Tim Janik  <timj@gtk.org>
4822
4823         * gtk/gtkobject.c: remove quark_user_data usage in
4824         gtk_object_{g|s}et_user_data(). fixes get_user_data()
4825         returning NULL for user_data set through property interface.
4826
4827         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): don't put out
4828         warnings if a pixbuf couldn't be retrieved, since (a) this doesn't
4829         need to be a programming error (in case of loaded data), (b) it breaks
4830         with 2.0 behaviour where extra magic could be used to create empty
4831         images. don't attempt to retrieve pixbufs from NULL extra_data.
4832
4833 2003-02-06  Matthias Clasen  <maclas@gmx.de>
4834
4835         * gdk/x11/gdkvisual-x11.c (gdk_visual_get_best_with_depth): Return
4836         a GdkVisual *, not a GdkVisual **.  (#105243)
4837
4838         * gtk/gtkclist.c: 
4839         * gtk/gtkctree.c: 
4840         * gtk/gtkcontainer.c: 
4841         * gtk/gtkdnd.c: 
4842         * gtk/gtkentry.c: 
4843         * gtk/gtklist.c:
4844         * gtk/gtkmenu.c:
4845         * gtk/gtkmenuitem.c:
4846         * gtk/gtknotebook.c:
4847         * gtk/gtkselection.c:
4848         * gtk/gtkspinbutton.c:
4849         * gtk/gtktext.c:
4850         * gtk/gtktextview.c:
4851         * gtk/gtktooltips.c:
4852         * gtk/gtktreeview.c:
4853         * gtk/gtkwindow.c: Replace uses of gtk_timeout_* and gtk_idle_* by
4854         their non-deprecated GLib counterparts.
4855         
4856         * gtk/gtkmain.h: Fully deprecate gtk_timeout_* and gtk_idle_*.
4857         
4858 Sun Feb  2 16:45:57 GMT 2003  Tony Gale <gale@gtk.org>
4859
4860         * docs/tutorial/gtk-tut.sgml: cleanups from
4861         Sebastian Rittau (#104832)
4862
4863 2003-02-01  Tor Lillqvist  <tml@iki.fi>
4864
4865         Merge from stable:
4866
4867         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_foreign_new_for_display,
4868         gdk_pixmap_lookup, gdk_pixmap_lookup_for_display): Implement.
4869         (#104108, Naofumi Yasufuku)
4870
4871         * gdk/gdk.def: Export the above. Export
4872         gdk_screen_get_system_visual, noticed by Ed Woods.
4873
4874 Fri Jan 31 17:45:22 2003  Manish Singh  <yosh@gimp.org>
4875
4876         * demos/pixbuf-demo.c
4877         * demos/testpixbuf.c
4878         * demos/gtk-demo/pixbufs.c: remove deprecated gtk_timeout_* usage.
4879
4880 Fri Jan 31 17:33:00 2003  Manish Singh  <yosh@gimp.org>
4881                                                                                 
4882         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): set_state
4883         on the tab_label before unparenting it, in case the unparent
4884         drops the refcount to 0.
4885
4886 2003-02-01  Matthias Clasen  <maclas@gmx.de>
4887
4888         * gtk/gtkiconfactory.h: Use GDK_MULTIHEAD_SAFE like all other gtk
4889         headers. Sorry about gtk_selection_clear, Yosh.
4890
4891 Thu Jan 30 17:16:05 2003  Manish Singh  <yosh@gimp.org>
4892
4893         * gtk/gtkselection.h: declare gtk_selection_clear in GTK_COMPILATION
4894         too, for gtkwidget.c. Remember people, when introducing new
4895         deprecations, make sure internal code isn't using it, or if so,
4896         reorganize appropriately like I've done in other places.
4897
4898         * tests/testtext.c: don't use deprecated gtk_timeout_* stuff.
4899
4900 2003-01-31  Matthias Clasen  <maclas@gmx.de>
4901
4902         * gtk/gtkselection.h: 
4903         * gtk/gtkselection.c (gtk_selection_clear): Deprecate.  (#85683)
4904
4905         * gdk/gdkpixbuf.h: 
4906         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): 
4907         (gdk_pixbuf_render_to_drawable_alpha): Deprecate.  (#60582)
4908
4909         * gtk/gtkcolorsel.h:
4910         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4911         Deprecate.  (#98167)
4912
4913         * gtk/gtkpaned.h: Deprecate gtk_paned_computed_position(). (#97077)
4914
4915         * gtk/gtkmain.h: Deprecate the gtk_timeout_*, gtk_idle_*
4916         and gtk_input_* functions.  (#71596)
4917         
4918         * gtk/gtkentry.c (gtk_entry_move_cursor): 
4919         * gtk/gtklabel.c (gtk_label_move_cursor): Handle
4920         GTK_MOVEMENT_HORIZONTAL_PAGES in switches.
4921
4922         * gdk/gdk.h: Deprecate gdk_wcstombs() and gdk_mbstowcs().  (#79803)
4923
4924         * gtk/gtkitemfactory.h: 
4925         * gtk/gtkitemfactory.c (gtk_item_factory_add_foreign): Deprecate. 
4926         (#69244)
4927
4928 Thu Jan 30 23:48:30 2003  Kristian Rietveld  <kris@gtk.org>
4929
4930         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_count_special_cell):
4931         only count the special cell if it is also visible,
4932         (_gtk_tree_view_column_get_neighbor_sizes): only take the width into
4933         account from visible cells,
4934         (gtk_tree_view_column_cell_get_position): likewise, (Reported and
4935         testcase provided by Vasco Alexandre da Silva Costa, via IRC,
4936         tracking bug was #104563).
4937         
4938 Thu Jan 30 23:46:15 2003  Kristian Rietveld  <kris@gtk.org>
4939
4940         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
4941         subtract expander space and focus line space from the extra space
4942         we are about the allocate. (Fixes #104635).
4943
4944 Thu Jan 30 23:42:03 2003  Kristian Rietveld  <kris@gtk.org>
4945
4946         * gtk/gtkstyle.c (apply_affine_on_point): fix rouding error
4947         (Fixes #96242, patch from Soeren Sandmann).
4948
4949 Thu Jan 30 16:54:29 2003  Owen Taylor  <otaylor@redhat.com>
4950
4951         * gtk/gtknotebook.c: Patch from Soeren Sandmann
4952         to update the states of the tab label child
4953         widgets to match the state of the tabs. 
4954         (#93389, Reported by Tommi Komulainen)
4955
4956 Thu Jan 30 16:30:54 2003  Owen Taylor  <otaylor@redhat.com>
4957
4958         * Makefile.am (EXTRA_DIST): Remove gtk+.spec.in from
4959         EXTRA_DIST, and from dist rules. (#102231)
4960
4961 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
4962
4963         * gtk/gtktoolbar.c (set_child_packing_and_visibility): New helper
4964         function that sets the icon's and label's packing options and
4965         visibility based on toolbar->style.
4966
4967         (gtk_toolbar_internal_insert_element):
4968         (gtk_real_toolbar_style_changed): Make use of
4969         set_child_packing_and_visibility() to clean up the code and get
4970         the packing right for icon-only/text-only toolbars. (#104679)
4971
4972         (get_first_child): Remove, and use gtk_bin_get_child() instead.
4973
4974 2003-01-30  Matthias Clasen  <maclas@gmx.de>
4975
4976         * gtk/gtktextview.c: Replace PAGE_HORIZONTALLY_HACK_VALUE by
4977         GTK_MOVEMENT_HORIZONTAL_PAGES.  (#68947)
4978
4979         * gtk/gtkenums.h: Add GTK_MOVEMENT_HORIZONTAL_PAGES to GtkMovementStep.
4980         
4981 Thu Jan 30 16:01:29 2003  Owen Taylor  <otaylor@redhat.com>
4982
4983         * gdk/gdkrgb.c (gdk_rgb_try_colormap): Remove the 
4984         attempt-to-allocate then free code. To handle multiple
4985         people allocating colors at the same time, we need
4986         to just go ahead and try. (#102213, Shivram U)
4987         
4988 2003-01-30  Daniel Elstner  <daniel.elstner@gmx.net>
4989
4990         * gtk/gtkcolorsel.c (palette_paint): Explicitely draw an opaque
4991         rectangle using the background color rather than relying on
4992         gdk_window_clear_area(), so that the palette works properly with
4993         pixmap themes. (#101732)
4994
4995         * demos/gtk-demo/colorsel.c: Install an "expose_event" handler
4996         to fill the drawing area in the background color.
4997
4998 Wed Jan 29 14:11:21 2003  Hidetoshi Tajima  <hidetoshi.tajima@sun.com>
4999
5000         * modules/input/gtkimcontextxim.c (choose_better_style): fix a memory
5001         initialization error for selecting input style (#103549).
5002
5003 Wed Jan 29 17:02:41 2003  Owen Taylor  <otaylor@redhat.com>
5004
5005         * gdk/gdkkeyuni.c (get_decimal_char): Make the 
5006         translation of GDK_KP_Decimal dependent on LC_NUMERIC.
5007         (#101225)
5008
5009 Wed Jan 29 15:43:56 2003  Owen Taylor  <otaylor@redhat.com>
5010
5011         * gtk/gtkmenushell.c (gtk_real_menu_shell_move_current):
5012         Make up from the menu bar go to the end of the submenu.
5013         (#96114, Ian Peters.)
5014
5015         * gtk/gtkmenuitem.c (gtk_menu_item_mnemonic_activate): 
5016         Only do the select-but-not-activate stuff if the
5017         menu is already active. Otherwise, just activate.
5018         (#101690, Arvind Samptur)
5019
5020 Tue Jan 28 15:18:24 2003  Owen Taylor  <otaylor@redhat.com>
5021
5022         * autogen.sh (have_automake): Fix version in complaint
5023         message about automake. (#104366, Rich Burridge)
5024
5025 Mon Jan 27 16:38:13 2003  Owen Taylor  <otaylor@redhat.com>
5026
5027         * configure.in: Remove SOEXT stuff; it doesn't work portably.
5028
5029 Mon Jan 27 22:45:15 2003  Kristian Rietveld  <kris@gtk.org>
5030
5031         * gtk/gtktreestore.c (gtk_tree_store_move): don't handle b if
5032         we appended/prepended, send the rows_reordered signal to the 
5033         correct level ... (Reported by Matthew Tuck).
5034
5035 Mon Jan 27 22:43:11 2003  Kristian Rietveld  <kris@gtk.org>
5036
5037         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): don't just bail
5038         out if the level only has one item, recurse over the child if there
5039         is one. (Fixes #100458, reported by Gaël Le Mignot).
5040
5041 Mon Jan 27 22:41:26 2003  Kristian Rietveld  <kris@gtk.org>
5042
5043         * gtk/gtktreeview.c (gtk_tree_view_set_model),
5044         (gtk_tree_view_search_equal_func): make TreeView search handle
5045         all types which are transformable by GValue. (Fixes #99803, reported
5046         by Muktha Narayan).
5047
5048 Mon Jan 27 22:39:25 2003  Kristian Rietveld  <kris@gtk.org>
5049
5050         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_sort_column_id):
5051         *really* handle unsetting the ID. Slightly modified patch from
5052         Soeren Sandmann. Fixes #87556, reported by Jarek Dukat.
5053
5054 Mon Jan 27 22:33:43 2003  Kristian Rietveld  <kris@gtk.org>
5055
5056         Fixes the total GtkTreeSortable mess, and #83195, reported by
5057         Jarek Dukat
5058
5059         * gtk/gtktreestore.c (gtk_tree_store_get_sort_column_id),
5060         (gtk_tree_store_set_sort_column_id), (gtk_tree_store_set_sort_func),
5061         (gtk_tree_store_set_default_sort_func): use the constant
5062         GTK_TREE_SORTABLE_DEFAULT_SORT_COLUMN_ID instead of -1, make functions
5063         work as advertised by the documentation.
5064
5065         * gtk/gtklistore.c (gtk_list_store_get_sort_column_id),
5066         (gtk_list_store_set_sort_column_id), (gtk_list_store_set_sort_func),
5067         (gtk_list_store_set_default_sort_func): likewise.
5068
5069         * gtk/gtktreemodelsort.c (gtk_tree_model_set_sort_column_id),
5070         (gtk_tree_model_set_sort_func),
5071         (gtk_tree_model_sort_set_default_sort_func): make functions work
5072         as advertised by the documentation.
5073
5074 Mon Jan 27 22:31:56 2003  Kristian Rietveld  <kris@gtk.org>
5075
5076         * gtk/gtktreeview.c (gtk_tree_view_button_press): update focus_column
5077         before we decide if we edit. (fixes #100973, reported by Dave Cook).
5078
5079 Mon Jan 27 22:29:30 2003  Kristian Rietveld  <kris@gtk.org>
5080
5081         Bug report and test case from Paolo Maggi via IRC.
5082
5083         * gtk/gtkliststore.c (gtk_list_store_swap): update tail if needed,
5084         (gtk_list_store_move): update tail if needed.
5085
5086 Mon Jan 27 16:19:59 2003  Owen Taylor  <otaylor@redhat.com>
5087
5088         * gtk/gtksocket.c (gtk_socket_filter_func): event->any.window
5089         might be NULL. Use gtk_widget_get_display (widget) 
5090         (#102860, Thomas Leonard)
5091
5092 Mon Jan 27 15:58:31 2003  Owen Taylor  <otaylor@redhat.com>
5093
5094         * configure.in: Fix --without-modules/--disable-modules
5095         confusion that was causing --disable-modules not to work.
5096         (#102865, Akira Tagoh)
5097
5098         * configure.in: Fix problem with plain --with-xinput
5099         (#104266, Akira Tagoh)
5100
5101 2003-01-24  Sebastian Rittau  <srittau@jroger.in-berlin.de>
5102
5103         * docs/tutorial/gtk-tut.sgml: Fix a few typos, introduced by my last
5104         patch.
5105
5106 Fri Jan 24 17:06:41 GMT 2003  Tony Gale <gale@gtk.org>
5107
5108         * docs/tutorial/gtk-tut.sgml: Remove duplicate copy of tictactoe.h
5109
5110 Thu Jan 23 21:15:29 GMT 2003  Tony Gale <gale@gtk.org>
5111
5112         * docs/faq/gtk-faq.sgml: Learn to spell Library
5113
5114 Thu Jan 23 20:56:56 GMT 2003  Tony Gale <gale@gtk.org>
5115         * Sebastian Rittau  <srittau@jroger.in-berlin.de>:
5116
5117            docs/tutorial/gtk-tut.sgml: Adopted chapter 21.3 "Creating a
5118            Composite widget" to modern standards. (I.e. use gobject instead of
5119            glib, derive from GtkTable instead of GtkVBox.) Bugzilla #103869.
5120
5121         * docs/tutorial/gtk-tut.sgml, examples/tictactoe: Fixup tic-tac-toe
5122         code in Appendix C to reflect above changes.
5123
5124         * examples/rangewidgets/rangewidgets.c: From Roger Leigh
5125         auto resize on page size change
5126
5127 2003-01-23  Daniel Elstner  <daniel.elstner@gmx.net>
5128
5129         * gtk/gtktoolbar.c (gtk_toolbar_hide_all): Override hide_all
5130         in addition to show_all in order to keep them symmetric. (#102201)
5131
5132 Wed Jan 22 14:18:46 2003  Manish Singh  <yosh@gimp.org>
5133
5134         * gdk/x11/gdkevents-x11.c (translate_key_event): add a "return" at
5135         the end of the function, so there is a statement following the "out"
5136         label in all cases (fixes #101961)
5137
5138 2003-01-22  Christian Rose  <menthos@menthos.com>
5139
5140         * configure.in: Added "mn" to ALL_LINGUAS.
5141
5142 Wed Jan 15 17:02:18 2003  Owen Taylor  <otaylor@redhat.com>
5143  
5144         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange):
5145         Fix off-by-one error on the backward iteration loop,
5146         that was causing the wrong range to be redrawn.
5147         (at least part of #72734)
5148         
5149 2003-01-21  Matthias Clasen  <maclas@gmx.de>
5150
5151         * gtk/gtktextview.c (gtk_text_view_size_allocate): Adjust the
5152         vadjustment value after changing its bounds.  (fixes #101963 and 
5153         #73562)
5154
5155         * gtk/gtkcolorsel.c (hex_changed): Fix clamping to [0,1] to avoid 
5156         unnecessary roundtrip failures.  (#93500)
5157
5158 2003-01-19  Tor Lillqvist  <tml@iki.fi>
5159
5160         Merge from stable:
5161         
5162         Fix for #103614 and some other problems with GtkFileSelection on
5163         Windows:
5164                 
5165         * gtk/fnmatch.c (get_char): Need to use g_unichar_tolower(), not
5166         g_ascii_tolower(). Windows file names are case-insensitive for all
5167         Unicode letters.
5168
5169         * gtk/gtkfilesel.c: Instead of checking for G_OS_WIN32 or
5170         G_WITH_CYGWIN, check G_PLATFORM_WIN32. Move inclusion of gtkintl.h
5171         earlier, as it includes config.h unconditionally, and gtkprivate.h
5172         redefines GTK_LOCALEDIR.
5173         (struct _CompletionDirSent): Ifdef out the fields not used on
5174         Windows.
5175         (compare_utf8_filenames, compare_sys_filenames): Need different
5176         comparison implementation for UTF-8 file names and system locale
5177         file names on Win32. Cannot simply use g_ascii_strcasecmp(), but
5178         need to casefold all Unicode letters.
5179         (cmpl_completion_matches, open_dir, correct_parent): Ifdef out
5180         variables not used on Win32 to avoid warnings about unused
5181         variables.
5182         (open_ref_dir): Use g_path_skip_root() to skip past potential
5183         drive letter in front of the leading (back)slash.
5184         (open_new_dir): Ifdef out use of CompletionDirSent fields not
5185         there on Win32.
5186         (correct_parent): Bypass inode check also on Cygwin.
5187
5188         Fix bug noticed by Alex Shaduri: Tooltips and other
5189         GDK_WINDOW_TEMP windows were activated. This looked very odd, and
5190         was a regression from earlier versions.
5191         
5192         * gdk/win32/gdkwindow-win32.c (show_window_internal): Fine-tune
5193         behaviour. Don't ever activate GDK_WINDOW_TEMP windows.
5194         (gdk_window_move, gdk_window_resize): Add debug logging.
5195
5196         * gdk/win32/gdkevents-win32.c (gdk_event_translate): When we get a
5197         WM_SIZE message for a non-visible (withdrawn) window, don't clear
5198         the GDK_WINDOW_STATE_WITHDRAWN bit. The window is still withdrawn
5199         even if its size changes.
5200
5201 2003-01-16  Matthias Clasen  <maclas@gmx.de>
5202
5203         * gtk/gtktextlayout.c (gtk_text_layout_get_cursor_locations): Typo fixes.
5204         (totally_invisible_line): Fix an incorrect optimization which
5205         caused invisible paragraphs to be occasionally misrendered.
5206
5207 Wed Jan 15 15:55:47 2003  Owen Taylor  <otaylor@redhat.com>
5208
5209         * gtk/gtksettings.c: Set the double click speed from
5210         XSETTINGS when creating a new GtkSettings object
5211         as well as when getting a notify. (#103601, reported
5212         by Louis Garcia)
5213
5214 Wed Jan 15 14:56:09 2003  Owen Taylor  <otaylor@redhat.com>
5215  
5216         * gtk/gtknotebook.c (gtk_notebook_size_allocate): 
5217         Show/hide the notebook event window as necessary,
5218         we weren't previously keeping the visibility updated
5219         properly.  (#103599)
5220  
5221 2003-01-15  Matthias Clasen  <maclas@gmx.de>
5222
5223         * examples/menu/itemfactory.c: 
5224         * docs/tutorial/gtk-tut.sgml: Add a <StockItem> to the itemfactory
5225         example.  (#103211)
5226
5227 2002-12-29  Murray Cumming  <murrayc@usa.net>
5228
5229         Fixes #102168.
5230
5231         * gtk/gtkliststore.c, gtktreednd.c, gtktreestore.c:
5232         Actually implement the GtkTreeDragSource::row_draggable virtual 
5233         function in GtkListStore and GtkTreeStore instead of just checking 
5234         whether it's implemented at all. This means that DnD isn't broken by
5235         gtkmm's virtual function wrappers. The alternative would be to
5236         hard-code the TRUE return value into gtkmm's wrappers, but that's 
5237         part of GTK+'s implementation, not it's API.
5238
5239 Tue Jan 14 23:42:29 2003  Kristian Rietveld  <kris@gtk.org>
5240
5241         * gtk/gtktreeview.c: fix compiler warning.
5242
5243 Tue Jan 14 23:29:00 2003  Kristian Rietveld  <kris@gtk.org>
5244
5245         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
5246         make sure exposed pixbufs are clipped to the exposed area before
5247         drawing, which is a slight speedup. (#102379, patch from Soeren
5248         Sandmann).
5249
5250 Tue Jan 14 23:26:41 2003  Kristian Rietveld  <kris@gtk.org>
5251
5252         * gtk/gtktreeview.c (validate_visible_area): silly typo fix,
5253         only free scroll_to_path when the complete tree has been validated.
5254         This makes sure that we scrolled to the correct path.
5255
5256 Tue Jan 14 23:25:32 2003  Kristian Rietveld  <kris@gtk.org>
5257
5258         * gtk/gtktreeview.c (gtk_tree_view_style_set): update the
5259         background of widget->window and bin->window. (Fixes #96650, reported
5260         by Dave Camp).
5261
5262 Tue Jan 14 23:24:02 2003  Kristian Rietveld  <kris@gtk.org>
5263
5264         * gtk/gtktreeview.c (gtk_tree_view_clamp_node_visible): process
5265         updates before scrolling, avoiding a "selection streak". (Fixes
5266         #101235, patch from Soeren Sandmann).
5267
5268 Tue Jan 14 23:22:13 2003  Kristian Rietveld  <kris@gtk.org>
5269
5270         * gtk/gtktreeview.c (validate_visible_area): actually put values
5271         in the requisition using gtk_widget_size_request. (Fixes #100172,
5272         reported by Kjartan Maraas).
5273
5274 Tue Jan 14 23:19:45 2003  Kristian Rietveld  <kris@gtk.org>
5275
5276         * gtk/gtktreeview.c (gtk_tree_view_rows_reordered): cancel the
5277         arrow animation timeout before we actually reorder the rbtree. If
5278         we don't do this we can get stuck arrows,
5279         (cancel_arrow_animation): new function. (Fixes #93629, part 2,
5280         reported and testcase provided by Hans Petter Jansson).
5281
5282 Tue Jan 14 23:18:21 2003  Kristian Rietveld  <kris@gtk.org>
5283
5284         * gtk/gtktreeselection.c (gtk_tree_selection_real_modify_range):
5285         anchor_path should be start_path, not end_path. (Fixes #102618,
5286         patch from Carlos Garnacho Parro).
5287
5288 Tue Jan 14 23:16:15 2003  Kristian Rietveld  <kris@gtk.org>
5289
5290         * gtk/gtkliststore.c (gtk_list_store_move): also update the tail,
5291         only correct new_pos if we don't move to the head/tail.
5292
5293 Tue Jan 14 23:11:55 2003  Kristian Rietveld  <kris@gtk.org>
5294
5295         * gtk/gtktreestore.c (gtk_tree_store_swap): take the path from
5296         the parent_iter if depth >= 1, so we send the reordered signal to
5297         the correct level, remove debugging printfs which I forgot the remove
5298         earlier (2.2.0 shipped with this, oops). (Fixes #103198, Reported and
5299         testcase provided by Matthew Tuck).
5300
5301 Tue Jan 14 20:58:44 2003  Kristian Rietveld  <kris@gtk.org>
5302
5303         * gtk/gtktreeview.c (invalite_last_column): split out actual column
5304         invalidation into invalidate_column(),
5305         (gtk_tree_view_size_allocate_columns): invalidate column if the
5306         new width is larger than the old width.
5307         (fixes #102890, reported by Alex Duggan).
5308
5309 2003-01-14  Matthias Clasen  <maclas@gmx.de>
5310
5311         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Skip
5312         invisible chars for GTK_MOVEMENT_LOGICAL_POSITIONS and
5313         GTK_MOVEMENT_WORDS.
5314
5315         * gtk/gtktextiter.c,
5316         gtk/gtktextiter.h: Add some variant movement functions which
5317         skip invisible chars, and do some cleanups.
5318
5319 2003-01-12  Tor Lillqvist  <tml@iki.fi>
5320
5321         Merge from stable:
5322                 
5323         * gtk/gtkmain.c: Move inclusion of config.h and gtkintl.h earlier,
5324         as gtkprivate.h redefines GTK_LOCALEDIR on Win32, for run-time
5325         lookup.
5326
5327         * gdk/Makefile.am (libgdk_win32_2_0_la_DEPENDENCIES): Depend on
5328         gdk.def.
5329
5330         * gdk/gdk.def
5331         * gtk/gtk.def: Add some missing entries. Thanks to Kenichi SUTO.
5332
5333         * gtk-zip.sh.in (DEVZIP): Add bin/{gtk-query-immodules-2.0,
5334         gtk-demo}.exe and share/gtk-2.0.
5335
5336         * gdk/win32/gdkwindow-win32.c (gdk_window_set_skip_taskbar_hint):
5337         Implement by setting or clearing the WS_EX_TOOLWINDOW extended
5338         window style.
5339         (gdk_window_set_type_hint): Add all cases to the switch (not all
5340         do anything, though). Handle GDK_WINDOW_TYPE_HINT_TOOLBAR by
5341         calling gdk_window_set_skip_taskbar_hint(). This means that GTK
5342         won't know that the skip_taskbar hint is on for the window, is
5343         this bad?
5344
5345 Wed Jan  8 18:43:03 2003  Manish Singh  <yosh@gimp.org>
5346
5347         * gdk/x11/gdkdisplay-x11.c: #include <stdlib.h> for putenv,
5348         <string.h> for strlen.
5349
5350         * gdk/x11/gdkscreen-x11.c: #include <stdlib.h> for getenv,
5351         <string.h> for strrchr.
5352
5353         * tests/testgtk.c (create_saved_position): "x" and "y" properties
5354         for widgets no longer exist, use gtk_window_move instead.
5355
5356         * test/testtextbuffer.c (check_get_set_text): cast strlen to
5357         int for g_error.
5358
5359 2003-01-08  Matthias Clasen  <maclas@gmx.de>
5360
5361         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix display of
5362         the selection in the presence of invisible segments.
5363
5364 2003-01-07  Matthias Clasen  <maclas@gmx.de>
5365
5366         * gtk/gtktextview.c (gtk_text_view_class_init): Bind C-/ and C-\
5367         to "select all" and "unselect all".  (#102065)
5368
5369         * gtk/gtktextview.h (struct _GtkTextView): Add a comment that
5370         the just_selected_element is unused.
5371
5372         * gtk/gtktextview.c (extend_selection): New helper function to
5373         find the range that should be added to the selection. 
5374         (selection_motion_event_handler): 
5375         (gtk_text_view_start_selection_drag): 
5376         (gtk_text_view_end_selection_drag): 
5377         (selection_motion_event_handler): 
5378         (selection_scan_timeout): Support select-by-words/lines.
5379         (gtk_text_view_button_press_event): Start a selection drag on
5380         double/triple clicks.  (#78499)
5381
5382 2003-01-06  Matthias Clasen  <maclas@gmx.de>
5383
5384         Implement a utility function proposed in #102534:
5385         
5386         * gtk/gtktextbtree.h: 
5387         * gtk/gtktextbtree.c (_gtk_text_btree_select_range): New function.
5388         (_gtk_text_btree_place_cursor): Now a simple wrapper around
5389         _gtk_text_btree_select_range().   
5390
5391         * gtk/gtktextbuffer.h: 
5392         * gtk/gtktextbuffer.c (gtk_text_buffer_select_range): New function.
5393         (gtk_text_buffer_place_cursor): Now a simple wrapper around
5394         gtk_text_buffer_select_range(). 
5395
5396 2003-01-05  Havoc Pennington  <hp@pobox.com>
5397
5398         * configure.in: fix a stray bracket that was breaking the build
5399
5400 2003-01-05  Tor Lillqvist  <tml@iki.fi>
5401
5402         * gtk-zip.sh.in: Use correct DLL and import library names, with
5403         GTK_API_VERSION in name, not GTK_MAJOR_VERSION.GTK_MINOR_VERSION.
5404         (DEVZIP): Add gdk-pixbuf-query-loaders.exe.
5405
5406         * configure.in: Improve check for dimm.h.
5407
5408         * configure.in: Set SOEXT to 'so' on Unix, 'dll' on Win32. Used in
5409         gdk-pixbuf/Makefile.am.
5410
5411         * gdk-pixbuf/makefile.mingw.in
5412         * gdk-pixbuf/pixops/makefile.mingw.in
5413         * gdk/makefile.mingw.in
5414         * gdk/win32/makefile.mingw.in
5415         * gtk/makefile.mingw.in: Remove. Not maintained anyway.
5416
5417         * gdk-pixbuf/Makefile.am
5418         * gdk-pixbuf/pixops/Makefile.am
5419         * gdk/Makefile.am
5420         * gdk/win32/Makefile.am
5421         * gtk/Makefile.am
5422         * configure.in: Remove makefile.mingw{,.in} from here, too.
5423         
5424         * README.win32: Updates. Don't mention the now removed
5425         makefile.mingw files.
5426
5427         * gdk/gdk.def
5428         * gtk/gtk.def: Add a couple of missing entries.
5429
5430         * gdk/gdkkeynames.c: Include <string.h> for strcmp() and memcpy().
5431
5432         * gdk/win32/gdkevents-win32.c: Move dimm.h header clash workaround
5433         earlier.
5434
5435         * gdk/win32/rc/Makefile.am: Add hack to help
5436         build/win32/lt-compile-resource decide which kind of libtool
5437         object file to produce.
5438
5439 2003-01-05  Matthias Clasen  <maclas@gmx.de>
5440
5441         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Make
5442         C-Down step through the sequence of paragraph ends (old behaviour
5443         included paragraph starts).  (#80340, patch by Narayana Pattipati)
5444
5445         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_first_toggle):
5446         Check for a tag toggle at the start iterator before calling
5447         gtk_text_iter_forward_to_tag_toggle().  (#102090, patch by Daniel 
5448         Elstner)
5449
5450 2003-01-04  Matthias Clasen  <maclas@gmx.de>
5451
5452         * gtk/gtkfilesel.h (struct _GtkFileSelection): Add /*< public >*/
5453         and /*< private >*/ as appropriate.  (#97211)
5454
5455 2003-01-04  Tor Lillqvist  <tml@iki.fi>
5456
5457         * Makefile.am (EXTRA_DIST): Don't distribute gtk-zip.sh, but do
5458         distribute gtk-zip.sh.in.
5459
5460         * gtk-zip.sh.in (DEVZIP): Add gdk-pixbuf-csource.exe and .1.
5461
5462 2003-01-03  Havoc Pennington  <hp@pobox.com>
5463
5464         * docs/Makefile.am (EXTRA_DIST): put it in EXTRA_DIST
5465
5466         * docs/text_widget_internals.txt: add a file documenting some of
5467         the text widget internals
5468
5469 2003-01-02  Matthias Clasen  <maclas@gmx.de>
5470
5471         * gtk/gtkwindow.c (gtk_window_get_focus): Document that it may
5472         return NULL.  (#102069)
5473
5474 2003-01-01  Matthias Clasen  <maclas@gmx.de>
5475
5476         * gtk/fnmatch.c (FNMATCH_TEST_CASES): #undef, since having
5477         a main() in the library is obviously bad. 
5478
5479 2002-12-27  Matthias Clasen  <maclas@gmx.de>
5480
5481         * gtk/gtktextview.c (gtk_text_view_drag_data_received): Place the
5482         cursor at drop point.  (#72384)
5483         (gtk_text_view_size_allocate): Update the horizontal adjustment
5484         value.  (#75694)
5485
5486 2002-12-25  Matthias Clasen  <maclas@gmx.de>
5487
5488         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix highlighting of
5489         selection wrt. to empty lines.  (#90435, #90582, #91619)
5490
5491         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler):
5492         Keep the cursor on screen.  (#96929)
5493
5494 2002-12-24  Matthias Clasen  <maclas@gmx.de>
5495
5496         * gtk/gtktextbuffer.c (paste_from_buffer): 
5497         (clipboard_text_received): Let the user action span the insertion
5498         and the deletion of the old selection.  (#82844)
5499
5500 2002-12-23  Matthias Clasen  <maclas@gmx.de>
5501
5502         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_starts):
5503         Don't call gtk_text_iter_backward_sentence_start() if
5504         count is zero.  (#99115)
5505
5506         * gtk/gtktextview.c (gtk_text_view_move_cursor_internal): Call
5507         move_cursor() even if the cursor hasn't moved, since it has the
5508         side effect of canceling the selection.  (#81395, #98537, #98333)
5509
5510 2002-12-22  Matthias Clasen  <maclas@gmx.de>
5511
5512         * gtk/gtktextlayout.c (add_preedit_attrs): Don't add attributes
5513         with empty ranges.  (fixes #101564 and #80637)
5514
5515 2002-12-21  Tor Lillqvist  <tml@iki.fi>
5516
5517         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Move the code that
5518         sets the window style and extended window style, and adjusts the
5519         width and height to take the window decorations into account
5520         earlier. The adjusted width and height used to be ignored. Remove
5521         the local x, y, width and height variables, no need to further
5522         confuse the code by having local copies. (Partial fix, I hope, for
5523         #101588)
5524
5525         (gdk_window_move): When moving top-level windows, take title bar
5526         and border width into account, offsetting the coordinates before
5527         calling SetWindowPos().
5528
5529         (gdk_window_set_decorations, gdk_window_set_functions):
5530         Reimplement, taking into account the peculiar semantics of
5531         GDK_DECOR_ALL and GDK_FUNC_ALL. (#79036)
5532
5533         (gdk_window_get_decorations): Implement. (#98981)
5534         
5535         (gdk_window_set_type_hint): When setting
5536         GDK_WINDOW_TYPE_HINT_MENU, call gdk_window_set_decorations().
5537         (#79036)
5538
5539         * gdk/gdk.def: Add gdk_window_get_decorations. (#98981)
5540
5541 2002-12-21  Matthias Clasen  <maclas@gmx.de>
5542
5543         * gtk/gtktextview.c (gtk_text_view_set_background): New static
5544         function to set the background of all windows.
5545         (gtk_text_view_style_set): Use gtk_text_view_set_background().
5546         (gtk_text_view_state_changed): New function; change background
5547         according to state.  (#88126)
5548
5549 2002-12-21  Havoc Pennington  <hp@pobox.com>
5550
5551         * gtk/gtktextview.c (gtk_text_view_move_visually): fix the documentation
5552