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