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