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