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