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