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