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