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