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