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