]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
removed redundant calls to g_object_notify().
[~andy/gtk] / ChangeLog.pre-2-10
1 2005-11-14  Michael Natterer  <mitch@imendio.com>
2
3         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
4         removed redundant calls to g_object_notify().
5
6 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
7
8         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
9         improvements.  (#321338)
10
11         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
12         limit an inclusive boundary.  (#321299)
13
14 2005-11-12  Michael Natterer  <mitch@imendio.com>
15
16         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
17         rebuilt if needed.
18
19 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
20
21         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
22         theme's handling of toolbars, handleboxes, and menubars more in-line
23         with Microsoft's IE style.
24         * modules/engines/ms-windows/*.c: Indentation cleanups
25         
26 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
27
28         Make builtin icons work in gtk_window_set_icon_name() 
29         (#321046, Maxim Udushlivy)
30
31         * gtk/gtkicontheme.c (insert_theme): Always insert the default
32         theme.
33         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
34         from here.
35         (theme_lookup_icon, find_builtin_icon): ...and not from here.
36         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
37         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
38
39 2005-11-12  Tor Lillqvist  <tml@novell.com>
40
41         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
42         dotfiles, no such convention on Win32. Just hide files with the
43         hidden attribute. (#314627)
44
45 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
46
47         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
48         check whether the path is a folder.  It is useful to bookmark
49         files as well (e.g. todo.txt), and this will also help
50         performance.
51         (shortcuts_add_bookmark_from_path): Likewise.
52         (shortcuts_activate_iter): Change folders or select files, as
53         appropriate.
54
55 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
56
57         * tests/autotestfilechooser.c (main): Use
58         g_log_set_default_handler() instead of explicitly setting a
59         handler for each domain.
60
61         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
62         the base path of the volume if it is mounted.
63
64 2005-11-11  Michael Natterer  <mitch@imendio.com>
65
66         Added per-stepper API for GtkRange's stepper sensitivity as
67         discussed in bug #321056:
68
69         * gtk/gtkenums.h: added GtkSensitivityType which can be
70         { AUTO, ON, OFF }.
71
72         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
73         and "upper-stepper-sensitivity" and public getters/setters for
74         them. Changed stepper drawing to honor the new properties.
75
76         * gtk/gtk.symbols: added the new symbols.
77
78 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
79
80         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
81         emit them when the popup is shown or hidden.  (#162531, Tommi
82         Komulainen)
83
84         * tests/testcombo.c: Add an example of popuplating a combobox
85         on click.
86
87         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
88         erroneous semicolon.
89
90         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
91         semicolon. 
92
93         Don't corrupt odd keymaps (#316638, Kean Johnston)
94         
95         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
96         handle frobbing keymaps with odd numbers of syms/code.
97         
98         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
99         frob the keymap.
100
101         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
102         
103         * gtk/gtkpathbar.[hc]: Add a child_path argument to
104         the path_clicked signal.
105         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
106         child_path, if it is provided.
107         * gtk/marshalers.list (path_bar_clicked): Add the necessary
108         glue.
109
110         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
111         Kjartan Maraas)
112         
113         * gtk/gtk.symbols: 
114         * gtk/gtktreeview.h: 
115         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
116         (#163851, Richard Hult)
117
118 2005-11-10  Michael Natterer  <mitch@imendio.com>
119
120         Applied patch from maemo-gtk that addresses many issues wrt
121         display migration and display closing (bug #85715).
122
123         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
124         default display to NULL when it's closed. Instead set the most
125         recently opened display as new default (if one exists).
126
127         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
128         of this callback.
129
130         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
131         exist before unrefing them.
132
133         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
134         is closed, allow destruction of the root window.
135
136         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
137         dispose(), free stuff that was leaked before.
138
139         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
140         the xsettings_client still exists before destroying it.
141
142         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
143         X resources.
144
145         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
146         dispose() implementation.
147
148         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
149         dispose() and check if it still exists before unrefing it. Set
150         their pointers to NULL/None *after* upchaining in dispose(),
151         because X11 implementations of members of the parent class still
152         need them for their own destruction.
153
154         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
155         was g_error()ing when finalizing a visual.
156
157         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
158         get_clipboard_widget() because it would create the widget if it
159         doesn't exist. Use g_object_get_data() directly instead.
160
161         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
162         of this callback.
163
164 2005-11-10  Simos Xenitellis  <simos@gnome.org>
165
166         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
167
168 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
169
170         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
171         to render its arrows insensitive when the adjustment is in
172         its min or max position. this makes range arrow behaviour 
173         consistent with spin button behaviour. (#321056)
174
175 2005-11-09  Tor Lillqvist  <tml@novell.com>
176
177         * gdk/gdkinternals.h
178         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
179         the GdkDebugFlag enum.
180
181         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
182         this file instead of MISC. Now asking for MISC will give mainly
183         window manipulation debugging output with the Win32 backend.
184
185 2005-11-09  Tor Lillqvist  <tml@novell.com>
186
187         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
188
189         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
190         function which was used only in one place.
191
192         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
193
194         (gdk_window_set_geometry_hints): If we have identical minimum and
195         maximum size hints, remove the resize and maximize
196         decorations/functions. (#104514)
197
198         If we have a maximum size hint, remove the maximize
199         decoration/function but ensure the resize decoration/function is
200         available. Otherwise ensure both resize and maximize
201         decorations/functions are there.
202
203         (set_or_clear_style_bits): Factored out common code from
204         gdk_window_set_decorations() and gdk_window_set_functions(). 
205
206         Hack the window style setting once more: Only touch the window
207         style bits corresponding to the GdkWMDecoration or GdkWMFunction
208         parameter bitmasks. Hopefully this finally is the correct thing to
209         do. We used to clear all other bits than those that were being
210         set, or set all other bits than those that were being cleared.
211
212         Take into account that adding or removing decorations leaves the
213         window's outer size unchanged, i.e., the client area's size and
214         position change. This is apparently not what we want, so change
215         also the window's (outer) position and size appropriately so that
216         the client area's position and size stay constant.
217
218         gtk-demo's color selector dialog is now non-resizable like on X11
219         (I tested with metacity in GNOME). Torn off menus are shrinkable
220         vertically but have a maximum size, and are not maximizable or
221         minimizable, like on X11.
222
223         (gdk_window_set_decorations, gdk_window_set_functions): Let
224         set_or_clear_decorations() do most of the job.
225
226         * gdk/win32/gdkprivate-win32.h: Remove declaration of
227         _gdk_win32_get_adjusted_client_rect().
228
229 2005-11-09  Tor Lillqvist  <tml@novell.com>
230
231         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
232         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
233         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
234         type hint. Implement gdk_window_get_type_hint() by just returning
235         the hint stored.
236
237 2005-11-09  Tor Lillqvist  <tml@novell.com>
238
239         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
240         Remove code that has been permanently ifdeffed out for two years.
241
242 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
243
244         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
245         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
246
247         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
248         icons if they would make the request large enough to cause
249         Xlib to loose the connection.  (#320909, Claudio Saavedra)
250
251 2005-11-08  Michael Natterer  <mitch@imendio.com>
252
253         * gdk/gdk.symbols
254         * gdk/gdkwindow.h
255         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
256         extracted from maemo-gtk). Fixes bug #320872.
257
258 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
259
260         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
261         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
262
263         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
264         Don't grab focus when a slider button is pressed, instead, use
265         a bit in the pathbar struct to determine whether to scroll up
266         or down.  (#314486, Carlos Garnacho)
267
268         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
269         Don't popup the completions if the focus has already been
270         moved somewhere else.  (#319914, Christian Persch)
271
272         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
273         Raise the drag_window after reconfiguring the 
274         toolbar.  (#320803, Christian Persch)
275
276         * gtk/gtk.symbols: 
277         * gtk/gtkfilechooserbutton.h: 
278         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
279         with setter and getter.  (#318945, Christian Persch)
280         
281 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
282
283         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
284
285 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
286
287         * configure.in: Adjust to the stock icon changes.
288         
289 2005-11-07  Tor Lillqvist  <tml@novell.com>
290
291         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
292         Correct the calculation of maskstride. (#320152, Peter Zelezny)
293         
294 2005-11-06  Michael Natterer  <mitch@imendio.com>
295
296         * gtk/Makefile.am (icons): fixed rule to actually create the
297         symlinks, erroring out if anything goes wrong.
298
299 2005-11-06  Tor Lillqvist  <tml@novell.com>
300
301         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
302         target exists on Win32. First rename the target temporarily, then
303         if the renaming of the source to target fails, restore the
304         original name for the target.
305
306         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
307
308 2005-11-06  Tor Lillqvist  <tml@novell.com>
309
310         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
311         like pixbuf_to_hbitmaps_normal().
312         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
313         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
314         setting the G_WIN32_PRETEND_WIN9X environment variable.
315         
316 2005-11-06  Tor Lillqvist  <tml@novell.com>
317
318         Make icon masks work on Win98 (#320152, Peter Zelezny)
319
320         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
321         parameter for the depth of the bitmap, so that this function can
322         be used to create 1-bit bitmaps, too.
323         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
324         and initialize it properly.
325
326 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
327
328         Store builtin stock icons in an icon cache, instead of
329         populating a hash table with pixbufs at startup, to save both
330         memory and startup time.
331
332         * gtk/stock-icons/*: Reorganize the icons in a directory structure
333         suitable for gtk-update-icon-cache, and rename them to match the
334         stock ids.
335
336         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
337         add _gtk_icon_cache_has_icon_in_directory().
338
339         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
340         to store the contents of the icon cache in a C header.
341
342         * gtk/gtkbuiltincache.h: Generated private header which contains 
343         the icon cache for the builtin icons.
344
345         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
346         icons, and use that in addition to the hash table whenever
347         builtin icons are searched.
348
349         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
350         use it for static stock ids. 
351         (get_default_icons): Don't add the builtin
352         icons to the icon theme, just register the stock ids.
353         (render_fallback_image): Take the fallback image out of the
354         builtin icon cache.
355         
356         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
357         the necessary machinery to rebuild gtkbuiltincache.h.
358
359 2005-11-04  Michael Natterer  <mitch@imendio.com>
360
361         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
362         from maemo-gtk that changes the mtime check for rc files from
363         '>' to '!=', otherwise theme changes go unnoticed when turning
364         back the clock (Tommi Komulainen).
365
366 2005-11-04  Tor Lillqvist  <tml@novell.com>
367
368         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
369         leak on Win32.
370
371 2005-11-03  Tor Lillqvist  <tml@novell.com>
372
373         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
374         the Win32 backend, check that GdkDisplay* parameters are equal to
375         _gdk_display instead of using the unnecessarily general
376         GDK_IS_DISPLAY().
377
378         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
379         color bitmap to have "color" in their name, for similarity with
380         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
381         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
382         the mask bitmap's contents, ones for those pixels in the color
383         bitmap where the alpha is zero, zero for other pixels. We used to
384         use an uninitialized mask bitmap! This meant that icons and
385         cursors created presumably worked more or less by accident.
386         Totally blank icons with zero alpha everywhere (as used by
387         gtktrayicon.c) definitely did not work as expected.
388
389         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
390
391         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
392         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
393         necessary and can be removed from CVS. It has never been mentioned
394         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
395         are used on Win32. One label widget is used (but never shown) as
396         gtk_widget_render_icon() needs a widget.
397
398         Ifdefs used as necessary in several places. It might be cleaner to
399         split out the backend-specific parts to separate files, or at
400         least collect them into separate blocks in the file.
401
402         (wndproc): New function. Window procedure to monitor mouse events
403         in the system tray icon. Call gtk_status_icon_button_press() as
404         needed.
405         (create_tray_observer): New function. Creates a hidden window that
406         only serves as a tray icon message observer.
407
408         * tests/teststatusicon.c (icon_activated): Position the dialog
409         with GTK_WIN_POS_CENTER.
410         (do_quit): New function, hide and unref the GtkStatusIcon, and
411         call gtk_main_quit().
412         (popup_menu): Add a Quit menu item that calls do_quit().
413         
414 2005-11-02  Tor Lillqvist  <tml@novell.com>
415
416         * gdk/win32/gdkcolor-win32.c
417         * gdk/win32/gdkscreen-win32.c
418         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
419         fixes. Remove superfluous test for GdkWindow* parameters being
420         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
421         GdkScreen and one GdkDisplay in the Win32 backend, use those
422         variables instead of the getter functions. For GdkDisplay* and
423         GdkScreen* parameters, check that they are equal to the
424         corresponding singleton variables instead of the more general
425         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
426
427 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
428
429         * gtk/gtktextview.c: Remove some g_return_if_fail() from
430         static functions, replace some others by g_assert().
431         
432         * gtk/gtktextview.c (selection_motion_event_handler) 
433         (gtk_text_view_start_selection_drag): Keep track of the original
434         selection boundaries during a drag selection, in order to correctly
435         decide when to extend or shrink the selection.  (#320167,
436         reported by Arvind S N, patch by Paolo Borelli)
437
438         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
439         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
440         manual offset calculations by g_utf8_offset_to_pointer().
441         (#320360, Paolo Borelli)
442
443 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
444
445         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
446         nodes via the g_slice_*() API.
447         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
448
449 2005-11-01  Tor Lillqvist  <tml@novell.com>
450
451         * gdk/win32/gdkprivate-win32.h
452         * gdk/win32/gdkglobals-win32.c
453         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
454         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
455         their declarations, definitions and assignments into a more
456         logical and consistent order.
457
458         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
459         CF_ prefix for the predefined clipboard format names. Put quotes
460         around registered format names to distinguish them.
461         
462         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
463         immediately with a warning if the property type is STRING, TEXT,
464         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
465         should never pretend to handle on Win32. Handle only UTF8_STRING
466         here, other formats with delayed rendering. Use \uc1 instead of
467         \uc0 when generating Rich Text Format for easier testability on
468         XP, where WordPad misinterprets \uc0 encoded characters. Add more
469         GDK_NOTE debugging output for Clipboard operations.
470
471         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
472         (gdk_selection_convert): Don't pretent to handle STRING, just
473         UTF8_STRING. Streamline error handling, don't unnecessarily have a
474         GError which then isn't used for anything anyway if it gets set.
475         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
476         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
477
478         * config.h.win32.in: Sync with what configure produces.
479
480         * configure.in: Don't look for X_PACKAGES unless building for
481         x11. (#313986, John Ehresman)
482
483 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
484
485         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
486                         Wondered why there was no ku there before??
487
488 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
489
490         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
491         window to the toplevels window group.  (#319912, Christian Persch)
492
493 2005-10-28  Kristian Rietveld  <kris@gtk.org>
494
495         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
496         stupid thinko.
497
498 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
499
500         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
501         drag cursors.  (#319200, Federico Mena Quintero)
502
503         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
504         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
505         Neumair)
506
507         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
508         C99ism.  (#320000, Kazuki Iwamoto)
509
510         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
511         stars.  (#319985, Bastien Nocera)
512
513         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
514         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
515
516 2005-10-26  Michael Natterer  <mitch@imendio.com>
517
518         Fix bug #319974:
519
520         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
521         make sure that setting any of pixbuf/stock-id/icon-name resets the
522         others because they are mutually exclusive, and that unsetting any
523         of them only resets the pixbuf and nothing else. Also added
524         some missing g_object_notify().
525
526         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
527         g_value_set_object().
528
529         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
530         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
531         g_object_notify ("pixbuf").
532
533 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
534
535         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
536         careful about initializing cell_area.  (#319382, Tommi
537         Komulainen)
538
539         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
540         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
541
542         * demos/gtk-demo/clipboard.c (paste_received): Only set the
543         text if it is not NULL.  (#319930, Thomas Klausner)
544
545         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
546         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
547
548 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
549
550         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
551         * gtk/gtkthemes.c (gtk_theme_engine_load): 
552         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
553         when dlopening modules.  (#319557, Laszlo Peter)
554
555 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
556
557         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
558         segments when determining text direction.  (#319065, Tommi Komulainen)
559
560         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
561         on duplicate destroy.  (#318953, Gustavo Carneiro)
562
563         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
564         Point out that destroy-with-parent is a bad idea for the dialog
565         passed to this function.  (#318943, Christian Persch)
566
567         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
568         glib-mkenums.  (#318582, Damien Carbery)
569
570         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
571         docs.  (#317682, Christian Neumair)
572
573         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
574         seem to affect the placement of the data in the readonly 
575         section, and causes problems with some compilers.  (#317844)
576
577 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
578
579         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
580         Fix some issues with background drawing in RTL.  (#318781,
581         Eric Cazeaux)
582
583         * tests/Makefile.am:
584         * tests/testentrycompletion.c: Apply a patch by Christian
585         Persch to add property editors.
586
587         * gtk/gtkstatusicon.c: Emit activate on single-click,
588         not on double-click, change proposed by Milosz Derezynski.
589
590 2005-10-25  Kristian Rietveld  <kris@gtk.org>
591
592         Fixes #311955, reported by Markku Vire; and a lot more.
593
594         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
595         Levels can now have invisible nodes cached, functions have been
596         rewritten/refactored to take this into account; also the logic in
597         some functions has been corrected.
598         
599         Each referenced node now references all visible children or a single
600         invisible child, in order to be able to monitor all changes in the
601         child model required for correct operation.
602
603         When a virtual root is set, all nodes on the virtual root level are
604         referenced.
605
606         At last, a bunch of random bug fixes and comment updates.
607
608 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
609
610         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
611         more docs.  (#319722, Paolo Borelli)
612
613         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
614         initialization of screen_x11->xft_rgba more explicit.  (#319627,
615         Bogdan Nicula)
616
617         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
618         in a blurb.  (#319499, Francisco Javier F. Serrador)
619
620 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
621
622         Add settings to hide the input method and Unicode control character
623         submenus in the context menus of GtkEntry and GtkTextView.  
624         
625         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
626         
627         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
628
629         * gtk/gtktextview.c (popup_targets_received): 
630         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
631
632 2005-10-24  Kristian Rietveld  <kris@gtk.org>
633
634         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
635         row-has-child-toggled when the level is not in the cache does not
636         make sense.  (This bug probably crept in during the early stages
637         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
638         implementation yet),
639         (gtk_tree_model_sort_real_unref_node): only get the child iter
640         when we will actually also use it.
641
642 2005-10-22  Michael Natterer  <mitch@imendio.com>
643
644         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
645         widget being realized, in addition to being visible, to avoid
646         running into precondition check in gtk_tree_view_get_cell_area().
647         (approved by Kris).
648
649 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
650
651         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
652         Experimentally, scrollbar steppers can shrink to 8 pixels on 
653         Win32. Reflect that in the theme.
654         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
655         there is a 1-pixel border between a scrollbar and its child
656         in ScrolledWindows on Win32. Reflect that in the theme.
657         
658 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
659
660         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
661         for the selection window.  (#318806, Alex Larsson)
662
663 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
664
665         Fixes bug #317999:
666
667         * tests/autotestfilechooser.c
668         (test_button_folder_states_for_action): Test that we have either
669         $cwd or the explicitly-set folder.
670         (test_reload_sequence): Likewise.
671
672         * gtk/gtkfilechooserdefault.c
673         (gtk_file_chooser_default_get_current_folder): If our reload_state
674         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
675
676 2005-10-14  Tor Lillqvist  <tml@novell.com>
677
678         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
679         It didn't really do anything useful, and was just confusing and
680         incomplete. Comments claimed we don't do delayed rendering, but in
681         fact we do, for images. (The delayed rendering code has other
682         problems, though, see #168173.) The clipboard viewer code was
683         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
684         the message when necessary). It was just test code, it said so in
685         a comment. Add something similar back later if necessary.
686
687         (_win32_on_clipboard_change,
688         _gdk_win32_register_clipboard_notification): Remove.
689
690         (gdk_display_supports_selection_notification,
691         gdk_display_request_selection_notification): Always just return
692         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
693
694 2005-10-13  Tor Lillqvist  <tml@novell.com>
695
696         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
697         Alt-Enter specially. It does not have any special meaning and
698         should be passed on to the application. (#318378, Tim Evans)
699
700 2005-10-13  Tor Lillqvist  <tml@novell.com>
701
702         Set visual depth to 24 for 32 bits-per-pixel devices on
703         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
704         optimized composite_0888() function rather than the slower image
705         dithering functions to draw pixbufs (#313993, John Ehresman)
706
707         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
708         _gdk_windowing_get_bits_for_depth() to initialize
709         GdkImage::bits_per_pixel.
710         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
711
712         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
713         _gdk_windowing_get_bits_for_depth() to initialize
714         BITMAPINFOHEADER::biBitCount.
715
716         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
717         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
718         32.
719
720 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
721
722         * demos/gtk-demo/appwindow.c: (about_cb):
723           use PACKAGE_VERSION,bump year (#318654)
724
725 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
726
727         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
728         toggle here with the matching on toggle if it immediately follows. 
729         This is a common case, and handling it here prevents quadratic blowup 
730         in cleanup_line() below.  (#317125)
731
732         * gtk/gtktextsegment.h: 
733         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
734         the character counts into this function instead of computing them
735         again.
736
737 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
738
739         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
740         code.
741         * gtk/gtkfilechooserdefault.c
742         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
743         when the shortcut already exists in the sidebar.  (#147521)
744
745 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
746
747         * tests/testcombo.c: Demonstrate how to use custom widgets in
748         a GtkComboBox.  
749
750 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
751
752         Fixes bug #317999:
753
754         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
755         the the result of gtk_file_chooser_get_folder() is NULL or
756         non-NULL at the right times.  Log the tests.
757         (test_button_folder_states): New test for the initial states of
758         the current folder in GtkFileChooserButton.
759         (main): Test that the number of warnings/errors/critical errors is
760         zero.
761
762         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
763         Clarify the documentation on when this can return NULL.
764         (gtk_file_chooser_get_current_folder_uri): Likewise.
765
766         * gtk/gtkfilechooserbutton.c (struct
767         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
768         we use it to keep track of whether a folder has been set.
769         (gtk_file_chooser_button_map):  Implement.  If no folder has been
770         loaded before, we at least try to load $cwd here.
771         (gtk_file_chooser_button_constructor): If the construct-time
772         dialog already has a folder set, turn on our folder_has_been_set
773         flag.
774         (dialog_current_folder_changed_cb): Turn on our
775         folder_has_been_set flag.
776
777 2005-10-07  Michael Natterer  <mitch@gimp.org>
778
779         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
780         PROFILE_FILE_CHOOSER because they break compilation after the
781         removal of <unistd.h>.
782
783 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
784
785         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
786         by moving it out of the profiling ifdef.
787
788         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
789         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
790
791         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
792         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
793         Kazuki Iwamoto)
794
795 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
796                 
797         * gtk/gtk.symbols:
798         * gtk/gtktextbuffer.h:
799         * gtk/gtktextbuffer.c: Add a readonly has-selection property
800         with a getter.  (#318161, Paolo Borelli)
801
802 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
803
804         * README.in: Start collecting release notes for 2.10.
805
806         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
807         leak fix, since the assertion failures were traced to 
808         an xchat bug.  (#314696)
809         
810         * gtk/gtkstyle.c (gtk_style_detach):
811         (gtk_style_attach):  Documentation improvements.
812         (gtk_style_detach): Assert that the attach_count is > 0.
813
814 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
815
816         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
817         shortcut position, not a ShortcutsIndex, to make the function more
818         generic.
819         (home_folder_handler): Pass the resolved index to
820         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
821         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
822         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
823         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
824         make the respective key switch to the first, second, ..., tenth
825         bookmark.
826         (quick_bookmark_handler): Implement.
827
828 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
829
830         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
831         Desktop; just use their real names on the file system for the
832         user-visible names.
833
834         * gtk/gtkfilechooserdefault.c
835         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
836         binding signal, and bind it to M-d by default.
837         (desktop_folder_handler): Implement the default handler.
838         (home_folder_handler): Use a helper function.
839         (switch_to_shortcut): New helper function.
840         (shortcuts_append_home): Don't special-case the name of "Home";
841         just use the folder name.
842
843 2005-10-04  Tor Lillqvist  <tml@novell.com>
844
845         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
846         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
847
848 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
849
850         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
851         from yesterday, since it leads to assertion failures.  (#317879,
852         Sebastian Bacher)
853
854 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
855
856         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
857         calendar_compute_days() after setting priv->week_start.
858
859 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
860
861         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
862         removing it from the hash table.  (#314696, Benjamin Berg)
863
864 2005-10-01  Tor Lillqvist  <tml@novell.com>
865
866         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
867         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
868         is that the the desktop isn't visible because the session has been
869         switched, the screen is locked, or a terminal server session
870         disconnected, so no error message necessary. (#137796)
871
872         It is of course remotely possible that BitBlt() failing with
873         ERROR_INVALID_HANDLE might also be caused by some other
874         problem. We could strive for perfection and track whether the
875         desktop is visible by using WTSRegisterSessionNotification() and
876         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
877         this issue, though. If we would track desktop visibility, we
878         should then avoid even trying to update the display at all while
879         the desktop isn't visible.
880
881 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
882
883         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
884         to correct the calculations for the first week day. We may
885         just have to remove this code if too many locales turn out 
886         to have broken data. 
887
888         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
889         some cases.  (#317611, Tommi Komulainen)
890
891         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
892         Prevent overflow when storing size hints in an unsigned
893         short variable. Tracked down by Ray Strode and Søren Sandmann.
894
895 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
896
897         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
898         Paolo Borelli)
899
900         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
901         grab shadowed.  (#317332)
902
903 2005-09-29  Tor Lillqvist  <tml@novell.com>
904
905         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
906
907 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
908
909         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
910         if the unmap test fails.
911         (test_reload_sequence): Use gtk_widget_show_now() instead of
912         gtk_widget_show() for the dialog.
913         Thanks to Tim Janik for noticing these.
914
915 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
916
917         * tests/testcellrenderertext.c: New file with a set of tests for
918         GtkCellRendererText.  The idea is to run a text renderer through
919         most of its interesting property values to see that it works
920         correctly.
921
922         * tests/Makefile.am: Added testcellrenderertext.
923
924         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
925         entry/exit of this function for profiling.
926         (gtk_file_chooser_default_style_set): Mark the start/end of the
927         calls to the parent class and the the signal emission for profiling.
928
929 2005-09-29  Tor Lillqvist  <tml@novell.com>
930
931         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
932         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
933         system codepage using g_win32_locale_filename_from_utf8().
934         (#317457, Kazuki Iwamoto)
935
936 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
937
938         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
939         here. (#317039, Paolo Borelli)
940
941         * gtk/gtktexttag.h: 
942         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
943         to make this function work as boxed copy function.  (#317455,
944         Gustavo Carneiro)
945
946         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
947         NULL.  (#316828, Tor Lillqvist)
948
949 2005-09-28  Tor Lillqvist  <tml@novell.com>
950
951         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
952         Iwamoto)
953
954 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
955
956         Don't reload the current folder unnecessarily on ::map().
957
958         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
959         the reloading state.
960         (struct _GtkFileChooserDefault): Added a "reload_state" field.
961
962         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
963         Initialize impl->reload_state.
964         (gtk_file_chooser_default_map): Check the impl->reload_state; load
965         a default folder if no folder has been set, or reload the current
966         one only if we had been unmapped first.
967         (gtk_file_chooser_default_update_current_folder): Set the
968         reload_state to RELOAD_HAS_FOLDER.
969         (gtk_file_chooser_default_unmap): Implement, and set the
970         reload_state to RELOAD_WAS_UNMAPPED.
971         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
972         here; they'll get (re)loaded on ::map() anyway.
973
974         * gtk/gtkfilechooserwidget.c
975         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
976
977         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
978         a dialog; build it ourselves.
979         (test_reload): New test to ensure that we don't load the default
980         folder more than once, and that we reload it when
981         unmapping/remapping.
982         (get_impl_from_dialog): New utility function.
983         (test_widgets_for_current_action): Use get_impl_from_dialog().
984
985 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
986
987         * gtk/gtkfilechooserdefault.c
988         (gtk_file_chooser_default_constructor): Mark the entry/exit of
989         this function for profiling.
990         (check_icon_theme): Likewise.
991         (change_icon_theme): Likewise.
992         (settings_notify_cb): Likewise.
993         (gtk_file_chooser_default_screen_changed): Likewise.
994         (update_chooser_entry): If the selection is empty, clear the file
995         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
996         nothing will be selected when the user starts typeahead in the
997         treeview, and we don't want to clear the file name entry in that
998         case --- the user could be typing-ahead to look for a folder name.
999         Fixes bug #308332, patch by Jürg Billeter.
1000
1001 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
1002
1003         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
1004         Pop below the entry if there's more free space below the entry
1005         than above.  (#316948, Tommi Komulainen)
1006
1007 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
1008
1009         Do not create the save mode-specific widgets in the open modes, so
1010         that we don't carry their baggage around.
1011
1012         * gtk/gtkfilechooserdefault.c
1013         (gtk_file_chooser_default_constructor): Don't create the
1014         save_widgets here.
1015         (save_widgets_create): Set the impl->save_widgets directly here,
1016         instead of passing the widgets back to the caller.  Also, pack
1017         them into the impl's box.
1018         (update_appearance): Create or destroy the save widgets as
1019         appropriate.  Set the action of the save_file_name_entry here.
1020         (shortcuts_add_current_folder): Set the active item in the
1021         save_folder_combo only if it exists.
1022         (gtk_file_chooser_default_set_property): Don't set the action of
1023         the save_file_name_entry here.
1024         (gtk_file_chooser_default_update_current_folder): Set the base
1025         folder of the save_file_name_entry only if the entry exists.
1026         (shortcuts_drag_data_received_cb): Cast the selection_data->data
1027         to (const char *) since that's what shortcuts_drop_uris() expects.
1028         (file_list_drag_data_received_cb): Likewise, for
1029         g_uri_list_extract_uris().
1030
1031 2005-09-26  Tor Lillqvist  <tml@novell.com>
1032
1033         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
1034         the shaped flag here, too. (#316871)
1035         (gdk_window_shape_combine_region): Currently unimplemented, so
1036         don't do anything to the shaped flag here.
1037
1038 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
1039
1040         Fix #316871, reported by Dan Winship:
1041         
1042         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
1043
1044         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
1045         (gdk_window_shape_combine_region): Set it here.
1046
1047         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
1048         remove the child area for shaped windows.
1049
1050 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
1051
1052         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
1053         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
1054
1055 2005-09-22  Michael Natterer  <mitch@imendio.com>
1056
1057         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
1058         consistent with GTK+ terminology:
1059
1060         * gtk/gtkcellrendererkeys.[ch]
1061         * tests/testkeys.c: removed...
1062
1063         * gtk/gtkcellrendereraccel.[ch]
1064         * tests/testaccel.c: ...and added.
1065
1066         * gtk/Makefile.am
1067         * gtk/gtk.h
1068         * gtk/gtk.symbols
1069         * tests/Makefile.am: changed accordingly.
1070
1071 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
1072
1073         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
1074         for the grab-broken-event signal, noticed by Damon Chaplin.
1075
1076 2005-09-21  Tor Lillqvist  <tml@novell.com>
1077
1078         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
1079         gdk_text_property_to_text_list_for_display,
1080         gdk_text_property_to_utf8_list_for_display,
1081         gdk_win32_selection_add_targets,
1082         _gdk_win32_selection_convert_to_dib): Free return value from
1083         gdk_atom_name().
1084         (gdk_text_property_to_text_list_for_display): Drop GError variable
1085         that isn't actually used after being set.
1086
1087 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
1088
1089         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
1090         documentation.
1091
1092 2005-09-20  Tor Lillqvist  <tml@novell.com>
1093
1094         * gdk/win32/gdkselection-win32.c
1095         (gdk_selection_owner_get_for_display): Do return the correct owner
1096         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
1097         a window GDK knows about). The reason to return NULL seems to have
1098         gone when in the fix for bug #163702 the artificial
1099         GDK_SELECTION_CLEAR event generation was removed from
1100         gdk_selection_send_notify_for_display(). Fixes bug #316552.
1101
1102 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
1103
1104         Avoid unnecessary XkbGetState() calls and XkbStateNotify
1105         events.  (#151555, Søren Sandmann)
1106
1107         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
1108         XkbSelectEventDetails() to select XkbStateNotify events
1109         for only the state we care about.
1110
1111         * gdk/x11/gdkprivate-x11.h:
1112         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
1113         the event into the function and update the keymap state from
1114         the state information contained in the event. Adjust all callers.
1115         
1116 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
1117
1118         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
1119         in multiple places to avoid segfaults if the index is out of range.  
1120         (#316422, Guillaume Cottenceau)
1121         (gtk_icon_view_set_drag_dest_item): 
1122         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
1123         #316424, Guillaume Cottenceau)
1124
1125 2005-09-18  Hans Breuer  <hans@breuer.org>
1126
1127         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
1128         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
1129
1130 2005-09-18  Hans Breuer  <hans@breuer.org>
1131
1132         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
1133         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
1134         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
1135         the icon and is blinking with teststatusicon. More to come ...
1136
1137 2005-09-18  Hans Breuer  <hans@breuer.org>
1138
1139         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
1140         cause gtkprogressbar.c has #include <config.h> conditionally; less
1141         noise from generated gtk.def
1142         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
1143         
1144         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
1145         For me it works as well as the *NIX implemenation, that is not at all.
1146
1147         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
1148
1149         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
1150         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
1151         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
1152         again - if compiled properly.
1153
1154         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
1155         already coming with Gtk+. Makes it compile on win32.
1156
1157 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
1158
1159         * README.cvs-commits: fixed some tiny typos
1160
1161 2005-09-16  Tor Lillqvist  <tml@novell.com>
1162
1163         * modules/engines/ms-windows/msw_style.c (draw_extension,
1164         draw_box_gap): Check whether the widget actually is a GtkNotebook
1165         before treating it as such. Drop some unneeded local variables,
1166         use parameter with same information instead. (#316412)
1167
1168 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
1169
1170         * tests/autotestfilechooser.c: Start a set of automated tests for
1171         the file chooser.  The only test in there right now doesn't pass
1172         yet.  It specifies the intended behavior of the first optimization
1173         of a series which I'll do on the file chooser (see
1174         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
1175         details of this optimization).
1176
1177         * tests/Makefile.am: Added autotestfilechooser.c.
1178
1179         * gtk/gtkfilechooserprivate.h (struct
1180         _GtkFileChooserDialogPrivate): Move all the file chooser's private
1181         structures to here, so that they can be accessed by
1182         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
1183         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
1184
1185         * gtk/gtkfilechooserdialog.c: See above.
1186
1187         * gtk/gtkfilechooserwidget.c: See above.
1188
1189         * gtk/gtkfilechooserdefault.c: See above.
1190
1191 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
1192
1193         * gtk/gtkwindow.c: 
1194         gtk_window_map_event(): new function to work around lost unmap requests.
1195         fixes bug #316180.
1196
1197 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
1198
1199         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
1200         an easy-to-find profiling marker when starting to create a file
1201         chooser.
1202         (browse_files_model_finished_loading_cb): Likewise, for when the
1203         chooser is finished loading.
1204
1205 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
1206
1207         * gtk/gtkcolorbutton.c: Check "color" argument in 
1208         gtk_color_button_set_color ()
1209
1210 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
1211
1212         * gtk/gtklabel.c (gtk_label_get_type): 
1213         * gtk/gtkbutton.c (gtk_button_get_type): 
1214         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
1215         using a mem chunk for window groups, buttons, labels.
1216
1217         * gtk/updateiconcache.c (foreach_remove_func): Fix
1218         a use-after-free bug.  (#316256, Alexander Nedotsukov)
1219
1220 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
1221
1222         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
1223
1224         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
1225         
1226 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
1227
1228         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
1229         Let GDK_Return pass through in some more cases.
1230
1231         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
1232         activating the entry. 
1233
1234         * gtk/gtkiconview.c (gtk_icon_view_class_init):
1235         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
1236         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
1237
1238         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
1239         (#316001, Guillaume Cottenceau)
1240
1241         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
1242         mistake in the docs.  (#315993, Guillaume Cottenceau)
1243
1244         * tests/testentrycompletion.c (create_simple_completion_model): Add
1245         some strings containing multibyte characters.
1246
1247         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
1248         Fix prefix insertion for multibyte characters.  (#316095,
1249         Tommi Komulainen)
1250
1251         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
1252         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
1253         return NULL if the widget is not realized.  (#316023,
1254         Guillaume Cottenceau)
1255
1256 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
1257
1258         * gdk/gdk.symbols: 
1259         * gdk/gdkproperty.h: 
1260         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
1261         New function to avoid pointless strdups when creating atoms
1262         from static strings.  
1263
1264         * gdk/x11/*.c:
1265         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
1266         appropriate.
1267
1268 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
1269
1270         * gtk/gtkcellrendererkeys.h: 
1271         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
1272         and editing accelerators, a port of EggCellRendererKeys .
1273
1274         * gtk/gtk.symbols:
1275         * gtk/gtk.h:
1276         * gtk/Makefile.am: Add the keys cell renderer.
1277
1278         * tests/Makefile.am: 
1279         * tests/testkeys.c: Test GtkCellRendererKeys
1280
1281 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
1282
1283         Make it possible to determine if a key event is for a
1284         modifier key:
1285         
1286         * gdk/x11/gdkprivate-x11.h: 
1287         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
1288         New function to determine if a keycode is mapped to a modifier.
1289         (get_xkb): Get the modmap.
1290
1291         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
1292         is_modifier bit by calling _gdk_keymap_key_is_modifier().
1293
1294         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
1295         bit.
1296
1297 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
1298
1299         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
1300         unused variable, noticed by Kjartan Maraas.
1301
1302 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
1303
1304         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
1305         Make drag reordering work properly for columns other than the
1306         first.  (#315054, Dan Winship)
1307         
1308         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
1309         invalid fontnames better. (#136926, Michael R. Walton)
1310         
1311         Stop cursor blinking in non-editable regions of a text view.
1312         (#311508, Torbjörn Andersson)
1313         
1314         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
1315         (cursor_blinks): Take editability into account when deciding
1316         whether the cursor blinks.
1317         (gtk_text_view_button_release_event): 
1318         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
1319
1320         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
1321         Use connect_after to connect to the focus_out event. This
1322         ensures that the entry has already stopped blinking by the time
1323         we emit the edited signal.  (#315229, Thomas Leonard)
1324
1325         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
1326
1327         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
1328         unsigned ints to -1.  (#315481, Kjartan Maraas)
1329
1330         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
1331         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
1332         (#314473, Stanislav Brabec)
1333
1334 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
1335
1336         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
1337         memory handling.  (#314975, Torsten Schoenfeld)
1338
1339         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
1340         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
1341         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
1342         * gtk/gtklabel.c (gtk_label_class_init): 
1343         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
1344         Stylistic improvements and clarifications for some blurbs. 
1345         (#315520, Clytie Siddall)
1346
1347 2005-09-09  Tor Lillqvist  <tml@novell.com>
1348
1349         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
1350         display name. There is only one GdkDisplay on Win32, and
1351         constructing the display name isn't entirely trivial, so cacheing
1352         is probably worth it. For instance GIMP calls this function a lot.
1353         (gdk_display_open): Call gdk_display_get_name() to prime the
1354         cached name.
1355         (gdk_display_get_n_screens, gdk_display_get_screen,
1356         gdk_display_get_default_screen): Verify parameter correctness like
1357         the X11 backend does.
1358
1359         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
1360         Return a freshly allocated string, as the API specifies. Fixes a
1361         heap corruption problem that caused random errors and crashes in
1362         GIMP, for instance.
1363
1364 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
1365
1366         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
1367         Make C-u commit and restart hex input if we are already in a
1368         hex sequence.
1369
1370 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
1371
1372         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
1373         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
1374         if they are mapped to the same modifier.
1375
1376         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
1377         to gtkstatusicon.c and gtktrayicon-x11.c
1378
1379         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
1380         default accel mod mask.
1381
1382         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
1383         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
1384         Don't use GDK_ALT_MASK.
1385
1386         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
1387
1388 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
1389
1390         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
1391         
1392         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
1393         modifiers.
1394
1395         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
1396         Mod2 - Mod5 and against Super, Hyper, Meta.
1397
1398         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
1399         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
1400         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
1401
1402         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
1403         modmap to maintain the information which X modifiers map to
1404         virtual modifiers.
1405         (get_xkb): Set up the modmap from the XKB tables.
1406         (update_keymaps): Set up the modmap from the information returned
1407         by XGetModifierMapping in the non-XKB case.
1408
1409         * gdk/x11/gdkprivate-x11.h: 
1410         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
1411         function to set the virtual modifiers in the state.
1412
1413         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
1414         _gdk_keymap_add_virtual_modifiers here.
1415
1416         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
1417         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
1418         for GDK_MOD1_MASK.
1419
1420 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
1421
1422         * gtk/gtkaction.c (connect_proxy): Set the label of a button
1423         if it has no child.  (#315253, John Finlay)
1424
1425 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
1426
1427         * gtkimcontextsimple.h: Add a modifiers_dropped bit
1428
1429 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
1430
1431         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
1432         on destroy to avoid problems when they are called on a destroyed
1433         widget.  (#315135, John Cupitt)
1434         
1435         * gtk/gtkentry.c (gtk_entry_class_init):
1436         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
1437         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
1438
1439         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
1440         code. Now we only steal a single key combination, Ctrl-Shift-U,
1441         instead of sixteen. 
1442         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
1443         by a sequence of hex digits entered with Ctrl-Shift still held.
1444         Releasing one of the modifiers or pressing space while the modifiers
1445         are still held commits the character. It is possible to erase
1446         digits using backspace.
1447         As an extension to the above, we also allow to start the sequence
1448         with Ctrl-Shift-U, then release the modifiers before typing any
1449         digits, and enter the digits without modifiers.
1450         (#82011, Owen Taylor)
1451         
1452 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
1453
1454         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
1455         we still need to deliver the destroy event.  (#314980, Chris Lahey)
1456
1457         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
1458         im context before committing \n or \t.
1459
1460 2005-09-02  Alexander Larsson  <alexl@redhat.com>
1461
1462         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
1463         (shortcuts_activate_volume):
1464         Handle base_path being null in the rest of the cases (#310270)
1465
1466 2005-09-02  Tor Lillqvist  <tml@novell.com>
1467
1468         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
1469         cursor position also in root window coordinates. Prune out
1470         superfluous WM_MOUSEMOVE events even earlier, based on root window
1471         coordinates. Windows sends WM_MOUSEMOVE messages after a new
1472         window has ben mapped below the cursor even if the mouse doesn't
1473         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
1474         confused at least gtk_menu_motion_notify(). (#314995)
1475
1476         * gtk/gtkintl.h: No need to include config.h here. It caused
1477         warnings about GTK_LOCALEDIR being redefined on Win32 when
1478         compiling files where gtkintl.h is included after gtkprivate.h
1479         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
1480
1481         * gtk/gtkplug.c: Include config.h.
1482
1483 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
1484
1485         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
1486         xdg_mime_get_mime_type_for_file() where possible, to avoid
1487         useless re-stating.  
1488         
1489         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
1490         typo.  (#314921, Guillaume Cottenceau)
1491
1492         * gdk/*.c: Intern some more strings.
1493         * gtk/gtkintl.h: 
1494         * gtk/*.c: Define an I_() macro and use it instead of the 
1495         bulky g_intern_static_string().
1496
1497 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
1498
1499         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
1500         instead of copying it.
1501
1502         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
1503
1504         * gtk/*.c: Also intern static strings passed to 
1505         g_object_set_data().
1506
1507         * gdk/Makefile.am: 
1508         * gtk/Makefile.am: Intern type names in code generated by 
1509         glib-mkenums, too.
1510
1511         * gtk/*.c: 
1512         * gdk/x11/*.c: 
1513         * gdk/*.c: Intern type names before registering the type to avoid 
1514         unnecessary copies.
1515
1516         * configure.in: Require GLib 2.9.0
1517
1518 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
1519
1520         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
1521         and add icon-size and icon-size-set properties.  (#314172)      
1522
1523         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
1524         groups across transient parents.  (#312918, Christian Persch)
1525
1526         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
1527         Guillaume Cottenceau)
1528
1529         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
1530         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
1531
1532 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
1533
1534         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
1535         make C-/ select all and C-\ unselect all.  (#309301,
1536         Kathy Fernandez)
1537
1538         * gtk/gtkimcontextsimple.c: Change the compose sequence for
1539         soft hyphen to be multi_key-minus-minus-space, and add
1540         compose sequences multi_key-minus-minus-period and 
1541         multi_key-minus-minus-minus for en dash and em dash.
1542         (#172653, Christian Lohmaier)
1543
1544         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
1545         code.  (#313946, Christian Persch)
1546
1547         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
1548         fix for the default value of the "ui" property.
1549
1550 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
1551
1552         * gtk/gtk.symbols: 
1553         * gtk/gtkselection.h:
1554         * gtk/gtkselection.c: Add functions which look for text, image
1555         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
1556
1557         * gtk/gtk.symbols: 
1558         * gtk/gtkselection.h:
1559         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
1560         Add a function to check wether targets include uri.  
1561         (#314092, Mark Wielaard)
1562         
1563         * gtk/gtk.symbols: 
1564         * gtk/gtkwindow.h: 
1565         * gtk/gtkwindow.c: Add a deletable property with getter
1566         and setter, to control the close button in the window 
1567         frame.  (#59718, Havoc Pennington)
1568
1569 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
1570
1571         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
1572         to the arrow keys for menu navigation.  (#162825, Carl Worth)
1573
1574         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
1575
1576         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
1577
1578         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
1579         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
1580         refer to nonexisting stock ids.
1581
1582         * gtk/gtktextview.c (popup_targets_received): 
1583         * gtk/gtkentry.c (popup_targets_received): Construct
1584         the "Select All" menuitem from stock.
1585
1586         * gtk/stock-icons/stock_select_all_{16,24}.png:
1587         * gtk/stock-icons/Makefile.am: 
1588         * gtk/gtkiconfactory.c:
1589         * gtk/gtkstock.h: 
1590         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
1591         Calum Benson)
1592
1593         * gtk/gtktrayicon.c: Add a pointer to the spec.
1594
1595         * gtk/gtkstatusicon-x11.c: Add docs.
1596
1597         * gtk/gtkstatusicon.h: Fix a typo.
1598
1599         Add a cross-platform "tray icon" API, by
1600         porting EggStatusIcon/EggTrayIcon (#105101)
1601         
1602         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
1603         displays an icon in a notification area.
1604
1605         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
1606         X11, using GtkTrayIcon.
1607
1608         * gtk/gtktrayicon.h: 
1609         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
1610         system tray specification, not public API.
1611
1612         * gtk/gtk.symbols: Add new exported functions.
1613
1614         * gtk/gtk.h: Include gtkstatusicon.h.
1615
1616         * gtk/Makefile.am: Add new files.
1617
1618         * tests/Makefile.am:
1619         * tests/teststatusicon.c: Test for GtkStatusIcon.
1620
1621 2005-08-29  Christopher Aillon  <caillon@redhat.com>
1622
1623         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
1624         and GTK_STOCK_DISCONNECT
1625         
1626 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
1627
1628         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
1629         Use XFixesChangeSaveSet if available.  (#314682)
1630
1631         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
1632         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
1633
1634 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
1635
1636         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
1637         accidentally leftover duplicate pixbuf creation.  (#314700,
1638         Kjartan Maraas)
1639
1640         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
1641         leak the cursor theme name.  (#314693, Kjartan Maraas)
1642
1643         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
1644         state.children in all cases.  (#313862, Kjartan Maraas)
1645
1646 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
1647
1648         * po/POTFILES.in, po-properties/POTFILES.in:
1649         Add gdk/gdkscreen.c
1650
1651 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
1652
1653         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
1654         value of the ui property. (#314532, Yong Wang)
1655
1656         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
1657         when G_MAXLONG is passed as length.  
1658
1659 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
1660
1661         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
1662         to avoid overloading --force.  (JP Rosevaar)
1663
1664 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
1665
1666         * configure.in: Bump version to 2.9.0
1667
1668         * gdk/gdk.symbols: 
1669         * gdk/gdkscreen.h: 
1670         * gdk/gdkscreen.c: Make the GdkScreen font options api
1671         public, and add properties GdkScreen::font-options and
1672         GdkScreen::resolution.  (#314004)
1673
1674         * gdk/gdkpango.c:
1675         * gtk/gtksettings.c:
1676         * gtk/gtkwidget.c: Adjust all callers.
1677         
1678         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
1679         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
1680         * gdk/gdkscreen.c: Include gdkintl.h.
1681
1682         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
1683         variable warning, pointed out by Colin Walters. (#314585)
1684
1685 2005-08-26  Tor Lillqvist  <tml@novell.com>
1686
1687         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
1688         printouts.
1689         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
1690
1691 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
1692
1693         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
1694         of week_start.  (#314473, JP Rosevaar)
1695
1696 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
1697
1698         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
1699         lock.  (#314533, Thomas Fitzsimmons)
1700
1701 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
1702
1703         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
1704         NULL gracefully.  (#314523, Ed Catmur)
1705
1706 2005-08-25  Owen Taylor  <otaylor@redhat.com>
1707
1708         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
1709         Handle theme == NULL.
1710
1711 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
1712
1713         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
1714         y offset into account when positioning the popup.  (#314470,
1715         Christian Persch)
1716
1717 2005-08-25  Owen Taylor  <otaylor@redhat.com>
1718
1719         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
1720         as instance_init, not base_init! (#314452, Fix from Frederic
1721         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
1722         rather than 1 for a negative flag value.
1723
1724 2005-08-24  Owen Taylor  <otaylor@redhat.com>
1725
1726         * gdk/gdkpango.c (draw_error_underline): Add a note about
1727         cut-and-paste between here and Pango.
1728
1729 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1730
1731         * === Released 2.8.2 ===
1732
1733         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
1734         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
1735         Wielaard)
1736
1737         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
1738         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
1739         Sebastien Bacher)
1740         
1741         * NEWS: Updates
1742
1743         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
1744         and cursor settings get propagated down to the screen initially.
1745         Pointed out by Frederic Crozat.
1746
1747         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
1748         message if the screen is NULL. Noticed by Kjartan Maraas.
1749
1750 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1751
1752         * Bump version
1753
1754         * === Released 2.8.1 ===
1755
1756         * NEWS: Updates
1757         
1758 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
1759
1760         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
1761         against lazy filterers which return values other than TRUE or
1762         FALSE from their visible func.  (#314335)
1763
1764 2005-08-23  Owen Taylor  <otaylor@redhat.com>
1765
1766         Fix for #314004, reported by Michael Reinsch:
1767
1768         * gdk/gdk.symbols:
1769         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
1770         Add gdk_screen_get/set_resolution_libgtk_only()
1771
1772         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
1773         the options for the screen on the newly created context.
1774
1775         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
1776         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
1777         the font options on the screen.
1778
1779         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
1780         the font options from the screen and set them on the context.
1781
1782 2005-08-23  Kristian Rietveld  <kris@gtk.org>
1783
1784         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
1785         bother inserting new rows in a level with a zero refcount and
1786         immediately free the level. (Fixes #312350, reported by Markku Vire).
1787
1788 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
1789
1790         * gtk/updateiconcache.c: Complain when there is no index.theme file
1791         in the specified directory, unless --force is used. Also add an
1792         --index-only option to create caches without image data.
1793
1794         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
1795         C99ism.  (#314262, Robert Jeff Mitchell)
1796         
1797 2005-08-22  Manish Singh  <yosh@gimp.org>
1798
1799         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
1800
1801         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
1802
1803 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
1804
1805         * gtk/gtkwindow.c (gtk_window_client_event): 
1806         * gtk/gtkicontheme.c (ensure_valid_themes) 
1807         (_gtk_icon_theme_check_reload): Implement a clientmessage based
1808         scheme for makeing sure that all GTK+ applications notice if an
1809         icon theme has been updated. This should prevent multiple versions
1810         of an icon theme cache to be mapped in memory at the same time,
1811         which can cause excessive memory consumption.  (#313156, Chris 
1812         Lahey)
1813
1814 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
1815
1816         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
1817         regarding icon theme changes.
1818
1819         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
1820         pixbufs which are backed by the mmapped memory of an icon cache,
1821         increase the refcount of the icon cache, so that the memory is not
1822         munmapped away underneath the pixbuf upon icon theme changes.  
1823         (#314170, Kjartan Maraas)
1824
1825         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
1826         to link against Xext.  (#314062)
1827
1828         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
1829         overruns.  (#314081, Hans Breuer)
1830
1831 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
1832
1833         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
1834         returned layout must not be modified.
1835
1836 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
1837
1838         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
1839         scroll_to_path if the model changes.
1840
1841         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
1842         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
1843         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
1844         we're realized, #312798
1845         (gtk_icon_view_set_model): clear scroll_to_path if the model
1846         changes.
1847
1848 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
1849
1850         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
1851         (gtk_range_adjustment_value_changed):  Don't queue a draw
1852         if the layout has not changed.  (#313991, Benjamin Berg)
1853
1854 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
1855
1856         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
1857         Benoit Carpentier)
1858
1859         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
1860         Fix a typo. 
1861
1862         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
1863         (model_add_special, model_add_special, model_add_volumes):
1864         Handle pixbuf being NULL without warnings. Also, don't
1865         leak pixbuf references when the icon theme is changed.
1866
1867         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
1868         the user data on destroyed windows, since at best
1869         it can be a stale pointer.  (#313953, Robin Green)      
1870
1871 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
1872
1873         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
1874         (#313900, Sebastien Bacher)
1875
1876         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
1877         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
1878
1879         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
1880         (xdnd_read_actions, get_client_window_at_coords_recurse): 
1881         Free data returned from XGetWindowProperty. 
1882
1883         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
1884         Free data returned from XGetWindowProperty.  (313867, Kjartan
1885         Maraas)
1886         
1887         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
1888         children in all cases.  (#313862, Kjartan Maraas)
1889
1890         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
1891         in the per-directory hash, even if they come from the icon cache. 
1892         We tried to avoid that before, but as a result leaked icon data
1893         structs.  (#313852, Kjartan Maraas)
1894
1895 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
1896
1897         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
1898         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
1899
1900 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1901
1902         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
1903         files for x11/xext. (Jonas Bonn)
1904
1905 2005-08-15  Tor Lillqvist  <tml@novell.com>
1906
1907         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
1908         inside GTK_NOTE.
1909
1910 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1911
1912         * configure.in: Fix have_base_pc / have_base_x_pc typo.
1913
1914         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
1915         (#313417, James Andrewartha)
1916
1917         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
1918         FcNameConstant(). (More of #313417)
1919
1920 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1921
1922         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
1923         modal dialogs, make sure to inherit the window group from 
1924         the parent, since we don't inherit window groups across
1925         transient parents currently.  (#312918, Christian Persch)
1926
1927         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
1928         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
1929
1930         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
1931         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
1932         gracefully.  (#312796, Jonathan Blandford)
1933
1934         * tests/testtoolbar.c: Add some more tests for menu placement.
1935
1936         * gtk/gtkmenutoolbutton.c (menu_position_func): 
1937         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
1938         of toolbutton menus and of the overflow menu.  (#312937, 
1939         #153870, Christian Persch, Paolo Borelli)
1940
1941 2005-08-15  Tor Lillqvist  <tml@novell.com>
1942
1943         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
1944         the nonportable <libgen.h> and dirname().
1945
1946 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
1947
1948         * gtk/gtksizegroup.c: Use object data to mark widgets and
1949         groups as visited, so that we avoid constant extra list
1950         traversals. Also allocate quarks in class_init.  (#311618,
1951         Michael Natterer)
1952
1953         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
1954         download location for the hicolor icon theme. (#313475, Olexiy 
1955         Avramchenko)
1956
1957         * gtk/gtkicontheme.c: Remove debug spew. 
1958
1959 2005-08-15  Owen Taylor  <otaylor@redhat.com>
1960
1961         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
1962         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
1963         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
1964         Handle pixmap == NULL when checking for a colormap.
1965         (Allin Cottrell).
1966
1967 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
1968
1969         * gtk/updateiconcache.c: Store only one copy of the pixel data
1970         for symlinked icons. To achieve this, maintain a hashtable 
1971         mapping pathnames to pixel data, and share the pixel data for
1972         all symlinks resolving to the same pathname. When writing out
1973         the image data, write out the pixel data only the first time
1974         it is met, and store the offset pointing to the first copy
1975         for use in all later cases.
1976         This reduces the size of the Bluecurve icon cache from 40
1977         to 13MB. (#312972)
1978