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