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