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