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