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