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