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