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