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