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