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