]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Doc updates
[~andy/gtk] / ChangeLog.pre-2-10
1 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
2
3         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
4         Point out that destroy-with-parent is a bad idea for the dialog
5         passed to this function.  (#318943, Christian Persch)
6
7         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
8         glib-mkenums.  (#318582, Damien Carbery)
9
10         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
11         docs.  (#317682, Christian - Manny Calavera - Neumair)
12
13         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
14         seem to affect the placement of the data in the readonly 
15         section, and causes problems with some compilers.  (#317844)
16
17 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
18
19         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
20         Fix some issues with background drawing in RTL.  (#318781,
21         Eric Cazeaux)
22
23         * tests/Makefile.am:
24         * tests/testentrycompletion.c: Apply a patch by Christian
25         Persch to add property editors.
26
27         * gtk/gtkstatusicon.c: Emit activate on single-click,
28         not on double-click, change proposed by Milosz Derezynski.
29
30 2005-10-25  Kristian Rietveld  <kris@gtk.org>
31
32         Fixes #311955, reported by Markku Vire; and a lot more.
33
34         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
35         Levels can now have invisible nodes cached, functions have been
36         rewritten/refactored to take this into account; also the logic in
37         some functions has been corrected.
38         
39         Each referenced node now references all visible children or a single
40         invisible child, in order to be able to monitor all changes in the
41         child model required for correct operation.
42
43         When a virtual root is set, all nodes on the virtual root level are
44         referenced.
45
46         At last, a bunch of random bug fixes and comment updates.
47
48 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
49
50         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
51         more docs.  (#319722, Paolo Borelli)
52
53         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
54         initialization of screen_x11->xft_rgba more explicit.  (#319627,
55         Bogdan Nicula)
56
57         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
58         in a blurb.  (#319499, Francisco Javier F. Serrador)
59
60 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
61
62         Add settings to hide the input method and Unicode control character
63         submenus in the context menus of GtkEntry and GtkTextView.  
64         
65         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
66         
67         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
68
69         * gtk/gtktextview.c (popup_targets_received): 
70         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
71
72 2005-10-24  Kristian Rietveld  <kris@gtk.org>
73
74         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
75         row-has-child-toggled when the level is not in the cache does not
76         make sense.  (This bug probably crept in during the early stages
77         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
78         implementation yet),
79         (gtk_tree_model_sort_real_unref_node): only get the child iter
80         when we will actually also use it.
81
82 2005-10-22  Michael Natterer  <mitch@imendio.com>
83
84         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
85         widget being realized, in addition to being visible, to avoid
86         running into precondition check in gtk_tree_view_get_cell_area().
87         (approved by Kris).
88
89 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
90
91         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
92         Experimentally, scrollbar steppers can shrink to 8 pixels on 
93         Win32. Reflect that in the theme.
94         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
95         there is a 1-pixel border between a scrollbar and its child
96         in ScrolledWindows on Win32. Reflect that in the theme.
97         
98 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
99
100         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
101         for the selection window.  (#318806, Alex Larsson)
102
103 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
104
105         Fixes bug #317999:
106
107         * tests/autotestfilechooser.c
108         (test_button_folder_states_for_action): Test that we have either
109         $cwd or the explicitly-set folder.
110         (test_reload_sequence): Likewise.
111
112         * gtk/gtkfilechooserdefault.c
113         (gtk_file_chooser_default_get_current_folder): If our reload_state
114         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
115
116 2005-10-14  Tor Lillqvist  <tml@novell.com>
117
118         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
119         It didn't really do anything useful, and was just confusing and
120         incomplete. Comments claimed we don't do delayed rendering, but in
121         fact we do, for images. (The delayed rendering code has other
122         problems, though, see #168173.) The clipboard viewer code was
123         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
124         the message when necessary). It was just test code, it said so in
125         a comment. Add something similar back later if necessary.
126
127         (_win32_on_clipboard_change,
128         _gdk_win32_register_clipboard_notification): Remove.
129
130         (gdk_display_supports_selection_notification,
131         gdk_display_request_selection_notification): Always just return
132         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
133
134 2005-10-13  Tor Lillqvist  <tml@novell.com>
135
136         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
137         Alt-Enter specially. It does not have any special meaning and
138         should be passed on to the application. (#318378, Tim Evans)
139
140 2005-10-13  Tor Lillqvist  <tml@novell.com>
141
142         Set visual depth to 24 for 32 bits-per-pixel devices on
143         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
144         optimized composite_0888() function rather than the slower image
145         dithering functions to draw pixbufs (#313993, John Ehresman)
146
147         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
148         _gdk_windowing_get_bits_for_depth() to initialize
149         GdkImage::bits_per_pixel.
150         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
151
152         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
153         _gdk_windowing_get_bits_for_depth() to initialize
154         BITMAPINFOHEADER::biBitCount.
155
156         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
157         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
158         32.
159
160 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
161
162         * demos/gtk-demo/appwindow.c: (about_cb):
163           use PACKAGE_VERSION,bump year (#318654)
164
165 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
166
167         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
168         toggle here with the matching on toggle if it immediately follows. 
169         This is a common case, and handling it here prevents quadratic blowup 
170         in cleanup_line() below.  (#317125)
171
172         * gtk/gtktextsegment.h: 
173         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
174         the character counts into this function instead of computing them
175         again.
176
177 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
178
179         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
180         code.
181         * gtk/gtkfilechooserdefault.c
182         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
183         when the shortcut already exists in the sidebar.  (#147521)
184
185 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
186
187         * tests/testcombo.c: Demonstrate how to use custom widgets in
188         a GtkComboBox.  
189
190 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
191
192         Fixes bug #317999:
193
194         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
195         the the result of gtk_file_chooser_get_folder() is NULL or
196         non-NULL at the right times.  Log the tests.
197         (test_button_folder_states): New test for the initial states of
198         the current folder in GtkFileChooserButton.
199         (main): Test that the number of warnings/errors/critical errors is
200         zero.
201
202         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
203         Clarify the documentation on when this can return NULL.
204         (gtk_file_chooser_get_current_folder_uri): Likewise.
205
206         * gtk/gtkfilechooserbutton.c (struct
207         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
208         we use it to keep track of whether a folder has been set.
209         (gtk_file_chooser_button_map):  Implement.  If no folder has been
210         loaded before, we at least try to load $cwd here.
211         (gtk_file_chooser_button_constructor): If the construct-time
212         dialog already has a folder set, turn on our folder_has_been_set
213         flag.
214         (dialog_current_folder_changed_cb): Turn on our
215         folder_has_been_set flag.
216
217 2005-10-07  Michael Natterer  <mitch@gimp.org>
218
219         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
220         PROFILE_FILE_CHOOSER because they break compilation after the
221         removal of <unistd.h>.
222
223 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
224
225         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
226         by moving it out of the profiling ifdef.
227
228         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
229         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
230
231         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
232         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
233         Kazuki Iwamoto)
234
235 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
236                 
237         * gtk/gtk.symbols:
238         * gtk/gtktextbuffer.h:
239         * gtk/gtktextbuffer.c: Add a readonly has-selection property
240         with a getter.  (#318161, Paolo Borelli)
241
242 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
243
244         * README.in: Start collecting release notes for 2.10.
245
246         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
247         leak fix, since the assertion failures were traced to 
248         an xchat bug.  (#314696)
249         
250         * gtk/gtkstyle.c (gtk_style_detach):
251         (gtk_style_attach):  Documentation improvements.
252         (gtk_style_detach): Assert that the attach_count is > 0.
253
254 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
255
256         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
257         shortcut position, not a ShortcutsIndex, to make the function more
258         generic.
259         (home_folder_handler): Pass the resolved index to
260         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
261         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
262         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
263         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
264         make the respective key switch to the first, second, ..., tenth
265         bookmark.
266         (quick_bookmark_handler): Implement.
267
268 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
269
270         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
271         Desktop; just use their real names on the file system for the
272         user-visible names.
273
274         * gtk/gtkfilechooserdefault.c
275         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
276         binding signal, and bind it to M-d by default.
277         (desktop_folder_handler): Implement the default handler.
278         (home_folder_handler): Use a helper function.
279         (switch_to_shortcut): New helper function.
280         (shortcuts_append_home): Don't special-case the name of "Home";
281         just use the folder name.
282
283 2005-10-04  Tor Lillqvist  <tml@novell.com>
284
285         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
286         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
287
288 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
289
290         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
291         from yesterday, since it leads to assertion failures.  (#317879,
292         Sebastian Bacher)
293
294 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
295
296         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
297         calendar_compute_days() after setting priv->week_start.
298
299 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
300
301         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
302         removing it from the hash table.  (#314696, Benjamin Berg)
303
304 2005-10-01  Tor Lillqvist  <tml@novell.com>
305
306         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
307         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
308         is that the the desktop isn't visible because the session has been
309         switched, the screen is locked, or a terminal server session
310         disconnected, so no error message necessary. (#137796)
311
312         It is of course remotely possible that BitBlt() failing with
313         ERROR_INVALID_HANDLE might also be caused by some other
314         problem. We could strive for perfection and track whether the
315         desktop is visible by using WTSRegisterSessionNotification() and
316         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
317         this issue, though. If we would track desktop visibility, we
318         should then avoid even trying to update the display at all while
319         the desktop isn't visible.
320
321 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
322
323         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
324         to correct the calculations for the first week day. We may
325         just have to remove this code if too many locales turn out 
326         to have broken data. 
327
328         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
329         some cases.  (#317611, Tommi Komulainen)
330
331         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
332         Prevent overflow when storing size hints in an unsigned
333         short variable. Tracked down by Ray Strode and Søren Sandmann.
334
335 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
336
337         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
338         Paolo Borelli)
339
340         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
341         grab shadowed.  (#317332)
342
343 2005-09-29  Tor Lillqvist  <tml@novell.com>
344
345         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
346
347 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
348
349         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
350         if the unmap test fails.
351         (test_reload_sequence): Use gtk_widget_show_now() instead of
352         gtk_widget_show() for the dialog.
353         Thanks to Tim Janik for noticing these.
354
355 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
356
357         * tests/testcellrenderertext.c: New file with a set of tests for
358         GtkCellRendererText.  The idea is to run a text renderer through
359         most of its interesting property values to see that it works
360         correctly.
361
362         * tests/Makefile.am: Added testcellrenderertext.
363
364         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
365         entry/exit of this function for profiling.
366         (gtk_file_chooser_default_style_set): Mark the start/end of the
367         calls to the parent class and the the signal emission for profiling.
368
369 2005-09-29  Tor Lillqvist  <tml@novell.com>
370
371         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
372         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
373         system codepage using g_win32_locale_filename_from_utf8().
374         (#317457, Kazuki Iwamoto)
375
376 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
377
378         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
379         here. (#317039, Paolo Borelli)
380
381         * gtk/gtktexttag.h: 
382         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
383         to make this function work as boxed copy function.  (#317455,
384         Gustavo Carneiro)
385
386         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
387         NULL.  (#316828, Tor Lillqvist)
388
389 2005-09-28  Tor Lillqvist  <tml@novell.com>
390
391         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
392         Iwamoto)
393
394 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
395
396         Don't reload the current folder unnecessarily on ::map().
397
398         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
399         the reloading state.
400         (struct _GtkFileChooserDefault): Added a "reload_state" field.
401
402         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
403         Initialize impl->reload_state.
404         (gtk_file_chooser_default_map): Check the impl->reload_state; load
405         a default folder if no folder has been set, or reload the current
406         one only if we had been unmapped first.
407         (gtk_file_chooser_default_update_current_folder): Set the
408         reload_state to RELOAD_HAS_FOLDER.
409         (gtk_file_chooser_default_unmap): Implement, and set the
410         reload_state to RELOAD_WAS_UNMAPPED.
411         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
412         here; they'll get (re)loaded on ::map() anyway.
413
414         * gtk/gtkfilechooserwidget.c
415         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
416
417         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
418         a dialog; build it ourselves.
419         (test_reload): New test to ensure that we don't load the default
420         folder more than once, and that we reload it when
421         unmapping/remapping.
422         (get_impl_from_dialog): New utility function.
423         (test_widgets_for_current_action): Use get_impl_from_dialog().
424
425 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
426
427         * gtk/gtkfilechooserdefault.c
428         (gtk_file_chooser_default_constructor): Mark the entry/exit of
429         this function for profiling.
430         (check_icon_theme): Likewise.
431         (change_icon_theme): Likewise.
432         (settings_notify_cb): Likewise.
433         (gtk_file_chooser_default_screen_changed): Likewise.
434         (update_chooser_entry): If the selection is empty, clear the file
435         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
436         nothing will be selected when the user starts typeahead in the
437         treeview, and we don't want to clear the file name entry in that
438         case --- the user could be typing-ahead to look for a folder name.
439         Fixes bug #308332, patch by Jürg Billeter.
440
441 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
442
443         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
444         Pop below the entry if there's more free space below the entry
445         than above.  (#316948, Tommi Komulainen)
446
447 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
448
449         Do not create the save mode-specific widgets in the open modes, so
450         that we don't carry their baggage around.
451
452         * gtk/gtkfilechooserdefault.c
453         (gtk_file_chooser_default_constructor): Don't create the
454         save_widgets here.
455         (save_widgets_create): Set the impl->save_widgets directly here,
456         instead of passing the widgets back to the caller.  Also, pack
457         them into the impl's box.
458         (update_appearance): Create or destroy the save widgets as
459         appropriate.  Set the action of the save_file_name_entry here.
460         (shortcuts_add_current_folder): Set the active item in the
461         save_folder_combo only if it exists.
462         (gtk_file_chooser_default_set_property): Don't set the action of
463         the save_file_name_entry here.
464         (gtk_file_chooser_default_update_current_folder): Set the base
465         folder of the save_file_name_entry only if the entry exists.
466         (shortcuts_drag_data_received_cb): Cast the selection_data->data
467         to (const char *) since that's what shortcuts_drop_uris() expects.
468         (file_list_drag_data_received_cb): Likewise, for
469         g_uri_list_extract_uris().
470
471 2005-09-26  Tor Lillqvist  <tml@novell.com>
472
473         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
474         the shaped flag here, too. (#316871)
475         (gdk_window_shape_combine_region): Currently unimplemented, so
476         don't do anything to the shaped flag here.
477
478 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
479
480         Fix #316871, reported by Dan Winship:
481         
482         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
483
484         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
485         (gdk_window_shape_combine_region): Set it here.
486
487         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
488         remove the child area for shaped windows.
489
490 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
491
492         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
493         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
494
495 2005-09-22  Michael Natterer  <mitch@imendio.com>
496
497         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
498         consistent with GTK+ terminology:
499
500         * gtk/gtkcellrendererkeys.[ch]
501         * tests/testkeys.c: removed...
502
503         * gtk/gtkcellrendereraccel.[ch]
504         * tests/testaccel.c: ...and added.
505
506         * gtk/Makefile.am
507         * gtk/gtk.h
508         * gtk/gtk.symbols
509         * tests/Makefile.am: changed accordingly.
510
511 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
512
513         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
514         for the grab-broken-event signal, noticed by Damon Chaplin.
515
516 2005-09-21  Tor Lillqvist  <tml@novell.com>
517
518         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
519         gdk_text_property_to_text_list_for_display,
520         gdk_text_property_to_utf8_list_for_display,
521         gdk_win32_selection_add_targets,
522         _gdk_win32_selection_convert_to_dib): Free return value from
523         gdk_atom_name().
524         (gdk_text_property_to_text_list_for_display): Drop GError variable
525         that isn't actually used after being set.
526
527 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
528
529         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
530         documentation.
531
532 2005-09-20  Tor Lillqvist  <tml@novell.com>
533
534         * gdk/win32/gdkselection-win32.c
535         (gdk_selection_owner_get_for_display): Do return the correct owner
536         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
537         a window GDK knows about). The reason to return NULL seems to have
538         gone when in the fix for bug #163702 the artificial
539         GDK_SELECTION_CLEAR event generation was removed from
540         gdk_selection_send_notify_for_display(). Fixes bug #316552.
541
542 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
543
544         Avoid unnecessary XkbGetState() calls and XkbStateNotify
545         events.  (#151555, Søren Sandmann)
546
547         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
548         XkbSelectEventDetails() to select XkbStateNotify events
549         for only the state we care about.
550
551         * gdk/x11/gdkprivate-x11.h:
552         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
553         the event into the function and update the keymap state from
554         the state information contained in the event. Adjust all callers.
555         
556 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
557
558         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
559         in multiple places to avoid segfaults if the index is out of range.  
560         (#316422, Guillaume Cottenceau)
561         (gtk_icon_view_set_drag_dest_item): 
562         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
563         #316424, Guillaume Cottenceau)
564
565 2005-09-18  Hans Breuer  <hans@breuer.org>
566
567         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
568         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
569
570 2005-09-18  Hans Breuer  <hans@breuer.org>
571
572         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
573         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
574         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
575         the icon and is blinking with teststatusicon. More to come ...
576
577 2005-09-18  Hans Breuer  <hans@breuer.org>
578
579         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
580         cause gtkprogressbar.c has #include <config.h> conditionally; less
581         noise from generated gtk.def
582         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
583         
584         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
585         For me it works as well as the *NIX implemenation, that is not at all.
586
587         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
588
589         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
590         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
591         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
592         again - if compiled properly.
593
594         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
595         already coming with Gtk+. Makes it compile on win32.
596
597 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
598
599         * README.cvs-commits: fixed some tiny typos
600
601 2005-09-16  Tor Lillqvist  <tml@novell.com>
602
603         * modules/engines/ms-windows/msw_style.c (draw_extension,
604         draw_box_gap): Check whether the widget actually is a GtkNotebook
605         before treating it as such. Drop some unneeded local variables,
606         use parameter with same information instead. (#316412)
607
608 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
609
610         * tests/autotestfilechooser.c: Start a set of automated tests for
611         the file chooser.  The only test in there right now doesn't pass
612         yet.  It specifies the intended behavior of the first optimization
613         of a series which I'll do on the file chooser (see
614         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
615         details of this optimization).
616
617         * tests/Makefile.am: Added autotestfilechooser.c.
618
619         * gtk/gtkfilechooserprivate.h (struct
620         _GtkFileChooserDialogPrivate): Move all the file chooser's private
621         structures to here, so that they can be accessed by
622         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
623         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
624
625         * gtk/gtkfilechooserdialog.c: See above.
626
627         * gtk/gtkfilechooserwidget.c: See above.
628
629         * gtk/gtkfilechooserdefault.c: See above.
630
631 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
632
633         * gtk/gtkwindow.c: 
634         gtk_window_map_event(): new function to work around lost unmap requests.
635         fixes bug #316180.
636
637 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
638
639         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
640         an easy-to-find profiling marker when starting to create a file
641         chooser.
642         (browse_files_model_finished_loading_cb): Likewise, for when the
643         chooser is finished loading.
644
645 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
646
647         * gtk/gtkcolorbutton.c: Check "color" argument in 
648         gtk_color_button_set_color ()
649
650 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
651
652         * gtk/gtklabel.c (gtk_label_get_type): 
653         * gtk/gtkbutton.c (gtk_button_get_type): 
654         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
655         using a mem chunk for window groups, buttons, labels.
656
657         * gtk/updateiconcache.c (foreach_remove_func): Fix
658         a use-after-free bug.  (#316256, Alexander Nedotsukov)
659
660 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
661
662         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
663
664         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
665         
666 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
667
668         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
669         Let GDK_Return pass through in some more cases.
670
671         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
672         activating the entry. 
673
674         * gtk/gtkiconview.c (gtk_icon_view_class_init):
675         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
676         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
677
678         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
679         (#316001, Guillaume Cottenceau)
680
681         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
682         mistake in the docs.  (#315993, Guillaume Cottenceau)
683
684         * tests/testentrycompletion.c (create_simple_completion_model): Add
685         some strings containing multibyte characters.
686
687         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
688         Fix prefix insertion for multibyte characters.  (#316095,
689         Tommi Komulainen)
690
691         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
692         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
693         return NULL if the widget is not realized.  (#316023,
694         Guillaume Cottenceau)
695
696 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
697
698         * gdk/gdk.symbols: 
699         * gdk/gdkproperty.h: 
700         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
701         New function to avoid pointless strdups when creating atoms
702         from static strings.  
703
704         * gdk/x11/*.c:
705         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
706         appropriate.
707
708 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
709
710         * gtk/gtkcellrendererkeys.h: 
711         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
712         and editing accelerators, a port of EggCellRendererKeys .
713
714         * gtk/gtk.symbols:
715         * gtk/gtk.h:
716         * gtk/Makefile.am: Add the keys cell renderer.
717
718         * tests/Makefile.am: 
719         * tests/testkeys.c: Test GtkCellRendererKeys
720
721 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
722
723         Make it possible to determine if a key event is for a
724         modifier key:
725         
726         * gdk/x11/gdkprivate-x11.h: 
727         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
728         New function to determine if a keycode is mapped to a modifier.
729         (get_xkb): Get the modmap.
730
731         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
732         is_modifier bit by calling _gdk_keymap_key_is_modifier().
733
734         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
735         bit.
736
737 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
738
739         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
740         unused variable, noticed by Kjartan Maraas.
741
742 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
743
744         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
745         Make drag reordering work properly for columns other than the
746         first.  (#315054, Dan Winship)
747         
748         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
749         invalid fontnames better. (#136926, Michael R. Walton)
750         
751         Stop cursor blinking in non-editable regions of a text view.
752         (#311508, Torbjörn Andersson)
753         
754         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
755         (cursor_blinks): Take editability into account when deciding
756         whether the cursor blinks.
757         (gtk_text_view_button_release_event): 
758         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
759
760         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
761         Use connect_after to connect to the focus_out event. This
762         ensures that the entry has already stopped blinking by the time
763         we emit the edited signal.  (#315229, Thomas Leonard)
764
765         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
766
767         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
768         unsigned ints to -1.  (#315481, Kjartan Maraas)
769
770         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
771         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
772         (#314473, Stanislav Brabec)
773
774 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
775
776         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
777         memory handling.  (#314975, Torsten Schoenfeld)
778
779         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
780         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
781         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
782         * gtk/gtklabel.c (gtk_label_class_init): 
783         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
784         Stylistic improvements and clarifications for some blurbs. 
785         (#315520, Clytie Siddall)
786
787 2005-09-09  Tor Lillqvist  <tml@novell.com>
788
789         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
790         display name. There is only one GdkDisplay on Win32, and
791         constructing the display name isn't entirely trivial, so cacheing
792         is probably worth it. For instance GIMP calls this function a lot.
793         (gdk_display_open): Call gdk_display_get_name() to prime the
794         cached name.
795         (gdk_display_get_n_screens, gdk_display_get_screen,
796         gdk_display_get_default_screen): Verify parameter correctness like
797         the X11 backend does.
798
799         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
800         Return a freshly allocated string, as the API specifies. Fixes a
801         heap corruption problem that caused random errors and crashes in
802         GIMP, for instance.
803
804 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
805
806         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
807         Make C-u commit and restart hex input if we are already in a
808         hex sequence.
809
810 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
811
812         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
813         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
814         if they are mapped to the same modifier.
815
816         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
817         to gtkstatusicon.c and gtktrayicon-x11.c
818
819         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
820         default accel mod mask.
821
822         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
823         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
824         Don't use GDK_ALT_MASK.
825
826         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
827
828 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
829
830         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
831         
832         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
833         modifiers.
834
835         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
836         Mod2 - Mod5 and against Super, Hyper, Meta.
837
838         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
839         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
840         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
841
842         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
843         modmap to maintain the information which X modifiers map to
844         virtual modifiers.
845         (get_xkb): Set up the modmap from the XKB tables.
846         (update_keymaps): Set up the modmap from the information returned
847         by XGetModifierMapping in the non-XKB case.
848
849         * gdk/x11/gdkprivate-x11.h: 
850         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
851         function to set the virtual modifiers in the state.
852
853         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
854         _gdk_keymap_add_virtual_modifiers here.
855
856         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
857         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
858         for GDK_MOD1_MASK.
859
860 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
861
862         * gtk/gtkaction.c (connect_proxy): Set the label of a button
863         if it has no child.  (#315253, John Finlay)
864
865 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
866
867         * gtkimcontextsimple.h: Add a modifiers_dropped bit
868
869 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
870
871         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
872         on destroy to avoid problems when they are called on a destroyed
873         widget.  (#315135, John Cupitt)
874         
875         * gtk/gtkentry.c (gtk_entry_class_init):
876         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
877         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
878
879         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
880         code. Now we only steal a single key combination, Ctrl-Shift-U,
881         instead of sixteen. 
882         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
883         by a sequence of hex digits entered with Ctrl-Shift still held.
884         Releasing one of the modifiers or pressing space while the modifiers
885         are still held commits the character. It is possible to erase
886         digits using backspace.
887         As an extension to the above, we also allow to start the sequence
888         with Ctrl-Shift-U, then release the modifiers before typing any
889         digits, and enter the digits without modifiers.
890         (#82011, Owen Taylor)
891         
892 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
893
894         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
895         we still need to deliver the destroy event.  (#314980, Chris Lahey)
896
897         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
898         im context before committing \n or \t.
899
900 2005-09-02  Alexander Larsson  <alexl@redhat.com>
901
902         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
903         (shortcuts_activate_volume):
904         Handle base_path being null in the rest of the cases (#310270)
905
906 2005-09-02  Tor Lillqvist  <tml@novell.com>
907
908         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
909         cursor position also in root window coordinates. Prune out
910         superfluous WM_MOUSEMOVE events even earlier, based on root window
911         coordinates. Windows sends WM_MOUSEMOVE messages after a new
912         window has ben mapped below the cursor even if the mouse doesn't
913         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
914         confused at least gtk_menu_motion_notify(). (#314995)
915
916         * gtk/gtkintl.h: No need to include config.h here. It caused
917         warnings about GTK_LOCALEDIR being redefined on Win32 when
918         compiling files where gtkintl.h is included after gtkprivate.h
919         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
920
921         * gtk/gtkplug.c: Include config.h.
922
923 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
924
925         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
926         xdg_mime_get_mime_type_for_file() where possible, to avoid
927         useless re-stating.  
928         
929         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
930         typo.  (#314921, Guillaume Cottenceau)
931
932         * gdk/*.c: Intern some more strings.
933         * gtk/gtkintl.h: 
934         * gtk/*.c: Define an I_() macro and use it instead of the 
935         bulky g_intern_static_string().
936
937 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
938
939         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
940         instead of copying it.
941
942         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
943
944         * gtk/*.c: Also intern static strings passed to 
945         g_object_set_data().
946
947         * gdk/Makefile.am: 
948         * gtk/Makefile.am: Intern type names in code generated by 
949         glib-mkenums, too.
950
951         * gtk/*.c: 
952         * gdk/x11/*.c: 
953         * gdk/*.c: Intern type names before registering the type to avoid 
954         unnecessary copies.
955
956         * configure.in: Require GLib 2.9.0
957
958 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
959
960         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
961         and add icon-size and icon-size-set properties.  (#314172)      
962
963         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
964         groups across transient parents.  (#312918, Christian Persch)
965
966         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
967         Guillaume Cottenceau)
968
969         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
970         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
971
972 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
973
974         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
975         make C-/ select all and C-\ unselect all.  (#309301,
976         Kathy Fernandez)
977
978         * gtk/gtkimcontextsimple.c: Change the compose sequence for
979         soft hyphen to be multi_key-minus-minus-space, and add
980         compose sequences multi_key-minus-minus-period and 
981         multi_key-minus-minus-minus for en dash and em dash.
982         (#172653, Christian Lohmaier)
983
984         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
985         code.  (#313946, Christian Persch)
986
987         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
988         fix for the default value of the "ui" property.
989
990 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
991
992         * gtk/gtk.symbols: 
993         * gtk/gtkselection.h:
994         * gtk/gtkselection.c: Add functions which look for text, image
995         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
996
997         * gtk/gtk.symbols: 
998         * gtk/gtkselection.h:
999         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
1000         Add a function to check wether targets include uri.  
1001         (#314092, Mark Wielaard)
1002         
1003         * gtk/gtk.symbols: 
1004         * gtk/gtkwindow.h: 
1005         * gtk/gtkwindow.c: Add a deletable property with getter
1006         and setter, to control the close button in the window 
1007         frame.  (#59718, Havoc Pennington)
1008
1009 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
1010
1011         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
1012         to the arrow keys for menu navigation.  (#162825, Carl Worth)
1013
1014         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
1015
1016         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
1017
1018         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
1019         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
1020         refer to nonexisting stock ids.
1021
1022         * gtk/gtktextview.c (popup_targets_received): 
1023         * gtk/gtkentry.c (popup_targets_received): Construct
1024         the "Select All" menuitem from stock.
1025
1026         * gtk/stock-icons/stock_select_all_{16,24}.png:
1027         * gtk/stock-icons/Makefile.am: 
1028         * gtk/gtkiconfactory.c:
1029         * gtk/gtkstock.h: 
1030         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
1031         Calum Benson)
1032
1033         * gtk/gtktrayicon.c: Add a pointer to the spec.
1034
1035         * gtk/gtkstatusicon-x11.c: Add docs.
1036
1037         * gtk/gtkstatusicon.h: Fix a typo.
1038
1039         Add a cross-platform "tray icon" API, by
1040         porting EggStatusIcon/EggTrayIcon (#105101)
1041         
1042         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
1043         displays an icon in a notification area.
1044
1045         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
1046         X11, using GtkTrayIcon.
1047
1048         * gtk/gtktrayicon.h: 
1049         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
1050         system tray specification, not public API.
1051
1052         * gtk/gtk.symbols: Add new exported functions.
1053
1054         * gtk/gtk.h: Include gtkstatusicon.h.
1055
1056         * gtk/Makefile.am: Add new files.
1057
1058         * tests/Makefile.am:
1059         * tests/teststatusicon.c: Test for GtkStatusIcon.
1060
1061 2005-08-29  Christopher Aillon  <caillon@redhat.com>
1062
1063         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
1064         and GTK_STOCK_DISCONNECT
1065         
1066 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
1067
1068         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
1069         Use XFixesChangeSaveSet if available.  (#314682)
1070
1071         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
1072         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
1073
1074 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
1075
1076         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
1077         accidentally leftover duplicate pixbuf creation.  (#314700,
1078         Kjartan Maraas)
1079
1080         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
1081         leak the cursor theme name.  (#314693, Kjartan Maraas)
1082
1083         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
1084         state.children in all cases.  (#313862, Kjartan Maraas)
1085
1086 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
1087
1088         * po/POTFILES.in, po-properties/POTFILES.in:
1089         Add gdk/gdkscreen.c
1090
1091 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
1092
1093         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
1094         value of the ui property. (#314532, Yong Wang)
1095
1096         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
1097         when G_MAXLONG is passed as length.  
1098
1099 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
1100
1101         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
1102         to avoid overloading --force.  (JP Rosevaar)
1103
1104 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
1105
1106         * configure.in: Bump version to 2.9.0
1107
1108         * gdk/gdk.symbols: 
1109         * gdk/gdkscreen.h: 
1110         * gdk/gdkscreen.c: Make the GdkScreen font options api
1111         public, and add properties GdkScreen::font-options and
1112         GdkScreen::resolution.  (#314004)
1113
1114         * gdk/gdkpango.c:
1115         * gtk/gtksettings.c:
1116         * gtk/gtkwidget.c: Adjust all callers.
1117         
1118         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
1119         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
1120         * gdk/gdkscreen.c: Include gdkintl.h.
1121
1122         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
1123         variable warning, pointed out by Colin Walters. (#314585)
1124
1125 2005-08-26  Tor Lillqvist  <tml@novell.com>
1126
1127         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
1128         printouts.
1129         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
1130
1131 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
1132
1133         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
1134         of week_start.  (#314473, JP Rosevaar)
1135
1136 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
1137
1138         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
1139         lock.  (#314533, Thomas Fitzsimmons)
1140
1141 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
1142
1143         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
1144         NULL gracefully.  (#314523, Ed Catmur)
1145
1146 2005-08-25  Owen Taylor  <otaylor@redhat.com>
1147
1148         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
1149         Handle theme == NULL.
1150
1151 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
1152
1153         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
1154         y offset into account when positioning the popup.  (#314470,
1155         Christian Persch)
1156
1157 2005-08-25  Owen Taylor  <otaylor@redhat.com>
1158
1159         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
1160         as instance_init, not base_init! (#314452, Fix from Frederic
1161         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
1162         rather than 1 for a negative flag value.
1163
1164 2005-08-24  Owen Taylor  <otaylor@redhat.com>
1165
1166         * gdk/gdkpango.c (draw_error_underline): Add a note about
1167         cut-and-paste between here and Pango.
1168
1169 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1170
1171         * === Released 2.8.2 ===
1172
1173         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
1174         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
1175         Wielaard)
1176
1177         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
1178         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
1179         Sebastien Bacher)
1180         
1181         * NEWS: Updates
1182
1183         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
1184         and cursor settings get propagated down to the screen initially.
1185         Pointed out by Frederic Crozat.
1186
1187         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
1188         message if the screen is NULL. Noticed by Kjartan Maraas.
1189
1190 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1191
1192         * Bump version
1193
1194         * === Released 2.8.1 ===
1195
1196         * NEWS: Updates
1197         
1198 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1199
1200         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
1201         against lazy filterers which return values other than TRUE or
1202         FALSE from their visible func.  (#314335)
1203
1204 2005-08-23  Owen Taylor  <otaylor@redhat.com>
1205
1206         Fix for #314004, reported by Michael Reinsch:
1207
1208         * gdk/gdk.symbols:
1209         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
1210         Add gdk_screen_get/set_resolution_libgtk_only()
1211
1212         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
1213         the options for the screen on the newly created context.
1214
1215         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
1216         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
1217         the font options on the screen.
1218
1219         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
1220         the font options from the screen and set them on the context.
1221
1222 2005-08-23  Kristian Rietveld  <kris@gtk.org>
1223
1224         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
1225         bother inserting new rows in a level with a zero refcount and
1226         immediately free the level. (Fixes #312350, reported by Markku Vire).
1227
1228 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
1229
1230         * gtk/updateiconcache.c: Complain when there is no index.theme file
1231         in the specified directory, unless --force is used. Also add an
1232         --index-only option to create caches without image data.
1233
1234         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
1235         C99ism.  (#314262, Robert Jeff Mitchell)
1236         
1237 2005-08-22  Manish Singh  <yosh@gimp.org>
1238
1239         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
1240
1241         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
1242
1243 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
1244
1245         * gtk/gtkwindow.c (gtk_window_client_event): 
1246         * gtk/gtkicontheme.c (ensure_valid_themes) 
1247         (_gtk_icon_theme_check_reload): Implement a clientmessage based
1248         scheme for makeing sure that all GTK+ applications notice if an
1249         icon theme has been updated. This should prevent multiple versions
1250         of an icon theme cache to be mapped in memory at the same time,
1251         which can cause excessive memory consumption.  (#313156, Chris 
1252         Lahey)
1253
1254 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
1255
1256         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
1257         regarding icon theme changes.
1258
1259         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
1260         pixbufs which are backed by the mmapped memory of an icon cache,
1261         increase the refcount of the icon cache, so that the memory is not
1262         munmapped away underneath the pixbuf upon icon theme changes.  
1263         (#314170, Kjartan Maraas)
1264
1265         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
1266         to link against Xext.  (#314062)
1267
1268         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
1269         overruns.  (#314081, Hans Breuer)
1270
1271 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
1272
1273         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
1274         returned layout must not be modified.
1275
1276 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
1277
1278         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
1279         scroll_to_path if the model changes.
1280
1281         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
1282         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
1283         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
1284         we're realized, #312798
1285         (gtk_icon_view_set_model): clear scroll_to_path if the model
1286         changes.
1287
1288 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
1289
1290         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
1291         (gtk_range_adjustment_value_changed):  Don't queue a draw
1292         if the layout has not changed.  (#313991, Benjamin Berg)
1293
1294 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
1295
1296         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
1297         Benoit Carpentier)
1298
1299         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
1300         Fix a typo. 
1301
1302         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
1303         (model_add_special, model_add_special, model_add_volumes):
1304         Handle pixbuf being NULL without warnings. Also, don't
1305         leak pixbuf references when the icon theme is changed.
1306
1307         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
1308         the user data on destroyed windows, since at best
1309         it can be a stale pointer.  (#313953, Robin Green)      
1310
1311 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
1312
1313         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
1314         (#313900, Sebastien Bacher)
1315
1316         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
1317         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
1318
1319         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
1320         (xdnd_read_actions, get_client_window_at_coords_recurse): 
1321         Free data returned from XGetWindowProperty. 
1322
1323         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
1324         Free data returned from XGetWindowProperty.  (313867, Kjartan
1325         Maraas)
1326         
1327         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
1328         children in all cases.  (#313862, Kjartan Maraas)
1329
1330         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
1331         in the per-directory hash, even if they come from the icon cache. 
1332         We tried to avoid that before, but as a result leaked icon data
1333         structs.  (#313852, Kjartan Maraas)
1334
1335 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
1336
1337         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
1338         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
1339
1340 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1341
1342         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
1343         files for x11/xext. (Jonas Bonn)
1344
1345 2005-08-15  Tor Lillqvist  <tml@novell.com>
1346
1347         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
1348         inside GTK_NOTE.
1349
1350 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1351
1352         * configure.in: Fix have_base_pc / have_base_x_pc typo.
1353
1354         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
1355         (#313417, James Andrewartha)
1356
1357         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
1358         FcNameConstant(). (More of #313417)
1359
1360 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1361
1362         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
1363         modal dialogs, make sure to inherit the window group from 
1364         the parent, since we don't inherit window groups across
1365         transient parents currently.  (#312918, Christian Persch)
1366
1367         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
1368         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
1369
1370         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
1371         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
1372         gracefully.  (#312796, Jonathan Blandford)
1373
1374         * tests/testtoolbar.c: Add some more tests for menu placement.
1375
1376         * gtk/gtkmenutoolbutton.c (menu_position_func): 
1377         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
1378         of toolbutton menus and of the overflow menu.  (#312937, 
1379         #153870, Christian Persch, Paolo Borelli)
1380
1381 2005-08-15  Tor Lillqvist  <tml@novell.com>
1382
1383         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
1384         the nonportable <libgen.h> and dirname().
1385
1386 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1387
1388         * gtk/gtksizegroup.c: Use object data to mark widgets and
1389         groups as visited, so that we avoid constant extra list
1390         traversals. Also allocate quarks in class_init.  (#311618,
1391         Michael Natterer)
1392
1393         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
1394         download location for the hicolor icon theme. (#313475, Olexiy 
1395         Avramchenko)
1396
1397         * gtk/gtkicontheme.c: Remove debug spew. 
1398
1399 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1400
1401         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
1402         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
1403         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
1404         Handle pixmap == NULL when checking for a colormap.
1405         (Allin Cottrell).
1406
1407 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
1408
1409         * gtk/updateiconcache.c: Store only one copy of the pixel data
1410         for symlinked icons. To achieve this, maintain a hashtable 
1411         mapping pathnames to pixel data, and share the pixel data for
1412         all symlinks resolving to the same pathname. When writing out
1413         the image data, write out the pixel data only the first time
1414         it is met, and store the offset pointing to the first copy
1415         for use in all later cases.
1416         This reduces the size of the Bluecurve icon cache from 40
1417         to 13MB. (#312972)
1418