]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Lazily populate the menu when creating it and after the manager emits the
[~andy/gtk] / ChangeLog.pre-2-10
1 2006-08-03  Emmanuele Bassi  <ebassi@gnome.org>
2
3         * gtk/gtkrecentchoosermenu.c:
4         (set_recent_managet), (gtk_recent_chooser_menu_populate),
5         (idle_populate_func), (idle_populate_clean_up),
6         (manager_changed_cb): Lazily populate the menu when creating
7         it and after the manager emits the "changed" signal; this
8         fixes the initial bad placing of the GtkRecentChooserMenu
9         widget when its set as the menu of a GtkMenuToolButton.
10
11         (gtk_recent_chooser_menu_map),
12         (gtk_recent_chooser_menu_class_init): Remove the ::map method
13         override, since it's not needed anymore.
14
15 2006-08-03  Michael Natterer  <mitch@imendio.com>
16
17         * gtk/gtkrc.c (gtk_rc_parse_assignment): reset scanner config to
18         default values while checking if an expression(foobar) follows,
19         because if no expression follows the scanner's "next token" must
20         be usable for the caller of this function (fixes bug #349552).
21
22 2006-08-03  Michael Natterer  <mitch@imendio.com>
23
24         * gtk/gtkstyle.c: removed the "widget &&" part from
25         "widget && GTK_IS_FOO (widget)" checks.
26
27 2006-07-13  Michael Emmel  <mike.emmel@gmail.com>
28
29         * gdk/directfb/gdkwindow-directfb.c
30         Remove unused call to GetPosition 
31
32 2006-07-31  Richard Hult  <richard@imendio.com>
33
34         * gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_draw_drawable):
35         * gdk/quartz/gdkwindow-quartz.c:
36         (gdk_window_impl_quartz_begin_paint_region): Patch from Erik van
37         Pienbroek to implement drawing bg_pixmaps (#348145).
38
39 2006-07-29  Richard Hult  <richard@imendio.com>
40
41         * gdk/quartz/gdkcolor-quartz.c (gdk_colormap_alloc_colors): Always
42         set success to TRUE.
43         (gdk_color_change): Implement.
44
45         * gdk/quartz/GdkQuartzWindow.c
46         ([GdkQuartzWindow -canBecomeKeyWindow]): Add comment.
47
48         * gdk/quartz/gdkevents-quartz.c (gdk_screen_get_setting): Make the
49         default font a bit smaller until we have made this get the system
50         setting.
51
52         * gdk/quartz/gdkwindow-quartz.c (gdk_window_set_type_hint): Enable
53         shadows for the right window types.
54
55         * gdk/quartz/gdkprivate-quartz.h:
56         * gdk/quartz/gdkgc-quartz.c:
57         * gdk/quartz/gdkdrawable-quartz.c:
58         * gdk/quartz/gdkcolor-quartz.c: Expose the CGContext functions,
59         update callers.
60
61         * gdk/quartz/gdkmain-quartz.c: (_gdk_windowing_init): No need to
62         get the current process ID, use the right constant instead.
63
64 2006-07-28  Emmanuele Bassi  <ebassi@gnome.org>
65
66         * gtk/gtkrecentmanager.c (gtk_recent_manager_init): Add the
67         timeout for polling the file; change the default polling
68         delta to 2000 msec.
69
70 2006-07-27  Michael Natterer  <mitch@imendio.com>
71
72         * gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): cast the
73         return value of XGetWindowProperty() correctly so we don't return
74         garbage type hints. Pointed out by Tommi Komulainen, patch taken
75         from https://maemo.org/bugzilla/show_bug.cgi?id=724
76
77 2006-07-27  Matthias Clasen  <mclasen@redhat.com>
78
79         * gtk/gtksettings.c (gtk_settings_finalize): Move the
80         _gtk_rc_context_destroy call to the right spot.  (#348096,
81         Chris Wilson)
82
83 2006-07-24  Richard Hult  <richard@imendio.com>
84
85         * gdk/quartz/gdkevents-quartz.c (gdk_screen_get_setting): Implement
86         getting the double click threshold.
87
88 2006-07-24  Richard Hult  <richard@imendio.com>
89
90         * gdk/quartz/gdkwindow-quartz.c (gdk_window_set_type_hint): Set the
91         window level depending on the type hint.
92
93         * gdk/quartz/gdkevents-quartz.c (gdk_keyboard_grab,
94         pointer_ungrab_internal): Only break the grab if the new window is
95         a different one.
96         (gdk_event_translate): Catch the case where the entire app loses 
97         focus and break any grabs. Only do implicit grabs when the event
98         mask has both press and release.
99
100         * gdk/quartz/gdkkeys-quartz.c (translate_keysym):
101         * gdk/quartz/gdkselection-quartz.c:
102
103         * gdk/quartz/GdkQuartzWindow.c
104         ([GdkQuartzWindow -windowDidResignKey:]): Use this to update the
105         focus window instead of resignMain, fixes the case where other apps
106         uses focus follows mouse (like the terminal can).
107
108 2006-07-23  Matthias Clasen  <mclasen@redhat.com>
109
110         * configure.in: Bump version
111         
112         * === Released 2.10.1 ===
113
114         *  NEWS: Updates
115
116         * gtk/gtkstyle.c (gtk_default_draw_box_gap): Draw
117         gaps on the left/right properly.  (#348134, Benjamin Otte)
118
119         * gtk/gtkprintsettings.c (gtk_print_settings_get_page_ranges):
120         Fix a memory leak.  (#348424, Carlos Garcia Campos)
121
122 2006-07-21  Matthias Clasen  <mclasen@redhat.com>
123
124         * gtk/gtkrc.h:
125         * gtk/gtkrc.c (_gtk_rc_context_destroy): New function to
126         destroy an rc context.
127
128         * gtk/gtksettings.c (gtk_settings_finalize): Destroy the rc context.
129         (gtk_settings_get_for_screen): Unref the settings when the screen
130         goes away. (#348096, Chris Wilson)
131
132 2006-07-21  Richard Hult  <richard@imendio.com>
133
134         * gdk/quartz/gdkgc-quartz.c: (gdk_quartz_gc_get_values),
135         (gdk_quartz_gc_set_values), (_gdk_windowing_gc_copy),
136         (gdk_gc_get_screen): Implement.
137
138         * gdk/quartz/gdkwindow-quartz.c: (gdk_window_set_back_pixmap):
139         Implement.
140
141 2006-07-21  Matthias Clasen  <mclasen@redhat.com>
142
143         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_get_preedit_string): 
144         0-terminate outbuf in all cases.  (#348227, Nguyen Thái Ngoc Duy)
145
146 2006-07-21  Michael Natterer  <mitch@imendio.com>
147
148         Enable symbolic colors and color expressions in style
149         properties. Fixes bug #346751.
150
151         * gtk/gtkrc.c (rc_parse_token_or_compound): add GtkRcStyle
152         parameter and replace symbolic colors by color constants.
153
154         (gtk_rc_parse_assignment): likewise. Also support parsing of
155         expressions of the form identifier(compound).
156
157         (gtk_rc_parse_style): pass the GtkRcStyle to
158         gtk_rc_parse_assignment().
159
160         (gtk_rc_parse_statement): pass NULL since we don't have a
161         GtkRcStyle here.
162
163 2006-07-21  Michael Natterer  <mitch@imendio.com>
164
165         * gtk/gtkentrycompletion.c (gtk_entry_completion_finalize):
166         remove accidential 2nd parameter to g_object_unref().
167
168 2006-07-21  Matthias Clasen  <mclasen@redhat.com>
169
170         * gtk/gtkentrycompletion.c (gtk_entry_completion_finalize):
171         Don't leak the action_view.  (#348120, Chris Wilson)
172
173         * gtk/gtknotebook.c (gtk_notebook_paint): Improve drawing
174         of tabs while reordering.  (#348115, Benjamin Otte)
175
176         * gtk/gtkiconview.c (gtk_icon_view_destroy): Don't
177         leak the adjustments.  (#348094, Chris Wilson)
178
179         * gtk/gtknotebook.c (gtk_notebook_stop_reorder): Unset
180         the during_reorder flag.  (#348049, Sven Herzberg, patch
181         by Benjamin Otte)
182
183 2006-07-20  Matthias Clasen  <mclasen@redhat.com>
184
185         * gtk/gtkmenu.c (gtk_menu_destroy): Just remove the scroll
186         timeout here, don't access settings.  (#348095, Chris Wilson)
187
188         * gtk/gtktextlayout.c (gtk_text_layout_set_contexts): Fix
189         messed up refcounting.  (#348090, Chris Wilson)
190
191         * gtk/gtkicontheme.h: 
192         * gtk/gtkicontheme.c (_gtk_icon_theme_ensure_builtin_cache): 
193         Export this privately.
194
195         * gtk/gtkiconfactory.c (render_fallback_image): And call it
196         here to initialize the builtin cache before using it.  (#348063,
197         Diego Pettenò)
198
199 2006-07-19  Federico Mena Quintero  <federico@novell.com>
200
201         * tests/autotestfilechooser.c (test_black_box): Argh, initialize
202         "passed"!
203         (set_filename_timeout_cb): Renamed from timeout_cb().
204         (test_confirm_overwrite): New function, test confirmation before
205         overwriting a file in SAVE mode.
206
207 2006-07-20  Michael Natterer  <mitch@imendio.com>
208
209         * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_finalize):
210         fix typo to make it compile again.
211
212 2006-07-20  Emmanuele Bassi  <ebassi@gnome.org>
213
214         * gtk/gtkrecentchoosermenu.c:
215         (gtk_recent_chooser_menu_finalize): Correctly chain up the
216         finalization vfunc. (#348089, Chris Wilson)
217
218 2006-07-20  Richard Hult  <richard@imendio.com>
219
220         * gdk/quartz/gdkevents-quartz.c: (generate_grab_broken_event):
221         Append the event to the queue instead of using gdk_event_put.
222         (_gdk_quartz_get_mouse_window, find_current_keyboard_window):
223         Handle grabs.
224         (get_event_mask_from_ns_event, create_focus_event)
225         (convert_window_coordinates_to_root, find_window_for_event)
226         (gdk_event_translate): Improve readability (style changes).
227         (gdk_flush, gdk_display_sync, gdk_display_flush)
228         (gdk_event_send_client_message_for_display),
229         (gdk_screen_broadcast_client_message): Remove FIXMEs.   
230         (gdk_screen_get_setting): Reindent.
231         Also move find_child_window_by_point to gdkwindow-quartz.c.
232         
233         * gdk/quartz/gdkwindow-quartz.c:
234         (find_child_window_by_point_helper),
235         (_gdk_quartz_find_child_window_by_point): Move here from 
236         gdkevents-quartz.c
237         (_gdk_windowing_window_get_pointer): Handle destroyed windows and
238         imlement the return value.
239         (_gdk_windowing_window_at_pointer): Implement.
240
241 2006-07-19  Richard Hult  <richard@imendio.com>
242
243         * gtk/gtkdnd-quartz.c (register_types): Reindent.
244         
245         * gtk/gtkclipboard-quartz.c (gtk_clipboard_set_contents): Add
246         autorelease pool.
247
248 2006-07-19  Richard Hult  <richard@imendio.com>
249
250         * gdk/quartz/GdkQuartzWindow.c
251         ([GdkQuartzWindow -windowDidResignMain:]):
252         * gdk/quartz/gdkevents-quartz.c (_gdk_quartz_update_focus_window):
253         Listen to windowDidResignMain notifications and properly update the
254         focus window when windows are unfocused.
255
256 2006-07-19  Kristian Rietveld  <kris@imendio.com>
257
258         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_init),
259         (gtk_cell_renderer_text_[gs]et_property), (get_layout): add
260         align_set field to keep track whether the align property was
261         set by the user, if not we will use the alignment by looking
262         at the direction of the widget. (#157439)
263
264 2006-07-19  Matthias Clasen  <mclasen@redhat.com>
265
266         * modules/printbackends/file/gtkprintbackendfile.c 
267         (file_printer_get_settings_from_options): Check if option
268         is NULL before using it.  (#348014, Christian Persch)
269
270         * gdk/x11/gdkx.h (gdk_font_lookup_for_display): When looking
271         up a font XID, add the XID_FONT_BIT.  (#348001)
272
273 2006-07-19  Richard Hult  <richard@imendio.com>
274
275         * gdk/quartz/GdkQuartzView.c ([GdkQuartzView -drawRect:]):
276         * gdk/quartz/gdkpixmap-quartz.c (gdk_pixmap_new): Remove unused
277         variables to fix compiler warnings.
278
279 2006-07-19  Richard Hult  <richard@imendio.com>
280
281         * gdk/quartz/gdkwindow-quartz.c (gdk_window_impl_quartz_init)
282         (gdk_window_set_type_hint, gdk_window_get_type_hint):
283         * gdk/quartz/GdkQuartzWindow.c
284         ([GdkQuartzWindow -canBecomeMainWindow])
285         ([GdkQuartzWindow -canBecomeKeyWindow]): Implement type hints and
286         use them to determine which windows should be allowed to become
287         main and key windows.
288
289 2006-07-19  Richard Hult  <richard@imendio.com>
290
291         * gdk/quartz/gdkwindow-quartz.c:
292         (_gdk_windowing_window_get_pointer): Get the position correctly
293         for the root window. Fixes bug #347976, patch by Dave Vasilevsky.
294
295 2006-07-18  Matthias Clasen  <mclasen@redhat.com>
296
297         * NEWS: Updates
298
299         * gtk/gtkdnd.c: Make the ipc widgets GtkWindows instead
300         of GtkInvisibles, and put them in the same window group
301         as the drag source, to avoid interactions between DND
302         and window groups.  (#347277, Michael Wu, analysis by
303         Owen Taylor)
304
305 2006-07-18  John (J5) Palmieri  <johnp@redhat.com>
306
307         * modules/printbackends/cups/gtkprintbackendcups.c:
308         Make bits from my last commit are conditionally compiled
309         only if cups 1.2 is available. 
310
311 2006-07-18  John (J5) Palmieri  <johnp@redhat.com>
312
313         * gtk/gtkprinteroption.h:
314         * gtk/gtkprinteroptionwidget.c:
315         * modules/printbackends/cups/gtkprintbackendcups.c:
316         add GTK_PRINTER_OPTION_TYPE_PICKONE_PASSWORD,
317         GTK_PRINTER_OPTION_TYPE_PICKONE_PASSCODE,
318         GTK_PRINTER_OPTION_TYPE_PICKONE_REAL,
319         GTK_PRINTER_OPTION_TYPE_PICKONE_INT,
320         and GTK_PRINTER_OPTION_TYPE_PICKONE_STRING options to support a subset
321         of the new CUPS 1.2 custom options spec
322
323 2006-07-18  Federico Mena Quintero  <federico@novell.com>
324
325         Fix https://bugzilla.novell.com/show_bug.cgi?id=184875 - make the
326         location entry in Save mode preserve the stuff from
327         set_filename(); it was overwriting it with $cwd.
328
329         This is the same fix for
330         http://bugzilla.gnome.org/show_bug.cgi?id=347066
331
332         * tests/autotestfilechooser.c: (test_black_box): Added black-box
333         test for set_filename() and set_current_name().
334
335         * gtk/gtkfilechooser.c (gtk_file_chooser_get_type): Cast to
336         GClassInitFunc in the call to g_type_register_static_simple(), to
337         avoid a compiler warning.
338
339         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
340         Added a browse_files_last_selected_name field.  We'll copy the
341         logic from gtkfilesel.c to see when to clear the location entry.
342         (struct _GtkFileChooserDefault): Removed the
343         processing_pending_selections field.
344
345         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_finalize):
346         Free impl->browse_files_last_selected_name.
347         (pending_select_paths_process): Don't use
348         impl->processing_pending_selections.
349         (update_chooser_entry): Keep track of the name that was last
350         selected in the file list.  We use this to know when to clear the
351         location entry.  The logic is similar to that of
352         gtkfilesel.c:gtk_file_selection_file_changed().  This also lets us
353         get rid of the processing_pending_selections flag.
354         (update_chooser_entry): Clear the entry if we didn't have a
355         selection before.
356         (location_switch_to_filename_entry): Do not set $cwd as the
357         contents of the location entry here...
358         (location_popup_handler): ... but do it here instead, only as the
359         result of the user asking to turn on the location entry.
360         (gtk_file_chooser_default_get_paths): If the location entry is
361         empty, do the fallback of seeing if it is sensible to say that
362         $cwd is the selected path.
363         (gtk_file_chooser_default_update_current_folder): Don't set the
364         text of the location entry; this is no longer needed with the
365         fixes above.
366         (shortcuts_activate_iter): Clear the location entry when
367         activating a shortcut if we are not in SAVE mode.  This keeps the
368         contents of the location entry consistent even when switching
369         folders via the shortcuts.
370
371 2006-07-18  Michael Natterer  <mitch@imendio.com>
372
373         * gtk/gtkrange.c: remember the sensitivity of the steppers in
374         GtkRangeLayout, update it in gtk_range_calc_layout() and check for
375         changes in layout_changed(), so adjustment changes that leave the
376         slider position unchanged are still able to update the steppers'
377         sensitivity. Fixes bug #347902.
378
379 2006-07-18  Kristian Rietveld  <kris@imendio.com>
380
381         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing):
382         oooops.
383
384 2006-07-18  Kristian Rietveld  <kris@imendio.com>
385
386         Fix for #335012, reported by Matteo Nastasi.
387
388         * gtk/gtktreeview.c (gtk_tree_view_real_start_editing): if the
389         requested space of the editable is smaller than the cell area,
390         put it up above the middle of the cell area.
391
392         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing):
393         configure the inner border to cover the cell area if the 
394         entry requisition is smaller than the cell_area.
395
396 2006-07-18  Kristian Rietveld  <kris@imendio.com>
397
398         Another fix for #164884.
399
400         * gtk/gtktreeprivate.h: add in_grab field.
401
402         * gtk/gtktreeview.c (gtk_tree_view_button_press): only save press
403         to possibly begin a drag when there's no grab pending,
404         (gtk_tree_view_grab_notify): toggle in_grab field.
405
406 2006-07-18  Kristian Rietveld  <kris@imendio.com>
407
408         * gtk/gtktreeview.c (gtk_tree_view_realize): use MAX
409         priv->width, alloc.width when allocating the bin_window,
410         (gtk_tree_view_bin_expose): don't overrun bin_window when drawing
411         the flat box.
412
413 2006-07-17  Richard Hult  <richard@imendio.com>
414
415         * gtk/gtkdnd-quartz.c: (gtk_drag_begin_internal): Set an empty
416         NSImage if there is none, covers the cases where applications try
417         to set a pixmap which is not supported by the quartz backend.
418
419 2006-07-17  Richard Hult  <richard@imendio.com>
420
421         * gdk/quartz/gdkevents-quartz.c: (create_key_event):
422         * gdk/quartz/gdkkeys-quartz.c: (_gdk_quartz_key_event_type),
423         (_gdk_quartz_key_is_modifier):
424         * gdk/quartz/gdkprivate-quartz.h: Fill in string, length and
425         is_modifier for key events. Map some more keys into gdk keyvals.
426
427 2006-07-17  Matthias Clasen  <mclasen@redhat.com>
428
429         * gtk/gtknotebook.c (gtk_notebook_stop_reorder): Don't undo
430         reordering if we haven't been reordering.  (#346836, Ed Catmur)
431
432 2006-07-17  Richard Hult  <richard@imendio.com>
433
434         * gdk/quartz/gdkkeys-quartz.c: Add escape to the list of special
435         keys, to get the escape key working.
436
437 2006-07-17  Richard Hult  <richard@imendio.com>
438
439         * gdk/quartz/gdkdisplay-quartz.c (gdk_display_open): Initialize
440         GdkInput.
441         
442 2006-07-17  Kristian Rietveld  <kris@imendio.com>
443
444         * gtk/gtktreeview.c (gtk_tree_view_build_tree): check if the iter
445         still has children after running the test-expand-row func,
446         (gtk_tree_view_real_expand_row): ditto. (#302127, Billy Biggs).
447
448 2006-07-17  Michael Natterer  <mitch@imendio.com>
449
450         * gtk/gtkcalendar.c (calendar_timer): use 5 * gtk-timeout-repeat,
451         just as many other widgets. Makes the calendar arrow buttons
452         usable for quick month/year skipping (#142582).
453
454 2006-07-17  Richard Hult  <richard@imendio.com>
455
456         * gdk/quartz/gdkwindow-quartz.c:
457         (_gdk_windowing_window_destroy_foreign): Fix comment.
458         (gdk_window_set_title): Surround by release pool macros.
459         (gdk_window_get_type_hint): Fix return value.
460         (gdk_window_get_frame_extents): Implement.
461         (gdk_window_iconify): Use the release pool macros.
462         (gdk_window_deiconify): Likewise. 
463         (_gdk_windowing_get_pointer): Implement.
464         (gdk_window_get_deskrelative_origin, gdk_window_get_root_origin): 
465         Implement.
466
467         * gdk/quartz/gdkevents-quartz.c (create_crossing_event) 
468         (create_scroll_event, convert_window_coordinates_to_root): 
469         Set coordinates and root coordinates for crossing and scroll 
470         events.
471
472         * gdk/quartz/gdkcursor-quartz.c (gdk_cursor_new_for_display): 
473         Map some more cursors.
474
475 2006-07-17  Matthias Clasen  <mclasen@redhat.com>
476
477         * gdk/gdkwindow.c (gdk_window_get_pointer): Add some more
478         detail to the docs.  (#311399, Nikos Kouremenos)
479
480         * gtk/gtkentrycompletion.c (gtk_entry_completion_set_match_func): 
481         * gtk/gtkcomboboxentry.c (gtk_combo_box_entry_set_text_column): 
482         Fix typos in the docs.
483
484 2006-07-16  Matthias Clasen  <mclasen@redhat.com>
485
486         * gtk/gtkassistant.c: Some small documentation
487         fixups.  (#347711, Guillaume Cottenceau)
488
489         * gtk/gtkfilechooserdefault.c (browse_widgets_create): Mark
490         the text of the location label as translatable.  
491
492         * gtk/gtkprintjob.c (gtk_print_job_send): Fix a typo in 
493         the docs.  (#347211, Kouhei Sutou)   
494
495         * configure.in: Make the test for the sync extension
496         more robust.  (#347315, Tommi Komulainen)
497
498 2006-07-13  Michael Emmel  <mike.emmel@gmail.com>
499
500         * gdk/directfb/gdkdrawable-directfb.c
501         Remove +1 in fill and draw rect this may be wrong.
502         Commented out update calls left for reference the should not be needed.
503         Comment out subsurface for cairo remove when proved its not needed
504         * gdk/directfb/gdkkeys-directfb.c
505         Allow multiple calls and return if initalized
506         * gdk/directfb/gdkmain-directfb.c
507         Make sure string is malloced since its freed by apps
508         * gdk/directfb/gdkprivate-directfb.c
509         Added back pointer to window for paintable impl
510         * gdk/directfb/gdkvisual-directfb.c
511         Fix for Bug 346733 make sure visual list is populated
512         * gdk/directfb/gdkwindow-directfb.c
513         Finally removed uneeded pixmap buffering now implements GdkPainter
514
515 2006-07-11  Emmanuele Bassi  <ebassi@gnome.org>
516
517         * gtk/gtkrecentchooser.c (gtk_recent_chooser_set_show_numbers),
518         (gtk_recent_chooser_get_show_numbers): Check if the chooser
519         implementation supports the "show-number" property and use a
520         meaningful warning in case it doesn't; tell developers not to
521         use these functions.
522
523 2006-07-10  Matthias Clasen  <mclasen@redhat.com>
524
525         * gtk/gtkaction.c:
526         * gtk/gtkiconview.c:
527         * gtk/gtkprintbackend.c:
528         * gtk/gtkprintoperation-unix.c:
529         * gtk/gtkscrolledwindow.c:
530         * gtk/gtktoolbar.c: Fix some typos with inline property
531         docs.  (#347065, John Finlay)
532
533         * gtk/gtkfilechooserbutton.c: Fix some memory handling
534         issues.  (#347043, Chris Wilson)
535
536 2006-07-10  Emmanuele Bassi  <ebassi@gnome.org>
537
538         * gtk/gtkrecentchooserdefault.c (scan_for_uri_cb): Do not
539         leak the URI returned by the model; select the row when
540         calling gtk_recent_chooser_set_current_uri(). (patch by
541         Torsten Schoenfeld)
542
543 2006-07-10  Matthias Clasen  <mclasen@redhat.com>
544
545         * gtk/gtkpapersize.c (gtk_paper_size_is_equal): Fix a 
546         typo in the docs.  (#347041, Kouhei Sutou)
547
548         * gtk/gtkprintcontext.c (gtk_print_context_get_height): Fix
549         a typo in the docs.  (#347032, Kouhei Sutou)
550
551         * gtk/gtkassistant.c (gtk_assistant_focus): Don't assume
552         that priv->current_page is non-NULL.  (#347048, Guillaume 
553         Cottenceau)
554
555         * gtk/gtk.symbols: Add some missing deprecation guards.
556
557         * gdk/directfb/gdkwindow-directfb.c: Don't confuse gtk-doc.
558
559 2006-07-10  Richard Hult  <richard@imendio.com>
560
561         * gdk/quartz/gdkpixmap-quartz.c: (gdk_bitmap_create_from_data): 
562         Account for alignment when reading xbm data. (#346721, patch
563         by Dave Vasilevsky)
564
565 2006-07-09  Richard Hult  <richard@imendio.com>
566
567         * gdk/quartz/gdkgeometry-quartz.c:
568         * gdk/quartz/gdkmain-quartz.c:
569         * gdk/quartz/gdkpixmap-quartz.c:
570         * gdk/quartz/gdkwindow-quartz.c:
571         * gtk/gtkclipboard-quartz.c: Implement some more stubs for pygtk, 
572         bug #346713.
573
574 2006-07-09  Richard Hult  <richard@imendio.com>
575
576         * gdk/quartz/gdkwindow-quartz.c (gdk_window_new): Release the pool
577         in all cases.
578         (move_resize_window_internal): Surround by alloc/release pool.
579         Patch from Brian Tarricone, fixes bug #347018.
580
581 2006-07-08  Matthias Clasen  <mclasen@redhat.com>
582
583         * gtk/gtkfilechooserbutton.c (update_label_and_image): Don't
584         leak an empty list.  (#346970, Chris Wilson)
585
586 2006-07-08  Behdad Esfahbod  <behdad@gnome.org>
587
588         * gdk/gdkpango.c (layout_iter_get_line_clip_region),
589         (gdk_pango_layout_line_get_clip_region),
590         (gdk_pango_layout_get_clip_region): Fix quadratic implementation of
591         gdk_pango_layout_get_clip_region into a linear one. (#337910, patch
592         by Priit Laes)
593
594 2006-07-07  Richard Hult  <richard@imendio.com>
595
596         * gdk/quartz/gdkevents-quartz.c: Generate a grab broken event when
597         appropriate. Fixes bug #346603, patch from Dave Vasilevsky.
598         
599         * gdk/quartz/gdkevents-quartz.c:
600         * gdk/quartz/gdkkeys-quartz.c:
601         * gdk/quartz/gdkprivate-quartz.c: Another patch from Dave Vasilevsky,
602         fixes bug #346605. Makes modifier key events being sent properly.
603
604 2006-07-07  Michael Natterer  <mitch@imendio.com>
605
606         * gtk/gtkrc.c
607         * gtk/gtksettings.c: fix canonicalization of property names which
608         was broken after recent constant string cleanup.
609
610 2006-07-07  Matthias Clasen  <mclasen@redhat.com>
611
612         * gtk/gtkicontheme.c: Small memory savings.
613
614 2006-07-06  Matthias Clasen  <mclasen@redhat.com>
615
616         * gtk/gtkfilechooserbutton.c: Get the display name
617         for the home directory.  (#346498, Dennis Cranston,
618         patch by Andreas Köhler)
619
620 2006-07-06  Behdad Esfahbod  <behdad@gnome.org>
621
622         * configure.in: Drop required Pango version down to 1.12.0. (#346597)
623
624 2006-07-06  John (J5) Palmieri  <johnp@redhat.com>
625
626         * modules/printbackends/cups/gtkprintbackendcups.c: 
627         (cups_request_printer_list_cb): Get the name of the first printer
628         in a class to use when requesting a PPD
629         (cups_request_ppd_cb, cups_request_ppd): Fix the parameters of
630         the "details-acquired" signal emittion
631         (cups_request_ppd): get the ppd name from the cups printer
632
633         * modules/printbackends/cups/gtkprintercups.c (gtk_printer_cups_get_ppd_name):
634         New method for getting the name of the ppd we should request
635
636 2006-07-06  Michael Natterer  <mitch@imendio.com>
637
638         * gtk/gtkrc.c: added a bunch of utility functions to copy
639         icon_factories and color_hashes between GtkRcStyles and make sure
640         that newly created, duplicated and merged styles have access to
641         all icon_factories and color_hashes they need. Fixes bug #346668.
642
643 2006-07-06  Matthias Clasen  <mclasen@redhat.com>
644
645         * gtk/*.c: Improve the -/_ consistency in signal and
646         property names, reducing the amount of near-duplicate strings.
647
648 2006-07-05  Matthias Clasen  <mclasen@redhat.com>
649
650         * gtk/gtktreeview.c (gtk_tree_view_set_enable_tree_lines): Don't
651         leak dash_list.  (#346639, Christian Persch)
652
653         * gtk/gtkwindow.c (gtk_window_unmap, gtk_window_set_keep_above) 
654         (gtk_window_set_keep_below): Fix some assignments involving
655         booleans.  (#346467, Christian Persch)
656
657 2006-07-03  Matthias Clasen <mclasen@redhat.com>
658
659         * gtk/gtkgamma.c: Use serialized pixbufs instead of xpms.
660         
661 2006-07-03  Runa Bhattacharjee <runabh@gmail.com>
662
663         * configure.in: Added Bengali India (bn_IN) to ALL_LINGUAS.
664
665 2006-06-26  Michael Emmel  <mike.emmel@gmail.com>
666         
667         * gdk/directfb/gdkdirectfb.h: changed ifdef to compile with api introduced
668         in directfb 0.9.25 
669         * gdk/directfb/gdkwindow-directfb.c: changed ifdef to 0.9.25 
670
671 2006-07-03  Matthias Clasen  <mclasen@redhat.com>
672
673         * configure.in: Bump version
674
675 2006-07-02  Matthias Clasen  <mclasen@redhat.com>
676         
677         * === Released 2.10.0 ===
678
679         * gtk/gtkmenubar.c (window_key_press_handler): Treat
680         "" like NULL when parsing the menu-bar-accel setting.   
681         * gtk/gtkmenu.c (gtk_menu_key_press): Here too.  
682         (#346420, Yevgen Muntyan)
683
684         * configure.in: Require cairo 1.2 and GLib 2.12,
685         set version to 2.10
686
687 2006-06-30  Matthias Clasen  <mclasen@redhat.com>
688         
689         * gtk/gtknotebook.c (gtk_notebook_tab_space): Remove
690         redundant assignments to page, which may cause NULL
691         dereferences.  (#346334, Dave Vasilevsky)
692
693         * demos/gtk-demo/editable_cells.c: Portability fix.
694         (#346375, Thomas Klausner)
695
696         * NEWS, README.in, INSTALL.in: Updates
697
698         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize):
699         Don't leak default_sort_data.  (#346341, Christian Weiske)
700
701         * gtk/Makefile.am: Make sure all win32-specific printing
702         sources are distributed.  (#346312, Erik van Pienbroek)
703         
704         * gtk/gtkprinter.c (gtk_enumerate_printers): Always call the
705         destroy notify.  (#346027, Christian Persch)
706
707         * gtk/gtkprintsettings.c (gtk_print_settings_get_page_ranges):
708         Documentation updates.
709
710         * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_set_settings):
711         Don't leak the ranges.  (#346237, Carolyn MacLeod)
712
713         * gtk/gtkprintjob.[hc]: Add a PREVIEW capability to hide
714         the preview button.  (#346113, Christian Persch)
715
716         * gtk/gtkprintunixdialog.c (update_dialog_from_capabilities):
717         Hide the preview button depending on the capability.
718
719         * gtk/gtkprintoperation-unix.c: Set the PREVIEW capability.
720
721 2006-06-29  Bill Skaggs  <weskaggs@primate.ucdavis.edu>
722
723         * gtk/gtkprogress.h: revert last change by Matthias -- it broke the
724         build of gtkprogressbar.
725
726 2006-06-29  Matthias Clasen  <mclasen@redhat.com>
727
728         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Update the 
729         size of the drawable for the root window when the screen size 
730         changes.  (#346102, Sven Herzberg)
731
732 2006-06-29  Matthias Clasen  <mclasen@redhat.com>
733
734         * NEWS: Updates
735
736         * gtk/gtkprintoperation.c: Clarify docs for the allow-async
737         property.  (#346108, Christian Persch)
738
739 2006-06-28  Matthias Clasen  <mclasen@redhat.com>
740
741         * gtk/gtkprinter.c: 
742         * gtk/gtkprintunixdialog.c: 
743         * gtk/gtkprintoperationpreview.c: 
744         * gtk/gtkprintcontext.c (gtk_print_context_set_cairo_context): 
745         * gtk/gtklabel.c (gtk_label_set_line_wrap_mode): 
746         * gtk/gtkentry.c (gtk_entry_new):       
747         * gtk/gtkprintoperation.c (gtk_print_operation_set_custom_tab_label): 
748         * gtk/gtkclipboard.c (gtk_clipboard_wait_for_rich_text): Documentation
749         additions and fixes.
750
751         * gtk/gtkaspectframe.h:
752         * gtk/gtkaboutdialog.c:
753         * gtk/gtkcalendar.c:
754         * gtk/gtkinputdialog.c: 
755         * gtk/gtk.symbols: Remove unnecessary includes.
756         
757         * gtk/gtkprogress.[hc]: 
758         * gtk/gtkitemfactory.[hc]: Don't unnecessarily use GTK_COMPILATION,
759         remove unnecessary includes.
760
761         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Only select the
762         XKB event details we actually care about.  (#346079, Ryan Lortie)
763
764 2006-06-27  Kristian Rietveld  <kris@gtk.org>
765
766         * gtk/gtktreeview.c (gtk_tree_view_set_model): cancel the
767         expand collapse timeout when unsetting the model (Fixes #327164,
768         reported by Daichi Kawahata).
769
770 2006-06-26  Michael Emmel  <mike.emmel@gmail.com>
771         
772         * gdk/directfb/gdkdirectfb.h: added ifdef to compile with directfb 0.9.24 
773         * gdk/directfb/gdkwindow-directfb.c: ifdef depend on directfb cvs 
774
775 2006-06-26  Kristian Rietveld  <kris@gtk.org>
776
777         Make the insert and set functions somewhat more convenient.
778         (#343841, David Necas).
779
780         * gtk/gtkliststore.c (gtk_list_store_insert_with_values): allow
781         a NULL iter,
782         (gtk_list_store_insert_with_valuesv): likewise.
783
784         * gtk/gtktreestore.c (gtk_tree_store_insert_with_values): ditto,
785         (gtk_tree_store_insert_with_valuesv): likewise.
786
787 2006-06-26  Michael Natterer  <mitch@imendio.com>
788
789         * gtk/gtktextview.c (gtk_text_view_size_allocate): revert "keep
790         cursor visible when size changes" since it breaks things (#344874).
791
792 2006-06-26  Matthias Clasen  <mclasen@redhat.com>
793
794         * gtk/gtkcombobox.c (gtk_cell_view_menu_item_new): Avoid
795         a refcounting leak in the python bindings.  (#344876, Phil Dumont)
796
797 2006-06-25  Matthias Clasen  <mclasen@redhat.com>
798
799         * gtk/gtkprinter.c (gtk_enumerate_printers): Make
800         this work when the enumeration is stopped early.  (#344074,
801         Felipe Heidrich)
802
803 2006-06-24  Matthias Clasen  <mclasen@redhat.com>
804
805         * gtk/gtkcombobox.c: Update the height as well
806         when changing fonts.  (#321393, Billy Biggs)
807 `
808 2006-06-23  Christian Rose  <menthos@menthos.com>
809
810         * configure.in: Added "ur" to ALL_LINGUAS.
811
812 2006-06-22  Matthias Clasen  <mclasen@redhat.com>
813
814         Fix #345663, reported by Kazuki Iwamoto
815         
816         * gtk/gtkaction.c: Include gtkiconfactory.h
817
818         * gtk/gtkactiongroup.c: Include gtkicontheme.h
819
820 2006-06-22  Michael Natterer  <mitch@imendio.com>
821
822         * gtk/gtktextview.c (gtk_text_view_size_allocate): keep the cursor
823         visible when the size changes. Fixes bug #344874.
824
825 2006-06-22  Matthias Clasen  <mclasen@redhat.com>
826
827         * gtk/gtkpintjob.h: Add a note about updating the registration.
828         * gtk/gtkprintjob.c (gtk_print_capabilites_get_type): Add missing
829         capabilitites. 
830
831         * modules/printbackends/cups/gtkprintbackendcups.c: Remove
832         an unused variable and make it compile with Cups 1.1.  (#345644,
833         Joseph Sacco)
834
835 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
836
837         * configure.in: Bump version
838         
839         * === Released 2.9.4 ===
840
841         * modules/printbackends/file/gtkprintbackendfile.c: 
842         Apply a patch by Christian Persch to support PostScript and PDF
843         output.
844
845         * gtk/gtkprinteroptionwidget.c (radio_changed_cb): Don't free
846         the value.
847
848 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
849
850         Apply a patch by John Palmieri to use buffered io using
851         GIOChannels, clean up error handling and support Cups 1.2
852         api in the printing code.
853
854         * acconfig.h:
855         * configure.in: Detect Cups 1.2
856
857         * gtk/gtkdebug.h:
858         * gtk/gtkmain.c: Add a printing debug key.
859
860         * gtk/gtkprintbackend.[hc]: Remove the GError parameter from
861         gtk_print_backend_print_stream, and take a  GIOChannel instead
862         of an fd.
863
864         * gtk/gtkprinter-private.h:
865         * gtk/gtkprinter.c: Replace the fd parameter of 
866         _gtk_printer_create_cairo_surface by a GIOChannel.
867
868         * gtk/gtkprintjob.[hc]: Remove the GError parameter from
869         gtk_print_job_send and make it return void.
870
871         * gtk/gtkprintoperation-unix.c:
872         * gtk/gtkprintjob.c: Adjust callers, add some debugging support.
873
874         * modules/printbackends/Makefile.am: Fix DIST_SUBDIRS.
875
876         * modules/printbackends/cups/Makefile.am:
877         * modules/printbackends/lpr/Makefile.am: Add debug CFLAGS.
878         
879         * modules/printbackends/cups/gtkcupsutils.[hc]: 
880         * modules/printbackends/cups/gtkprintbackendcups.c:
881         * modules/printbackends/file/gtkprintbackendfile.c:
882         * modules/printbackends/lpr/gtkprintbackendfile.c: Adapt to
883         the GIOChannel and GError changes, add debug output
884         
885 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
886
887         * gtk/gtkprinter.c (gtk_enumerate_printers): Remove an 
888         unused variable.
889
890         * NEWS: Updates
891
892         * gtk/gtktreeview.c (gtk_tree_view_class_init): Fix the registration
893         of the grid-lines property  (#345456, Murray Cumming) 
894         
895 2006-06-21  Kristian Rietveld  <kris@imendio.com>
896
897         Allocate space for the grid lines when they are enabled.
898
899         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): make sure the cell
900         area does not overlap with the grid lines, also draw the line for
901         "the next cell" in the last loop iteration, make sure the cursor falls
902         in between the grid lines,
903         (validate_row): request extra space for the grid lines.
904
905 2006-06-21  Matthias Clasen  <mclasen@redhat.com>
906
907         * gtk/gtkprintbackend.h: 
908         * gtk/gtkprintbackend.c (gtk_print_backend_print_stream): Add an
909         GError parameter.
910
911         * modules/printbackends/file/gtkprintbackendfile.c 
912         (gtk_print_backend_file_print_stream): 
913         * modules/printbackends/lpr/gtkprintbackendlpr.c 
914         (gtk_print_backend_lpr_print_stream): 
915         * modules/printbackends/cups/gtkprintbackendcups.c 
916         (gtk_print_backend_cups_print_stream): 
917         * gtk/gtkprintjob.c (gtk_print_job_send): Update all callers and
918         implementations.
919
920         * modules/printbackends/cups/gtkprintbackendcups.c: Remove the
921         GError parameter from cups_request_execute(), and various other
922         cleanups.
923
924 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
925
926         * gtk/gtkprintjob.c (gtk_print_job_class_init): Make 
927         track-print-status a property.
928
929 2006-06-20  Murray Cumming  <murrayc@murrayc.com>
930
931         * gtk/gtkprintoperation.c: (gtk_print_operation_class_init): 
932         Correctly register the done signal - it sends an enum, not an int.
933
934 2006-06-20  Christian Persch  <chpe@cvs.gnome.org>
935         
936         * configure.in
937         * gtk/Makefile.am
938         * modules/printbackends/Makefile.am
939         A modules/printbackends/file/.cvsignore
940         A modules/printbackends/file/Makefile.am
941         A modules/printbackends/file/gtkprintbackendfile.c
942         A modules/printbackends/file/gtkprintbackendfile.h
943         R modules/printbackends/pdf/*:
944         Rename "pdf" backend to "file" backend. Step 2 from bug #339592.
945
946 2006-06-20  Christian Persch  <chpe@cvs.gnome.org>
947
948         * gtk/gtkprinteroptionwidget.c: (filesave_changed_cb),
949         (alternative_set), (construct_widgets): Convert input to filename
950         encoding and construct an URI from that.
951         * gtk/gtkprintsettings.h: Add OUTPUT_FILE_FORMAT and OUTPUT_URI keys.
952         * modules/printbackends/pdf/gtkprintbackendpdf.c: Use those defines.
953         Step 1 from bug #339592.
954
955 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
956
957         * gtk/gtkprintjob.c (gtk_print_job_set_source_file): Add to docs.
958
959         Fix handling of stock items without icons in action-based
960         ui.  (#342458, Callum McKenzie)
961         
962         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full): Set
963         the stock id even if there is no icon for it.
964
965         * gtk/gtkaction.c (connect_proxy): 
966         * gtk/gtktoolbutton.c (gtk_tool_button_construct_contents): Only
967         construct a stock icon if the stock item has an icon.
968
969 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
970
971         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_info): Better 
972         fix.
973
974         * gtk/gtk.symbols: 
975         * gtk/gtkprintsettings.h: 
976         * gtk/gtkprintsettings.c: Remove unused print-to-file setting.
977
978 2006-06-20  Carlos Garnacho  <carlosg@gnome.org>
979
980         * gtk/gtknotebook.c (gtk_notebook_stop_reorder): unset the pressed
981         button here.
982         (gtk_notebook_grab_notify): stop reorder when the widget becomes
983         shadowed. Fixes bug #335873
984
985 2006-06-18  Christian Persch  <chpe@cvs.gnome.org>
986
987         * gtk/gtkdialog.c: (gtk_dialog_class_init): Set default action area
988         spacing to HIG-compliant 6px. Bug #345106, follow-up from bug #163850.
989
990 2006-06-20  Matthias Clasen  <mclasen@redhat.com>
991
992         * gtk/gtkiconview.c (gtk_icon_view_enable_model_drag_dest): 
993         Small doc fix.  (#345176, Claudio Saavedra)
994
995         * gdk/x11/gdkwindow-x11.c (gdk_window_set_functions): Update
996         the docs. (#345194, Yevgen Muntyan)
997
998 2006-06-19  Matthias Clasen  <mclasen@redhat.com>
999
1000         * gtk/gtktreeview.c (gtk_tree_view_set_grid_lines): Don't leak
1001         dash_list.
1002         (gtk_tree_view_set_column_drag_info): Don't crash if the 
1003         column_drop_func says always no.  (#344850, Christian Weiske)
1004         
1005         Make transparent tray icons work.  (#320034, based on a 
1006         patch by Dan Winship)
1007         
1008         * gtk/gtktrayicon-x11.c (gtk_tray_icon_init): Make trayicons
1009         app-paintable and non-double buffered. 
1010
1011         * gtk/gtkrc.c (_gtk_rc_init): Give tray icons a parent-relative
1012         background in the default style.
1013
1014 2006-06-19  Matthias Clasen  <mclasen@redhat.com>
1015
1016         * gtk/updateiconcache.c: Marks strings for translation.  (#314278,
1017         Claudio Saavedra)
1018
1019         * gtk/gtkentrycompletion.c (gtk_entry_completion_compute_prefix): Don't
1020         call g_str_has_prefix on a NULL strung.  (#344897, Tommi Komulainen)
1021
1022         * gtk/gtkfilechooserdefault.c: 
1023         Avoid a near-duplicate string and add some
1024         translator comments.  (#345320, #345321, Hendrik Richter)
1025
1026 2006-06-19  Federico Mena Quintero  <federico@novell.com>
1027
1028         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder)
1029         (gtk_file_chooser_get_current_folder_uri): Clarify the use of
1030         these functions, to avoid the case where a chooser is in
1031         SELECT_FOLDER mode and people mistakenly use _get_current_folder()
1032         to get the selection:  they should use _get_filename() instead.
1033
1034 2006-06-19  Alexander Larsson  <alexl@redhat.com>
1035
1036         * gtk/gtk.symbols:
1037         * gtk/gtklabel.[ch]:
1038         Add gtk_label_set_line_wrap_mode, gtk_label_get_line_wrap_mode, and
1039         a wrap-mode property that lets you set the PangoWrapMode.
1040
1041 2006-06-19  Matthias Clasen  <mclasen@redhat.com>
1042
1043         * gtk/gtk.symbols: Add new functions
1044
1045         * gtk/gtkprinter.h: 
1046         * gtk/gtkprinter.c (gtk_enumerate_printers): New function
1047         to list all printers (#344074, Felipe Heidrich)
1048
1049         * gtk/gtkprinter-private.h: 
1050         * gtk/gtkprinter.c (_gtk_printer_get_options) 
1051
1052         * gtk/gtkprintbackend.h: Add a capabilities argument to the 
1053         printer_get_options method and to the _gtk_printer_get_options
1054         function
1055         
1056         * modules/printbackends/lpr/gtkprintbackendlpr.c 
1057         (lpr_printer_get_options): 
1058         * modules/printbackends/pdf/gtkprintbackendpdf.c 
1059         (pdf_printer_get_options): 
1060         * modules/printbackends/cups/gtkprintbackendcups.c 
1061         (cups_printer_get_options): 
1062         * gtk/gtkprintunixdialog.c (selected_printer_changed): Adjust
1063         callers and implementations.
1064
1065         * gtk/gtkprintjob.h: Add a GENERATE_PS capability. 
1066         * gtk/gtkprintunixdialog.c (is_printer_active): And use it here.
1067
1068 2006-06-18  Matthias Clasen  <mclasen@redhat.com>
1069
1070         * tests/testnouiprint.c (main): Don't open a display connection.
1071
1072         * gtk/gtkprintbackend.c (gtk_print_backend_load_modules): Make
1073         this work without a display connection.  (339702, Alexander Larsson)
1074
1075         * gtk/gtkwindow.c (gtk_window_move): Small doc addition. 
1076         (#345275, Behdad Esfahbod)
1077
1078 2006-06-17  Matthias Clasen  <mclasen@redhat.com>
1079
1080         * modules/printbackends/pdf/gtkprintbackendpdf.c:
1081         * modules/printbackends/lpr/gtkprintbackendlpr.c: Fix a typo:
1082         s/Extention/Extension/. 
1083         
1084         * gtk/gtkprintunixdialog.c: Clean up the handling of 
1085         printer-specific options. There is just one extension point on the
1086         main tab now, and all options in the GtkPrintDialogExtension
1087         group are put there. 
1088
1089         * gtk/gtkprinteroption.h: 
1090         * gtk/gtkprinteroption.c: Add GTK_PRINTER_OPTION_TYPE_ALTERNATIVE
1091         which is semantically the same as PICKONE, but is intended to 
1092         show all options all the time.
1093         
1094         * gtk/gtkprinteroptionwidget.c: Implement ALTERNATIVE as radio
1095         group.
1096
1097 2006-06-16  Matthias Clasen  <mclasen@redhat.com>
1098
1099         * modules/printbackends/cups/gtkprintbackendcups.c:
1100         * modules/printbackends/lpr/gtkprintbackendlpr.c: Use a stock icon
1101         for printers.
1102
1103         * gtk/gtkprintunixdialog.c (add_option_to_table): Don't grow
1104         additional columns.
1105
1106         * gtk/gtkprintbackend.h: Add a GtkPrintSettings parameter to the
1107         printer_create_cairo_surface method.
1108         
1109         * modules/printbackends/pdf/gtkprintbackendpdf.c: 
1110         * modules/printbackends/cups/gtkprintbackendcups.c: 
1111         * modules/printbackends/lpr/gtkprintbackendlpr.c: 
1112         * gtk/gtkprinter.c (_gtk_printer_create_cairo_surface): 
1113         * gtk/gtkprinter-private.h: 
1114         * gtk/gtkprintjob.c (gtk_print_job_get_surface): Adapt all users.
1115
1116         * gtk/gtkentrycompletion.c (gtk_entry_completion_finalize): Don't
1117         leak match data.  (#345107,  Christian Weiske)
1118
1119         * gtk/gtkprintunixdialog.c (populate_dialog): Move the conflict
1120         label out of the button box.  (#339456, Christian Persch)
1121
1122         * gtk/gtksizegroup.c (compute_dimension): Ignore unmapped widgets
1123         when ignore_hidden is TRUE.  (#344707, Christian Persch)
1124
1125         * configure.in: Require cvs glib.
1126
1127         * gtk/gtkprintoperation-unix.c: 
1128         (_gtk_print_operation_platform_backend_create_preview_surface): 
1129         Don't use a temporary directory for preview files, since it
1130         is not clear who cleans it up. Instead, use g_mkstemp() directly
1131         to create a temp pdf file, and make the preview app responsible
1132         for cleaning it up.
1133
1134         * gtk/gtkprintbackend.c: Move the registration of the 
1135         gtk-print-preview-command setting from gtkprintbackend.c to 
1136         gtkprintoperation-unix.c, to make sure it is registered before
1137         the first use. Also, document the two settings.
1138
1139         * tests/print-editor.c: Add a "Preview" menu item.
1140
1141         * gtk/gtkprintoperation-unix.c (handle_print_response): When starting
1142         a preview from the print dialog, set the action to PREVIEW.
1143
1144         * gtk/gtkprintoperation.c: Cosmetic changes.
1145
1146 2006-06-16 Matthias Clasens  <mclasen@redhat.com>
1147
1148         * gtk/gtkprintoperation-unix.c: Mark the preview filename
1149         as translatable (#345093, Christian Persch)
1150
1151 Fri Jun 16 11:49:53 2006  Tim Janik  <timj@imendio.com>
1152
1153         * fixed #337882 by applying patches from Tommi Komulainen:
1154
1155         * gtk/gtkprogressbar.c:
1156         (gtk_progress_bar_paint_activity):
1157         (gtk_progress_bar_get_activity): Move activity bar offset and size
1158         calculations to separate function.
1159         (gtk_progress_bar_paint_text): Allow caller to specify offset for the
1160         prelight part in addition to width.
1161         (gtk_progress_bar_paint): Paint the text also in activity mode, #337882.
1162
1163         * gtk/gtkprogressbar.c: (gtk_progress_bar_paint_text): Paint the
1164         prelighted text on top of the normal rather than side by side, to
1165         simplify painting text in activity mode.
1166
1167 2006-06-16  Matthias Clasen  <mclasen@redhat.com>
1168
1169         * modules/printbackends/cups/gtkprintbackendcups.c: Include
1170         gtkprinter-private.h  (#345038, Christian Persch)
1171  
1172 2006-06-15  Matthias Clasen  <mclasen@redhat.com>
1173
1174         * modules/printbackends/pdf/gtkprintbackendpdf.c: Use the
1175         stock floppy icon.
1176
1177         * gtk/gtkprintoperation-unix.c: Set the GENERATE_PDF capability
1178         when creating a print dialog.  (noted by Yevgen Muntyan)
1179
1180 2006-06-15  Carlos Garnacho  <carlosg@gnome.org>
1181
1182         * gtk/gtknotebook.c (gtk_notebook_motion_notify): use
1183         gdk_window_get_pointer() to get pointer coordinates, but limit its
1184         calls to a maximum of 45 times per second for not being too
1185         CPU/network abusive. stop drag operation if (event->state &
1186         GDK_BUTTON1_MASK) is FALSE to prevent tabs from "adhering" to the
1187         pointer. Fixes bug #341571
1188         (gtk_notebook_calculate_tabs_allocation), (gtk_notebook_button_press):
1189         get rid of the "tab jumps to pointer" sensation when beginning a drag
1190         by using the pointer offset in the tab when the drag begins as an
1191         anchor.
1192         (gtk_notebook_redraw_tabs_union): remove, it wasn't worth the little
1193         performance gain and could draw artifacts under some circumstances.
1194         (gtk_notebook_drag_end): do not reparent the detached tab label until
1195         the animation has ended.
1196
1197 2006-06-15  Bastien Nocera  <hadess@hadess.net>
1198
1199         * configure.in: Update the Cairo requirements (#345008)
1200
1201 2006-06-15  Matthias Clasen  <mclasen@redhat.com>
1202
1203         * gtk/gtkprintoperationpreview.c 
1204         (gtk_print_operation_preview_base_init): Fix errors in the
1205         signal definitions.  (#344891, Marko Anastasov)
1206
1207 2006-06-14  Michael Emmel  <mike.emmel@gmail.com>
1208         
1209         * configure.in: updated mininum  dfb to 0.9.24
1210         * gdk/directfb/gdkdirectfb.h: added more directfb wrapper functions
1211         * gdk/directfb/gdkdrawable-directfb.c: wrapper functions and patch from 
1212          Claudio Ciccani <klan@users.sf.net> to use a subsurface for cairo
1213     * gdk/directfb/gdkvisual-directfb.c: changed initalization sequence
1214     * gdk/directfb/gdkwindow-directfb.c: corrected reparent for toplevels
1215     * gdk/directfb/gdkdisplay-directfb.c: changed initilization sequence
1216         to a more rational order
1217
1218 2006-06-14  Federico Mena Quintero  <federico@novell.com>
1219
1220         * perf/gtkwidgetprofiler.c (gtk_widget_profiler_profile_expose):
1221         New function; it lets us time the expose sequence of a widget.
1222         (create_widget): New helper function.
1223         (map_widget): New helper function.
1224         (profile_boot): Use create_widget() instead of doing it by hand.
1225         (profile_map_expose): Use map_widget() instead of doing it by hand.
1226
1227         * perf/main.c (main): Call gtk_widget_profiler_profile_expose() as well.
1228
1229 2006-06-14  Matthias Clasen  <mclasen@redhat.com>
1230
1231         * gtk/gtkpagesetupunixdialog.c: Use GKeyFile for the custom
1232         filename storage.  (#344867, Christian Persch)
1233
1234         * gtk/gtkselection.c: Call init_atoms before using atoms
1235         in several functions.  (#344743, John Finlay)
1236
1237         * gtk/gtktreeview.c (gtk_tree_view_set_search_position+_func):
1238         Allow NULL to reset to default.  (#344838, John Finlay)
1239
1240         * gtk/gtkprintjob.h: Collect booleans into a bitfield
1241         (#344765, Christian Persch)
1242
1243 2006-06-13  Matthias Clasen  <mclasen@redhat.com>
1244
1245         * configure.in: Bump version
1246
1247 2006-06-12  Matthias Clasen  <mclasen@redhat.com>
1248
1249         * === Released 2.9.3 ===
1250
1251         * NEWS: Updates
1252         
1253         * gtk/gtk.symbols: Add gtk_tree_view_grid_lines_get_type.
1254
1255         * configure.in: Set interface age to 0
1256
1257 2006-06-12  Kristian Rietveld  <kris@imendio.com>
1258
1259         Introduce grid and tree lines in GtkTreeView. (#106406,
1260         Martyn Russell).
1261
1262         * gtk/gtktreeprivate.h: add new fields to GtkTreePrivate.
1263
1264         * gtk/gtkenums.h: add GtkTreeViewGridLines.
1265
1266         * gtk/gtktreeview.[ch] (gtk_tree_view_set_grid_lines),
1267         (gtk_tree_view_get_grid_lines),
1268         (gtk_tree_view_set_enable_tree_lines),
1269         (gtk_tree_view_get_enable_tree_lines): new API,
1270         (gtk_tree_view_class_init): new properties,
1271         (gtk_tree_view_init), (gtk_tree_view_{get,set}_property),
1272         (gtk_tree_view_realize), (gtk_tree_view_draw_grid_lines),
1273         (gtk_tree_view_bin_expose): implement.
1274
1275         * gtk/gtk.symbols: update.
1276
1277 2006-06-12  Matthias Clasen  <mclasen@redhat.com>
1278
1279         * gtk/gtkprintunixdialog.c (is_printer_active): Use 
1280         gtk_printer_accepts_ps here.
1281
1282         * modules/printbackends/pdf/gtkprintbackendpdf.c (gtk_print_backend_pdf_init):
1283         Mark the virtual "Print to PDF" printer as not accepting PS.
1284
1285         * gtk/gtk.symbols:
1286         * gtk/gtkprinter.h: 
1287         * gtk/gtkprinter.c: Add two new properties accepts-pdf and
1288         accepts-ps (with getters) to allow learning supported formats.
1289
1290         * gtk/gtkprintjob.h: Add a GTK_PRINT_CAPABILITY_GENERATE_PDF
1291         capability.
1292         
1293         * gtk/gtkprintunixdialog.c: Use it here to hide "Print to PDF" 
1294         from the printer list.  (#339592, Christian Persch)
1295         
1296         * gtk/gtkfilechooserdefault.c: Add support for pasting
1297         filenames into the filechooser.  (#153212, Bastian Nocera)
1298
1299 2006-06-12  Kristian Rietveld  <kris@gtk.org>
1300
1301         * gtk/gtktreemodelfilter.[ch]
1302         (gtk_tree_model_filter_convert_child_iter_to_iter),
1303         (gtk_tree_model_filter_convert_child_path_to_path): report status
1304         in return value instead of spewing assertions.  (#335729, Yevgen
1305         Muntyan).
1306
1307 2006-06-12  Matthias Clasen  <mclasen@redhat.com>
1308
1309         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_finalize): 
1310         Clean up user data.  (#344624, Christian Weiske)
1311
1312         * NEWS: Updates
1313
1314         * gtk/gtkprintjob.c:
1315         * gtk/gtkprintbackend.c: 
1316         * gtk/gtkpagesetupunixdialog.c: 
1317         * gtk/gtkprintunixdialog.c: Cosmetic cleanups.
1318
1319 2006-06-11  Matthias Clasen  <mclasen@redhat.com>
1320
1321         * gtk/gtkassistant.c: Add an accessible implementation in
1322         order to make the buttons visible to a11y tools.  (pointed out
1323         by David Malcolm, #343945)
1324
1325         * gtk/gtkprintoperation-win32.c: Store scale as a percentage.
1326         (#344560, Christian Persch)
1327
1328         * gtk/gtkprogressbar.h: Add a dirty flag to GtkProgressBar.n/ 
1329         * gtk/gtkprogressbar.c: Defer updating of the offscreen
1330         pixmap until expose.  (#344543, Chris Wilson)
1331
1332 2006-06-11  Emmanuele Bassi  <ebassi@gnome.org>
1333
1334         * gtk/gtkrecentchooserdefault.c
1335         (get_is_recent_filtered):
1336         * gtk/gtkrecentchoosermenu.c
1337         (get_is_recent_filtered):
1338         Do not leak the groups string vector. (#344607,
1339         John Finlay)
1340
1341 2006-06-11  Tor Lillqvist  <tml@novell.com>
1342
1343         * gtk/gtkprintoperation-win32.c: Fix MSVC build problem. (#339739,
1344         Kazuki Iwamoto)
1345
1346         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Convert \n
1347         to \r\n also when storing CF_UNICODETEXT (UTF-16) in the
1348         Clipboard. (#344496)
1349
1350 2006-06-10  Matthias Clasen <mclasen@redhat.com>
1351
1352         * gtk/gtkrecentchooserwidget.c 
1353         (gtk_recent_chooser_widget_new_for_manager):
1354         * gtk/gtkrecentchoosermenu.c
1355         (gtk_recent_chooser_menu_new_for_manager): 
1356         Allow NULL to mean the default manager.  (#344530, 
1357         John Finlay)
1358
1359         * gtk/gtkprintoperation-unix.c (page_setup_data_free):
1360         Check if rdata->page_setup is set before unreffing it. 
1361         (#344518, Christian Persch)
1362
1363         * gtk/gtkprintoperation.h: Remove an extra comma.  (#344528, 
1364         Elijah Newren)
1365
1366         * modules/printbackends/gtkprintbackendpdf.c 
1367         (gtk_print_backend_pdf_print_stream): Use the passed in 
1368         destroy notify.  (#344513, Christian Persch)
1369
1370         * configure.in: Require cairo 1.1.7
1371
1372         * gtk/gtkprintoperation.c:
1373         * modules/printbackends/pdf/gtkprintbackendpdf.c: Use
1374         cairo_pdf_surface_set_dpi by cairo_surface_set_fallback_resolution.
1375         (#344512, Elijah Newren)
1376
1377         * gdk-2.0-uninstalled.pc.in: Make compiling against uninstalled
1378         gdk work.  (#344386, Masatake Yamamoto)
1379
1380         * gtk/gtkprintoperation.c: Register create_custom_widget as 
1381         an object-returning signal.  (#344505, Marko Anastasov, patch
1382         by Christian Persch)
1383
1384         * gtk/gtkmarshalers.list: Add the right marshaller.
1385
1386         * gtk/gtk.symbols:
1387         * gtk/gtkprintjob.[hc]: Register GtkPrintCapabilities as a
1388         flags type.  (#344504, Marko Anastasov)
1389
1390 2006-06-09  Benjamin Berg  <benjamin@sipsolutions.net>
1391
1392         * gtk/gtkmenuitem.c: (get_offsets): Take GtkMenu::horizontal-padding
1393         into account when placing submenus (#344290)
1394
1395 2006-06-09  Michael Natterer  <mitch@imendio.com>
1396
1397         * gtk/gtkrange.c: added new style properties "trough-side-details"
1398         and "draw-trough-under-steppers" and fixed the "stepper-spacing"
1399         style property. Fixes bugs #342339 and #342249.
1400
1401         "draw-trough-under-steppers", when set to FALSE, starts trough
1402         drawing next to the steppers instead of drawing the trough "below"
1403         (around) the steppers. If "stepper-spacing" is set to any value
1404         larger than zero, "draw-trough-under-steppers" is set to FALSE
1405         automatically to avoid rendering an area that looks clickable but
1406         isn't.
1407
1408         (gtk_range_calc_layout): honor draw-trough-under-steppers.
1409         Don't reserve stepper-spacing on sides of the range that don't
1410         have steppers.
1411
1412         (gtk_range_expose): changed drawing accordingly. Implement
1413         "trough-side-details" which enables drawing of the upper and lower
1414         parts of the trough with different details. This is useful for
1415         theme engines which want to draw these parts differently.
1416
1417         (coord_to_value): correctly take all rendering options into
1418         account. stepper-spacing > 0 caused jumping and otherwise
1419         strangely behaving ranges before.
1420
1421         (other functions): changed accordingly.
1422
1423 2006-06-09  Tor Lillqvist  <tml@novell.com>
1424
1425         * gdk/win32/gdkdrawable-win32.c (_gdk_win32_drawable_release_dc):
1426         Call ReleaseDC() on DCs acquired with GetDC() (for windows), and
1427         DeleteDC() on DCs acquired with CreateCompatibleDC() (for
1428         bitmaps). According to MSDN, this is the correct thing to do, even
1429         if always using DeleteDC() seems to have worked fine in
1430         practice. (#337491, Chris Wilson)
1431
1432 2006-06-08  Matthias Clasen  <mclasen@redhat.com>
1433
1434         * tests/testprint.c: Update for api changes.
1435
1436         * gtk/gtkprintoperation.c: Fix some copy-and-paste errors,
1437         and rename the pdf-target property to export-filename.
1438
1439         * gtk/gtkfilechooserdefault.c: Turn off profiling code.
1440
1441         * tests/print-editor.c: Update for api changes.
1442
1443         * gtk/gtk.h: Include gtkprintoperationpreview.h
1444
1445         * gtk/gtkprintoperationpreview.c (gtk_print_operation_preview_is_selected): 
1446         Use g_return_val_if_fail (#344288, Kazuki Iwamoto)
1447
1448         * gtk/gtkprintbackend.h: Don't include gtkprinter-private.h here.
1449
1450         * gtk/gtkprintunixdialog.c: 
1451         * gtk/gtkprintoperation-unix.c: 
1452         * gtk/gtkprintjob.c: 
1453         * gtk/gtkprintbackend.c: Instead include it here.
1454
1455         * gtk/gtk.symbols: 
1456         * gtk/gtkprintoperation.h: 
1457         * gtk/gtkprintoperation.c: Rename pdf_target to export_filename.
1458
1459 2006-06-08  Matthias Clasen  <mclasen@redhat.com>
1460
1461         * gtk/gtkprintoperation.h (GtkPrintOperationResult): Get
1462         rid of GTK_PRINT_OPERATION_RESULT_PREVIEW.
1463         
1464         * gtk/gtkprintoperation-unix.c: 
1465         * gtk/gtkprintoperation.c: Update all users.
1466
1467 2006-06-08  Tor Lillqvist  <tml@novell.com>
1468
1469         * gdk/win32/gdkevents-win32.c (gdk_event_translate):
1470         [WM_WINDOWPOSCHANGED] Replace identical code as in
1471         handle_configure_event() with call to that function.
1472         [WM_SIZING] Fix implementation of aspect ratio hints. (#344244)
1473         The hints are for the geometry of the client area, not of the
1474         window including decorations. Improve resizing behaviour in the
1475         presence of aspect hints, to be more in line with typical X window
1476         managers.
1477
1478 2006-06-08  Matthias Clasen  <mclasen@redhat.com>
1479
1480         * gtk/gtktoolbutton.c (gtk_tool_button_style_set): Give
1481         GtkToolButton the same treatment.
1482
1483         * gtk/gtkbutton.c (gtk_button_style_set): Don't call
1484         construct_child here, since some apps make assumptions 
1485         about the lifecycle of the constructed label.  
1486
1487 2006-06-08  Alexander Larsson  <alexl@redhat.com>
1488
1489         * gtk/gtkprintoperation-unix.c (finish_print):
1490         Fix up unix fallout from previous change.
1491
1492 2006-06-08  Alexander Larsson  <alexl@redhat.com>
1493
1494         * gtk/gtkprintoperation-win32.c:
1495         Update windows to build with new APIs and first cut
1496         at preview work.
1497         
1498         * gtk/gtkprintoperation-private.h:
1499         * gtk/gtkprintoperation-unix.c:
1500         * gtk/gtkprintoperation.c
1501         Various updates needed when making the preview work on win32.
1502
1503         * tests/print-editor.c:
1504         Print, don't preview.
1505
1506 2006-06-07  Matthias Clasen  <mclasen@redhat.com>
1507
1508         * gtk/gtkentry.c (popup_targets_received): Make Delete
1509         menuitem insensitive if entry is not editable.  (#344232, 
1510         Milosz Derezynski)
1511
1512         * gtk/gtkprintoperation.c: Add some docs. 
1513
1514         * gtk/gtk.symbols: Add gtk_print_operation_set_allow_async.
1515
1516         * gtk/gtkprintoperation.h: Remove gtk_print_operation_run_async.
1517
1518         * tests/testnotebookdnd.c: Update callers.
1519
1520         * gtk/gtknotebook.h:
1521         * gtk/gtknotebook.c (gtk_notebook_set_window_creation_hook):
1522         Add a destroy notify for the callback data.  (#344209, 
1523         Murray Cumming)
1524
1525 2006-06-07  Jürg Billeter  <j@bitron.ch>
1526
1527         * gtk/Makefile.am: Fix building gtkbuiltincache.h without system GTK+.
1528
1529 2006-06-07  Alexander Larsson  <alexl@redhat.com>
1530
1531         * gtk/gtk.symbols:
1532         * gtk/gtkprintoperation-private.h:
1533         * gtk/gtkprintoperation-unix.c:
1534         * gtk/gtkprintoperation.[ch]:
1535         Clean up APIs:
1536         Make async a setting instead of separate calls.
1537         Combine settings like show_dialog, show_preview and pdf_target into
1538         an action enum that you pass to gtk_print_dialog_run().
1539         
1540         * tests/print-editor.c:
1541         * tests/testnouiprint.c:
1542         * tests/testprint.c:
1543         * demos/gtk-demo/printing.c:
1544         Update to new APIs
1545
1546 2006-06-07  Bastien Nocera  <hadess@hadess.net>
1547
1548         * configure.in: Update the ATK requirements (#344148)
1549
1550 2006-06-07  Matthias Clasen  <mclasen@redhat.com>
1551
1552         * modules/printbackends/cups/gtkprintercups.c 
1553         (gtk_printer_cups_finalize):  Fix a C99ism.
1554         (#344123, Jens Ganseuer)
1555
1556 2006-06-06  Behdad Esfahbod  <behdad@gnome.org>
1557
1558         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Correct
1559         rounding of rect members.  Improved docs.  (#337603)
1560
1561 2006-06-06  Matthias Clasen  <mclasen@redhat.com>
1562
1563         * gtk/gtkicontheme.c: Small optimization
1564
1565 2006-06-05  Matthias Clasen  <mclasen@redhat.com>
1566
1567         * configure.in: Bump version
1568
1569         * === Released 2.9.2 ===
1570
1571         * configure.in: Set interface age to 0.
1572
1573         * NEWS: Updates
1574
1575         * gtk/gtkprintoperationpreview.c: Include gtkalias.h
1576
1577         * gtk/gtk.symbols: Add some forgotten new functions.
1578
1579 2006-06-04  Matthias Clasen  <mclasen@redhat.com>
1580
1581         * gtk/gtknotebook.c (gtk_notebook_calculate_shown_tabs):
1582         (gtk_notebook_calc_tabs): Fix borderline cases in tab
1583         visibility calculation.  (#168105, Carlos Garnacho Parro)
1584
1585         * gdk/x11/gdkfont-x11.c (_gdk_font_destroy): Remove the right
1586         XID from the xid table.  (#341327, Sampo Savolainen, Tim Janik)
1587
1588 2006-06-04  Behdad Esfahbod  <behdad@gnome.org>
1589
1590         * gtk/gtkprintoperationpreview.h: Add missing G_END_DECLS (#343838)
1591
1592 2006-06-03  Richard Hult  <richard@imendio.com>                                 
1593
1594         * gdk/quartz/Makefile.am:                                               
1595         * gdk/quartz/gdkspawn-quartz.c: Add spawn functions, copied from the
1596         win32 backend.
1597
1598 2006-06-02  Matthias Clasen  <mclasen@redhat.com>
1599         
1600         * gtk/gtkprintoperation-private.h:
1601         * gtk/gtkprintoperation.h:
1602         * gtk/gtkprintoperation.c: Add a show-preview property. 
1603
1604         * gtk/gtkprintoperation-unix.c: Implement it here.
1605
1606         * gtk/gtkprintoperation-unix.c: Cleanups
1607
1608 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1609
1610         Rubber banding for GtkTreeView, #80127.  Uses same method as
1611         GtkIconView.
1612
1613         * gtk/gtktreeview.c (gtk_tree_view_class_init),
1614         (gtk_tree_view_init), (gtk_tree_view_get_property),
1615         (gtk_tree_view_set_property), (gtk_tree_view_set_rubber_banding),
1616         (gtk_tree_view_get_rubber_banding): add property,
1617         (gtk_tree_view_button_press): start rubber banding if enabled and
1618         press is on a non-selected node,
1619         (gtk_tree_view_button_release): stop rubber banding,
1620         (gtk_tree_view_motion_bin_window), (scrool_row_timeout): enable/update
1621         the rubber band,
1622         (gtk_tree_view_bin_expose): draw rubber band if active,
1623         (gtk_tree_view_stop_rubberband),
1624         (gtk_tree_view_update_rubber_band_selection_range),
1625         (gtk_tree_view_update_rubber_band_selection),
1626         (gtk_tree_view_update_rubber_band),
1627         (gtk_tree_view_paint_rubber_band): new functions.
1628
1629         * gtk/gtktreeview.h: add new set/get function for rubber banding
1630         property.
1631
1632         * gtk/gtktreeprivate.h: add a bunch of new private fields.
1633
1634 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1635
1636         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): revert fix of
1637         #164884 because it's not a problem in gtk+ but in applications and
1638         it breaks starting drags from the edge of a row.
1639
1640 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1641
1642         Separate sensitive/selectable properties.
1643
1644         * gtk/gtktreeselection.c (tree_column_is_sensitive): remove,
1645         (_gtk_tree_selection_row_is_selectable): remove checks to see if at
1646         least one column is sensitive,
1647         (gtk_tree_selection_real_select_node): remove code which enables
1648         insensitive rows to always be unselected.
1649
1650         * gtk/gtktreeview.c (gtk_tree_view_row_changed): remove code
1651         that unselects a node if it just became insensitive.
1652
1653         * gtk/gtkcombobox.c (gtkcombo_box_list_select_func): new function,
1654         based on the at least one column sensitive check from
1655         _gtk_tree_selection_row_is_selectable(),
1656         (gtk_combo_box_list_setup): set selection function on tree selection.
1657
1658 2006-06-02  Kristian Rietveld  <kris@imendio.com>
1659
1660         * gtk/gtktreemodelfilter.c
1661         (gtk_tree_model_filter_convert_child_path_to_path): need to use
1662         gtk_tree_model_filter_get_iter_full() since the path returned
1663         by gtk_real_tree_model_filter_convert_child_path_to_path() includes
1664         invisible nodes.
1665
1666 2006-06-02  Matthias Clasen  <mclasen@redhat.com>
1667
1668         * gtk/gtkstatusicon.c (gtk_status_icon_get_geometry): Allow
1669         to return partial information.  (#343625, Christian Persch)
1670
1671         * gtk/gtkwindow.c (gtk_window_key_release_event): Chain up
1672         to key_release, not to key_press.  (#343677, Tommi Komulainen)
1673
1674 2006-06-02  Alexander Larsson  <alexl@redhat.com>
1675
1676         * gtk/Makefile.am:
1677         Add gtkprintoperationpreview.[ch]
1678         Set default preview command. Hardcoded for now.
1679         
1680         * gtk/gtkmarshalers.list:
1681         Add BOOLEAN:OBJECT,OBJECT,OBJECT
1682         
1683         * gtk/gtkprintbackend.c:
1684         Add preview command property.
1685         
1686         * gtk/gtkprintcontext.[ch]:
1687         Make less dependent on PrintOperation for output settings
1688         Externally set cairo_t and dpi. Resettable.
1689         Create fontmap without metrics hinting (so that print preview
1690         text layout doesn't depend on zoom level).
1691         
1692         * gtk/gtkprintoperation-private.h:
1693         * gtk/gtkprintoperation-unix.c: 
1694         * gtk/gtkprintoperation.[ch]:
1695         Initial work on print preview API and default implementation
1696         using an external preview app.
1697         
1698         * gtk/gtkprintoperation-win32.c:
1699         Some needed updates. Not done, needs more work.
1700         
1701         * gtk/gtkprintoperationpreview.[ch]:
1702         New interface used in print preview api.
1703         
1704         * gtk/gtkprintunixdialog.c:
1705         Add print preview dialog.
1706         
1707         * tests/print-editor.c:
1708         Test using an custom print preview widget.
1709
1710 2006-06-02  Emmanuele Bassi  <ebassi@gnome.org>
1711
1712         * gtk/gtkrecentmanager.c
1713         (gtk_recent_info_get_application_info): Fix a typo (spotted by
1714         Paolo Borelli and coverity).
1715
1716 2006-06-01  Matthias Clasen  <mclasen@redhat.com>
1717         
1718         * tests/testnotebookdnd.c: Small tweaks to test more things.
1719
1720         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Add
1721         an icon-spacing style property for the same purpose.
1722
1723         * gtk/gtkbutton.c (gtk_button_class_init):  Add an image-spacing
1724         style property that allows to adjust the spacing between image
1725         and label in button.  (#320431, James Moger)
1726
1727         * gtk/gtkprintoperation-private.h: 
1728         * gtk/gtkprintoperation.c: 
1729         * gtk/gtkprintoperation-unix.c: Move the 
1730         PrintPagesData.wait flag to GtkPrintOperationPrivate.is_sync.
1731         Also use a recursive mainloop instead of manually looping.
1732         
1733         * gtk/gtkprintoperation.c: Add some examples to the docs.
1734
1735         * gtk/gtkprintbackend.c (gtk_print_backend_class_init): 
1736         Intern signal names.
1737
1738         * gtk/gtkprintunixdialog.c: 
1739         * gtk/gtkprintoperation-unix.c: Use canonical signal names.
1740
1741 2006-05-31  Matthias Clasen  <mclasen@redhat.com>
1742
1743         * gtk/gtkpagesetupunixdialog.c: Add docs, cleanup some
1744         formatting.
1745
1746         * gtk/gtkprintoperation.c (print_pages_idle): Don't
1747         treat manual_scale like a percentage, its a factor.
1748
1749         * gtk/gtktreeview.c (gtk_tree_view_class_init): Document
1750         signals.  (#302556, Stefan Kost)
1751
1752 2006-05-31  Alexander Larsson  <alexl@redhat.com>
1753
1754         * gtk/gtk.symbols:
1755         * demos/gtk-demo/printing.c:
1756         * tests/print-editor.c:
1757         * tests/testnouiprint.c:
1758         * tests/testprint.c:
1759         * tests/testprintfileoperation.c:
1760         Further updates from the GtkPrintContext functions rename.
1761         
1762         * modules/printbackends/cups/gtkcupsutils.c:
1763         Always set requesting-user-name when doing cups requests.
1764
1765 2006-05-31  Alexander Larsson  <alexl@redhat.com>
1766
1767         * gtk/gtkpagesetupunixdialog.c:
1768         Remove request_details_tag with g_signal_handler_disconnect,
1769         not g_source_remove. (#343475)
1770
1771 2006-05-31  Matthias Clasen  <mclasen@redhat.com>
1772
1773         * gtk/gtkprintcontext.h: 
1774         * gtk/gtkprintcontext.c: 
1775         * gtk/gtkprintoperation.c: 
1776         * gtk/gtkprintoperation-unix.c: Change some function names to be 
1777         longer and better. 
1778         gtk_print_context_get_cairo -> gtk_print_context_get_cairo_context
1779         gtk_print_context_get_fontmap -> gtk_print_context_get_pango_fontmap
1780         gtk_print_context_create_context -> gtk_print_context_create_pango_context
1781         gtk_print_context_create_layout -> gtk_print_context_create_pango_layout
1782         Update all callers.
1783
1784         * gtk/gtkpagesetupunixdialog.c: Don't run the custom page
1785         size dialog.  (#340444, Christian Persch)
1786
1787         * demos/gtk-demo/main.c (main): Display comments in friendly
1788         DodgerBlue instead of scary red.  (#343444, Carol Spears)
1789
1790         * gtk/gtkfontbutton.c: 
1791         * gtk/gtkcolorbutton.c: Clarify the docs of the color-set and
1792         font-set signals.  (#343438, Olexiy Avramchenko)
1793
1794 2006-05-30  Matthias Clasen  <mclasen@redhat.com>
1795
1796         * gtk/gtkmain.c (gtk_grab_notify_foreach): Don't skip internal
1797         children when emitting grab-notify.  (#343425, Markku Vire)
1798
1799         * gdk/gdkpixmap.c: 
1800         * gdk/gdkwindow.c: Don't use G_DEFINE_TYPE, since the instance
1801         struct name does not match the type name.  (#343453, Ed Catmur)
1802
1803         * gtk/gtk.symbols: 
1804         * gtk/gtkbutton.h: 
1805         * gtk/gtkbutton.c: Add a GtkButton::image-position property
1806         with getter and setter, to allow constructing buttons with
1807         the image stacked on top of the label.  (#342930, Johan Dahlin)
1808
1809 2006-05-30  Johan Dahlin  <jdahlin@async.com.br>
1810
1811    * gtk/gtk.symbols:
1812    * gtk/gtkbutton.c: (gtk_button_class_init), (gtk_button_init),
1813    (gtk_button_set_property), (gtk_button_get_property),
1814    (gtk_button_construct_child), (gtk_button_set_image_spacing),
1815    (gtk_button_get_image_spacing):
1816    * gtk/gtkbutton.h:
1817    * gtk/gtktoolbutton.c: (gtk_tool_button_class_init),
1818    (gtk_tool_button_construct_contents),
1819    (gtk_tool_button_set_property), (gtk_tool_button_get_property),
1820    (_gtk_tool_button_get_button), (gtk_tool_button_set_icon_spacing),
1821    (gtk_tool_button_get_icon_spacing):
1822    * gtk/gtktoolbutton.h:
1823    Add GtkButton:image-spacing and GtkToolButton::icon-spacing.
1824    (#320431, James Moger)
1825
1826 2006-05-30  Kristian Rietveld  <kris@gtk.org>
1827
1828         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button): only
1829         check sort column id if connected to sortable model.
1830
1831 2006-05-30  Behdad Esfahbod  <behdad@gnome.org>
1832
1833         * gdk/gdkpango.c (draw_error_underline): Fix offset to center the
1834         underline in requested rectangle. (Ported from pango fix.)
1835
1836 2006-05-29  Michael Natterer  <mitch@imendio.com>
1837
1838         * gtk/gtkdialog.h: removed forgotten declaration of
1839         _gtk_dialog_get_response_for_widget(), the function has been made
1840         public a long time ago.
1841
1842 2006-05-29  Michael Natterer  <mitch@imendio.com>
1843
1844         * gtk/gtktextview.c (gtk_text_view_target_list_notify): applied
1845         patch from Chris Wilson which replaces a useless loop with
1846         built-in access to free'd memory by a simple integer comparison.
1847         Fixes bug #342894.
1848
1849 2006-05-29  Kristian Rietveld  <kris@gtk.org>
1850
1851         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): select
1852         the current focus row if nothing is selected and ctrl is not pressed.
1853         (Fixes #324480, Murray Cumming/Srirama Sharma).
1854
1855 2006-05-28  Kristian Rietveld  <kris@gtk.org>
1856
1857         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_cell_focus): refactor
1858         to work correctly in RTL mode.
1859
1860         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_left_right): make
1861         cursor movement to left/right work correctly in RTL mode.
1862
1863 2006-05-28  Behdad Esfahbod  <behdad@gnome.org>
1864
1865         * gdk/gdkrectangle.c (gdk_rectangle_union, gdk_rectangle_intersect):
1866         Note in docs that @dest can be the same as @src1 or @src2. (#343233,
1867         Christian Persch)
1868
1869 2006-05-28  Kristian Rietveld  <kris@gtk.org>
1870
1871         * gtk/gtkstyle.c (gtk_default_draw_flat_box): handle
1872         cell_even_ruled_sorted and cell_odd_ruled_sorted for the selected
1873         state.
1874
1875 2006-05-28  Kristian Rietveld  <kris@gtk.org>
1876
1877         * gtk/gtkenums.h: add GTK_ARROW_NONE.
1878
1879         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_column): always
1880         "show" the arrow if sort_column_id >= 0, only set arrow type if
1881         this column is the column we are currently sorting on. (#331338).
1882
1883 2006-05-27  Matthias Clasen  <mclasen@redhat.com>
1884
1885         * gtk/gtkrecentchoosermenu.c: Avoid trivial differences
1886         in translated strings.  (#343088, Clytie Siddall)
1887
1888 2006-05-28  Kristian Rietveld  <kris@gtk.org>
1889
1890         * gtk/gtktreeview.c (gtk_tree_view_build_tree): emit test_expand_row
1891         and test return value before expanding a branch. (Fixes #321523,
1892         reported by Daniel Lindenaar).
1893
1894 2006-05-28  Kristian Rietveld  <kris@gtk.org>
1895
1896         * gtk/gtktreeview.c (gtk_tree_view_insert_column): set the sizing
1897         type of the new column to FIXED,
1898         (gtk_tree_view_insert_column_with_attributes): likewise. (#341898,
1899         Dan Winship).
1900
1901 2006-05-27  Kristian Rietveld  <kris@gtk.org>
1902
1903         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_remove_node):
1904         only unref if elt->ref_count > 0,
1905         (gtk_tree_model_filter_row_deleted): likewise. (Fixes #340839,
1906         reported by Yevgen Muntyan).
1907
1908 2006-05-27  Kristian Rietveld  <kris@gtk.org>
1909
1910         Small refactoring. (#340428, Paolo Borelli).
1911
1912         * gtk/gtkliststore.c (gtk_list_store_set_valist_internal),
1913         (gtk_list_store_insert_with_valuesv): refactor code to determine
1914         iter compare func into gtk_list_store_get_compare_func().
1915
1916         * gtk/gtktreestore.c (gtk_tree_store_set_valist_internal),
1917         (gtk_tree_store_insert_with_valuesv): likewise.
1918
1919 2006-05-27  Kristian Rietveld  <kris@gtk.org>
1920
1921         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_arrow): really fix
1922         #333284.
1923
1924 2006-05-27  Kristian Rietveld  <kris@gtk.org>
1925
1926         Editable cell window placement and RTL fixes.
1927
1928         * gtk/gtktreeview.c (gtk_tree_view_button_press),
1929         (gtk_tree_view_bin_expose), (gtk_tree_view_get_cell_area),
1930         (gtk_tree_view_create_row_drag_icon): Only add indentation to x
1931         if !rtl,
1932         (gtk_tree_view_create_row_drag_icon): Iterate over columns in reverse
1933         direction if in rtl mode.
1934
1935         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
1936         horizontal_separator is not part of the real background area width,
1937         add 2 * focus_line_width to real_cell_area.x and not
1938         real_background_area.x, fix up event coordinates check in the
1939         PACK_END loop, also set depth to zero at the end of the PACK_END
1940         loop,
1941         (_gtk_tree_view_get_neighbor_sizes): also add column_spacing for each
1942         visible cell.
1943
1944 2006-05-26  Matthias Clasen  <mclasen@redhat.com>
1945
1946         * gtk/stock-icons/24/gtk-orientation-landscape.png:
1947         * gtk/stock-icons/24/gtk-orientation-portrait.png:
1948         * gtk/stock-icons/24/gtk-orientation-reverse-landscape.png:
1949         * gtk/stock-icons/24/gtk-orientation-reverse-portrait.png:
1950         Cleaned up icons by Diana Fong.
1951
1952 2006-05-26  Kristian Rietveld  <kris@gtk.org>
1953
1954         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_arrow): queue a redraw
1955         for the full width of the row, not just the width we got allocated.
1956         (Fixes #333284, reported by Benjamin Berg).
1957
1958 2006-05-26  Kristian Rietveld  <kris@gtk.org>
1959
1960         * gtk/gtktreeview.c (gtk_tree_view_top_row_to_dy): set dy to
1961         page_size + height in the event dy + page_size is about to become
1962         bigger than height.
1963
1964 2006-05-25  Matthias Clasen  <mclasen@redhat.com>
1965
1966         * gtk/gtk.symbols:
1967         * gtk/gtkstatusicon.h:
1968         * gtk/gtkstatusicon.c (gtk_status_icon_get_geometry):
1969         New function that can be used to e.g. position 
1970         notification bubbles wrt to the status icon.  
1971         (#341450, Christian Persch, Havoc Pennington)
1972
1973 2006-05-25  Matthias Clasen  <mclasen@redhat.com>
1974
1975         Make GTK+ work as an untrusted X client. (#136571,
1976         Ed Catmur)
1977
1978         * gdk/x11/gdkdisplay-x11.h:
1979         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): When 
1980         opening a display, determine if we are untrusted.
1981         
1982         * gdk/x11/gdkdisplay-x11.c (gdk_notify_startup_complete): 
1983         Just bail out when we are untrusted.
1984
1985         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Work around
1986         a bug in the Xorg XSECURITY implementation by coercing
1987         toplevel InputOnly windows to InputOutput.
1988
1989         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_get_pointer): 
1990         (_gdk_windowing_window_get_pointer): 
1991         When untrusted, call XQueryPointer on an auxiliary
1992         window, not on the root window.
1993         
1994         * gdk/x11/gdkwindow-x11.c (_gdk_windowing_window_at_pointer): 
1995         If untrusted, loop through all GDK-aware toplevels on all
1996         screens in the hope we hit one containing the pointer; 
1997         then use that as the basis of the current XQueryPointer 
1998         child recursion.
1999
2000         * gdk/x11/gdkmain-x11.c (gdk_pointer_grab): 
2001         (gdk_keyboard_grab): Ignore failed grabs when untrusted.
2002
2003         * gdk/x11/gdkdnd-x11.c (gdk_window_cache_new): Only
2004         cache our own toplevels when untrusted.
2005
2006         * gdk/x11/gdkdnd-x11.c (motif_send_enter): Don't try
2007         to do Motif DND as untrusted client.
2008
2009         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window): 
2010         (gdk_x11_screen_get_window_manager_name): 
2011         (gdk_x11_screen_supports_net_wm_hint): 
2012         Bail out early if untrusted.
2013         
2014         * gtk/gtkcolorsel.c (grab_color_at_mouse): If getting 
2015         the color under the pointer by screenshooting the root 
2016         window fails, it tries to get the color from our own 
2017         window.
2018
2019         * gtk/gtkcolorsel.c (get_screen_color): Make the
2020         dropper_grab_widget a child of the dialog, not a 
2021         toplevel.
2022
2023         * gtk/gtkinvisible.c (gtk_invisible_realize): Respect
2024         a parent window that has been set before realizing.
2025
2026         * gtk/gtkwidget.c (gtk_widget_get_parent_window): 
2027         Always return a previously set parent window.
2028         
2029 2006-05-24  Matthias Clasen  <mclasen@redhat.com>
2030
2031         * gtk/gtkfontbutton.c (gtk_font_button_clicked): 
2032         * gtk/gtkcolorbutton.c (gtk_color_button_clicked): 
2033         Fix the handling of modality by copying what
2034         GtkFileChooserButton does.  (#342754, Yevgen Muntyan)
2035         
2036         * gtk/gtkprintunixdialog.c (create_main_page): Make
2037         the range entry insensitive if another range option
2038         is selected.  (#342783, Caolan McNamara)
2039         (update_dialog_from_capabilities): Make the collate
2040         check button insensitive unless multiple copies are
2041         printed  (#342781, Caolan McNamara)
2042
2043         * gtk/gtkwidget.c: Remove style properties when a widget
2044         class gets finalized, to make style properties work in
2045         dynamic types.  (#342513, Christian Persch)
2046
2047 2006-05-24  Henrique Romano  <henrique@async.com.br>
2048
2049         * gtk/gtkcellview.c: (gtk_cell_view_class_init),
2050         (gtk_cell_view_get_property), (gtk_cell_view_set_property):
2051         Add model property for GtkCellView, part of #172535.
2052
2053 2006-05-24  Matthias Clasen  <mclasen@redhat.com>
2054
2055         * gtk/gtkprintoperation.h: 
2056         * gtk/gtkprintoperation-private.h: 
2057         * gtk/gtk.symbols:
2058         * gtk/gtkprintoperation.c: Add a custom-tab-label property.
2059         
2060         * gtk/gtkprintoperation-unix.c (get_print_dialog): Use it
2061         here.  (#342752, Yevgen Muntyan)
2062
2063 2006-05-24  Alexander Larsson  <alexl@redhat.com>
2064
2065         * gtk/gtk.symbols:
2066         * gtk/gtkprintunixdialog.[ch]:
2067         Add gtk_print_unix_dialog_set_manual_capabilities that controls
2068         what widgets to enable in the dialog depending on the apps
2069         capabilities.
2070         
2071         * gtk/gtkprintbackend.[ch]:
2072         * gtk/gtkprinter-private.h:
2073         * gtk/gtkprinter.c:
2074         * gtk/gtkprintjob.h:
2075         Add printer_get_capabilities to backend.
2076         Move some fallback calls to the printbackend base class.
2077         
2078         * gtk/gtkprintoperation-unix.c:
2079         Set manual capabilities
2080         
2081         * modules/printbackends/cups/gtkprintbackendcups.c:
2082         Implement get_capabilities
2083         
2084         * modules/printbackends/lpr/gtkprintbackendlpr.c:
2085         * modules/printbackends/pdf/gtkprintbackendpdf.c:
2086         Move some methods to baseclass.
2087
2088 2006-05-23  Matthias Clasen  <mclasen@redhat.com>
2089
2090         * gtk/gtkprintoperation.c (print_pages): Do the begin-print
2091         emission in the idle, so that the print dialog goes away
2092         before begin-print.
2093
2094 2006-05-23  Matthias Clasen  <mclasen@redhat.com>
2095
2096         * gtk/gtk.symbols: 
2097         * gtk/gtkprintoperation.h: 
2098         * gtk/gtkprintoperation.c: Add a boolean show-progress  
2099         property, and show a progress dialog if it is set to TRUE.
2100
2101         * gtk/gtkprintoperation.c (pdf_end_run): 
2102         * gtk/gtkprintoperation-win32.c (win32_end_run): 
2103         * gtk/gtkprintoperation-unix.c (unix_end_run): 
2104         * gtk/gtkprintoperation-private.h: Add a cancelled
2105         parameter to end_run, and call it even if the print
2106         operation was cancelled.
2107
2108 2006-05-23  Alexander Larsson  <alexl@redhat.com>
2109
2110         * gtk/gtkprinteroptionwidget.c (filesave_changed_cb):
2111         Allow absolute filenames in filename entry.
2112         Patch from Yevgen Muntyan (#341679)
2113
2114 2006-05-23  Alexander Larsson  <alexl@redhat.com>
2115
2116         * gtk/gtk.symbols:
2117         * gtk/gtkprintunixdialog.[ch]:
2118         Add gtk_print_unix_dialog_add_custom_tab
2119         
2120         * gtk/gtkprintoperation-unix.c:
2121         Implement custom widgets for unix.
2122         Fix some warnings by including cairo-ps/pdf.h
2123         
2124         * gtk/gtkprintoperation-win32.c:
2125         Mark string for translation.
2126
2127 2006-05-22  Matthias Clasen  <mclasen@redhat.com>
2128
2129         * gtk/gtkprintoperation.c (gtk_print_operation_class_init): 
2130         Fix docs.
2131
2132 2006-05-22  Alexander Larsson  <alexl@redhat.com>
2133
2134         * gtk/gtkmain.c:
2135         Make sure grab-notify is emitted on toplevels as well as 
2136         child widgets.
2137
2138         * gtk/Makefile.am:
2139         * gtk/gtkwin32embedwidget.[ch]
2140         Add new widget used for win32 port to embed gtk+
2141         widgets in windows dialog.
2142
2143         * gtk/gtkmarshalers.list:
2144         Add POINTER:VOID
2145
2146         * gtk/gtkprintoperation-private.h:
2147         * gtk/gtkprintoperation.[ch]:
2148         Generic support for custom widgets in print dialog.
2149
2150         * gtk/gtkprintoperation-win32.c:
2151         Implement custom widget support for win32.
2152
2153         * tests/print-editor.c:
2154         Allow setting of font using custom widgets in the print dialog.
2155
2156 2006-05-22  Behdad Esfahbod  <behdad@gnome.org>
2157
2158         Rollback the following changes, to fix it the proper way in Pango:
2159
2160         * gdk/gdkinternals.h:
2161         * gdk/gdkscreen.c (gdk_screen_class_init), (gdk_screen_finalize),
2162         (update_fontmap_resolution), (gdk_screen_set_resolution):  Add new
2163         function _gdk_screen_get_font_map() and have one fontmap per screen,
2164         with the correct resolution set on it.
2165
2166         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Use
2167         _gdk_screen_get_font_map() instead of setting resolution on the
2168         PangoCairoContext.  (#342529)
2169
2170 2006-05-22  Emmanuele Bassi  <ebassi@gnome.org>
2171
2172         * gtk/gtkrecentmanager.h:
2173         * gtk/gtkrecentmanager.c
2174         (gtk_recent_info_get_application_info): Don't mask "time" with
2175         the "time" argument.
2176
2177 2006-05-22  Matthias Clasen  <mclasen@redhat.com>
2178
2179         * gdk/gdkcolor.h: gdk_color_parse returns boolean, not int.
2180         (#342569, Masatake Yamato)
2181
2182         * gtk/gtkprintunixdialog.c (dialog_set_scale): Don't return
2183         a value from a void function.
2184
2185         * gtk/gtkprinter.c (_gtk_printer_prepare_for_print) 
2186         (_gtk_printer_get_settings_from_options) 
2187         (_gtk_printer_request_details): Don't return values from void
2188         functions.
2189
2190         * gtk/gtkrecentchooserutils.c (delegate_unselect_uri): Don't
2191         return a value from a void function.
2192
2193         * gtk/gtkfilesystem.c (gtk_file_system_cancel_operation): Don't
2194         return a value from a void function.  Also, don't put 
2195         semicolons behind G_DEFINE_TYPE. (#342543)
2196
2197         * gtk/gtkwidget.c (gtk_widget_class_init): Add docs
2198         for new style properties.  (#342535, Mart Raudsepp)
2199
2200         * gdk/x11/gdkscreen-x11.c: Remove _gdk_x11_screen_request_cm_notification
2201
2202         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Directly call 
2203         gdk_display_request_selection_notification. 
2204
2205         * gdk/x11/gdkdisplay-x11.c: Several cleanups.
2206         
2207 2006-05-21  Behdad Esfahbod  <behdad@gnome.org>
2208
2209         * gdk/gdkinternals.h:
2210         * gdk/gdkscreen.c (gdk_screen_class_init), (gdk_screen_finalize),
2211         (update_fontmap_resolution), (gdk_screen_set_resolution):  Add new
2212         function _gdk_screen_get_font_map() and have one fontmap per screen,
2213         with the correct resolution set on it.
2214
2215         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Use
2216         _gdk_screen_get_font_map() instead of setting resolution on the
2217         PangoCairoContext.  (#342529)
2218
2219 2006-05-22  Tor Lillqvist  <tml@novell.com>
2220
2221         * gtk/gtkfilesystemwin32.c: Make it compile again. Doesn't work
2222         properly yet, though. There is lots of commonality between this
2223         file and gtkfilesystemunix.c that should really be factored out.
2224
2225 2006-05-19  Matthias Clasen  <mclasen@redhat.com>
2226
2227         * gtk/gtkpaned.c (gtk_paned_compute_position): Avoid warnings
2228         if a child is NULL.  (#342007, Patrick Monnerat)
2229         
2230         * gtk/gtk.symbols: 
2231         * gtk/gtkprintoperation.h: 
2232         * gtk/gtkprintoperation.c (gtk_print_operation_cancel): New function
2233         to cancel a running print operation.
2234
2235         * gtk/gtkprintoperation-private.h (struct _GtkPrintOperationPrivate): 
2236         Add a cancelled flag, use g types, use bitfields.
2237
2238         * gtk/gtkprintoperation.c (print_pages): Clean up after the idle
2239         in the synchronous case.
2240
2241         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): Fix a 
2242         boundary case in scrolling where a tab was not shown.  (#168105,
2243         Hiroyuki Ikezoe, patch by Kouhei Sutou)
2244
2245 2006-05-19  Damon Chaplin  <damon@gnome.org>
2246
2247         * gtk/gtkfontsel.c (gtk_font_selection_init): use
2248         atk_relation_add_target() to add the targets, since it sets up weak
2249         references to avoid crashes. (#305530)
2250
2251 2006-05-18  Matthias Clasen  <mclasen@redhat.com>
2252
2253         * gtk/gtkprintoperation.h: 
2254         * gtk/gtkprintoperation.c: Add a GtkPrintOperation:: paginate signal 
2255         that gets emitted to paginate a document in chunks.
2256
2257         * gtk/gtkprintoperation-private.h: 
2258         * gtk/gtkmarshalers.list: Add necessary glue.
2259
2260         * gtk/gtkcalendar.c (gtk_calendar_drag_motion): Don't produce
2261         a stuck drag if shift is held.  (#341734, Sebastien Bacher) 
2262
2263         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display): 
2264         Always set protocol.  (#342003, Tommi Komulainen)
2265
2266         * gtk/gtkimage.c (icon_theme_changed): Only unref the pixbuf
2267         if the image has the appropriate storage type.  (#342096, Tommi
2268         Komulainen)
2269
2270         * configure.in: Actually require GLib 2.11
2271         
2272         * gtk/gtkentry.c (gtk_entry_drag_data_received): Make drops
2273         end up at the right spot.  (#342072,  Yevgen Muntyan)
2274
2275 2006-05-18  Michael Natterer  <mitch@imendio.com>
2276
2277         * gtk/gtkrange.c: canonicalize the name of the "activate-slider"
2278         style property and use GTK_PARAM_READABLE instead of
2279         G_PARAM_READABLE. Moved one "activate_slider" variable to the
2280         local scope its used in.
2281
2282 2006-06-18  Michael Emmel  <mike.emmel@gmail.com>
2283
2284         * gdk/directfb/gdkscreen-directfb.c: 
2285         * added gdk_screen_is_composited to compile
2286         * Bug 342091
2287
2288 2006-05-17  Alexander Larsson  <alexl@redhat.com>
2289
2290         * gtk/gtkprintoperation-win32.c:
2291         Update to changed APIs.
2292
2293 2006-05-16  Matthias Clasen  <mclasen@redhat.com>
2294
2295         * configure.in: Bump version
2296
2297         * === Released 2.9.1 ====
2298
2299         * configure.in: Reset interface age
2300         
2301         * NEWS: Updates
2302
2303 Tue May 16 12:36:25 2006  Søren Sandmann  <sandmann@redhat.com>
2304
2305         * gtk/gtktoolbar.c (gtk_toolbar_size_allocate): Move getting the
2306         property out of the loop, and rename the variable 'max_expand'.
2307
2308         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Fix the decription
2309         for the max-child-expand property. 
2310
2311 2006-05-16  Matthias Clasen  <mclasen@redhat.com>
2312
2313         * gtk/gtkprinter.c (gtk_printer_class_init): 
2314         * gtk/gtkprintjob.c (gtk_print_job_class_init): 
2315         * gtk/gtkprintoperation.c (gtk_print_operation_class_init): 
2316         Cosmetic cleanups.
2317
2318         * gtk/gtkpagesetupunixdialog.c (populate_dialog): Add labels
2319         for page orientations, also add the fourth one.  (#339589)
2320
2321         * gtk/stock-icons/24/gtk-orientation-reverse-portrait.png: New
2322         icon.
2323         
2324         * gtk/Makefile.am: Add it here.
2325         
2326         * gtk/gtkstock.[hc]: Add stock items for the page orientations.
2327
2328 2006-05-16  Michael Natterer  <mitch@imendio.com>
2329
2330         * gtk/gtktoolbar.c: added "max-child-expand" style property which
2331         limits the space taken by expanding tool items. Fixes bug #340722.
2332
2333 2006-05-16  Kristian Rietveld  <kris@imendio.com>
2334
2335         * gtk/gtkpathbar.c (gtk_path_bar_dispose): cancel all pending handles
2336         in the button list. (Fixes #341035, reported by William Jon McCann).
2337
2338 2006-05-16  Kristian Rietveld  <kris@imendio.com>
2339
2340         * gtk/gtkfilechooserdefault.c
2341         (show_and_select_paths_finished_loading): put the newly selected
2342         row(s) the in the middle of the view,
2343         (update_current_folder_get_info_cb),
2344         (gtk_file_chooser_default_update_current_folder): make sure reload
2345         state is set to RELOAD_HAS_FOLDER while loading the new folder,
2346         so _map() won't start loading the current working directory. (Fixes
2347         #341028, reported by Michael Natterer).
2348
2349 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
2350
2351         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix
2352         an RTL problem with toggles in expander columns. 
2353         (#341896, Roozbeh Pournader) 
2354
2355 Mon May 15 15:12:05 2006  Søren Sandmann  <sandmann@redhat.com>
2356
2357         * gtk/gtklayout.c (gtk_layout_realize),
2358         * gtk/gtkiconview.c (gtk_icon_view_realize),
2359         * gtk/gtktreeview.c (gtk_tree_view_realize): Set the background of
2360         the clip windows to NULL, since they are generally invisible and
2361         don't have EXPOSURE set, which means they temp-unvlicker code
2362         doesn't apply to them.
2363
2364         * gdk/x11/gdkgeometry-x11.c (_gdk_window_move_resize_child): Unset
2365         the background of the parent window during resizing. Invalidate
2366         the uncoered area of the parent window. Bug 341332.
2367
2368 2006-05-15  Richard Hult  <richard@imendio.com>
2369
2370         * gdk/quartz/gdkevents-quartz.c (_gdk_events_init): Remove obsolete 
2371         comment.
2372         (poll_func): Remove assert and add a comment on how to fix properly.
2373         (gdk_events_pending): Implement.
2374
2375 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
2376
2377         * gtk/gtkprintoperation.c: Reverse the order of
2378         ranges when printing in reverse.  (#341578)
2379
2380 2006-05-15  Alexander Larsson  <alexl@redhat.com>
2381         
2382         * gtk/gtkprintjob.[ch]:
2383         Added gtk_print_job_set/get_track_print_status
2384
2385         * gtk/gtkprintoperation-private.h:
2386         * gtk/gtkprintoperation.[ch]:
2387         Add gtk_print_operation_set_track_print_status.
2388         
2389         * gtk/gtkprintoperation-unix.c:
2390         Implement track_print_status on unix
2391         
2392         * gtk/gtkprintoperation-win32.c:
2393         Implement track_print_status on win32
2394         
2395         * gtk/gtk.symbols:
2396         Added symbols
2397         
2398         * modules/printbackends/cups/gtkprintbackendcups.c:
2399         Implement track_print_status for cups
2400         
2401         * tests/print-editor.c:
2402         Test track_print_status.
2403
2404 2006-05-15  Matthias Clasen  <mclasen@redhat.com>
2405
2406         * gtk/gtkprintoperation.c: Do page rendering in an idle when
2407         running asynchronous. 
2408
2409 2006-05-15  Alexander Larsson  <alexl@redhat.com>
2410
2411         * gtk/gtk.symbols: 
2412         * gtk/gtkprintbackend.[ch]: (_gtk_print_backend_create):
2413         Never unload print backends.
2414         Remove gtk_print_backend_unref_at_idle.
2415
2416         * modules/printbackends/cups/gtkprintbackendcups.c:
2417         (cups_dispatch_watch_finalize):
2418         Don't use the unref_at_idle hack since that caused
2419         deadlocks. Instead we never unload print backends, which
2420         is not really a big problem.
2421
2422 2006-05-14  Murray Cumming  <murrayc@murray.com>
2423
2424         * gtk/gtkframe.c: Restored the / at the start of the comment 
2425         block, to fix the build.
2426
2427 2006-05-13  Matthias Clasen  <mclasen@redhat.com>
2428
2429         * gtk/*.c:
2430         * gdk-pixbuf/*.c:
2431         * gdk/*.c: Remove erroneous ; after G_DEFINE_TYPE 
2432         macros.  (#341692, Yevgen Muntyan)
2433
2434         * gtk/gtktextbtree.c: 
2435         * gtk/gtktextview.c: Move some asserts to the right 
2436         place.  (#341661, #341665, Pascal Terjan)
2437
2438 2006-05-12  Matthias Clasen  <mclasen@redhat.com>
2439
2440         * gtk/gtknotebook.c: Fix some corner cases in the size
2441         allocation logic for tabs.  (#341577, Carlos Garnacho Parro)
2442
2443         * gtk/gtkprintunixdialog.c: Some fixes to capitalization of
2444         labels.  (#341558, Dennis Cranston)
2445
2446         * gtk/gtknotebook.c: Handle tab_label being NULL better.
2447         (#341455, William Jon McCann, patch by Carlos Garnacho Parro)
2448
2449         * gtk/gtkruler.c: Reinstate the ruler metrics strings, since
2450         they are used by glade, pointed out by Damon Chaplin.
2451
2452 2006-05-12  Alexander Larsson  <alexl@redhat.com>
2453
2454         * gtk/gtkwindow.c:
2455         Better handling of the window group on unsetting transient-for, since
2456         the transient parent might have changed group.
2457         
2458         * gtk/gtkmenu.c:
2459         Combine the handling of transient for the attach-widget and the
2460         window group handling by setting transient-to on popup/popdown only.
2461
2462         See bug #340401
2463         
2464         * gtk/gtkprintunixdialog.c:
2465         Remove part of old fix no longer needed.
2466
2467 2006-05-12  Alexander Larsson  <alexl@redhat.com>
2468
2469         * gtk/gtkprintoperation.c (gtk_print_operation_set_n_pages):
2470         Update g_object_notify to new property name.
2471
2472 2006-05-12  Alexander Larsson  <alexl@redhat.com>
2473
2474         * gtk/gtkrecentmanager.c:
2475         Fix build errors.
2476         
2477         * gtk/gtk.symbols:
2478         * demos/gtk-demo/printing.c:
2479         * gtk/gtkprintoperation-win32.c:
2480         * gtk/gtkprintoperation.[ch]:
2481         * gtk/gtkprintsettings.[ch]: 
2482         * modules/printbackends/cups/gtkprintbackendcups.c:
2483         * modules/printbackends/lpr/gtkprintbackendlpr.c:
2484         * modules/printbackends/pdf/gtkprintbackendpdf.c:
2485         * tests/print-editor.c:
2486         * tests/testnouiprint.c:
2487         * tests/testprint.c:
2488         * tests/testprintfileoperation.c:
2489         Rename functions from nr_of_pages to n_pages, and num_copies to
2490         n_copies to match other gtk+ names.
2491         
2492         * gtk/gtkmenu.c: (gtk_menu_popdown):
2493         Only re-set window group on popdown if we set it on popup (i.e.
2494         if there is a parent menu shell).
2495         Fixed part of bug #340401
2496
2497         * gtk/gtkwindow.c:
2498         Add (contruct) property "transient-for" to GtkWindow. This
2499         is needed for the fix to bug #340401.
2500         
2501         * gtk/gtkprintunixdialog.c:
2502         Use the transient-for property on construction and populate the dialog
2503         with widgets after that. This fixes bug #340401.
2504         More n_pages renames.
2505
2506 2006-05-11  Emmanuele Bassi  <ebassi@cvs.gnome.org>
2507
2508         * gtk/gtkrecentmanager.h: Remove the error parameter to the
2509         gtk_recent_manager_add() and gtk_recent_manager_add_full()
2510         functions; remove the unneeded error codes from the error
2511         enumeration.  (#336774).
2512
2513         * gtk/gtkrecentmanager.c: Make gtk_recent_manager_add() and
2514         gtk_recent_manager_add_full() complain loudly about wrong or
2515         missing meta-data, instead of using a GError.  (#336774)
2516
2517 2006-05-11  Matthias Clasen  <mclasen@redhat.com>
2518
2519         * demos/gtk-demo/Makefile.am (demos): Add it here.
2520
2521         * demos/gtk-demo/printing.c (do_printing): Add a GtkPrintOperation demo.
2522
2523 2006-05-11  Carlos Garcia Campos  <carlosgc@gnome.org>
2524
2525         * gtk/gtkfilechooserembed.c: use I_() instead of _() when creating
2526         response-requested signal. Fixes bug #341416
2527
2528 2006-05-11  Matthias Clasen  <mclasen@redhat.com>
2529
2530         * gdk/gdkkeysyms.h: Regenerated from Xorg 7.1 keysyms.h, using
2531         gdkkeysyms-update.pl.
2532
2533         * gdk/gdkkeysyms-update.pl: Script to sync gdkkeysyms.h
2534         with Xorg.  (#321896, Simos Xenitellis)
2535
2536         * gdk/Makefile.am (EXTRA_DIST): Add gdkkeysyms-update.pl
2537
2538         * gdk/gdkkeysyms.h: Consistently use lowercase in hex numbers.
2539
2540 2006-05-10  Carlos Garnacho  <carlosg@gnome.org>
2541
2542         * gtk/gtknotebook.c: check that tab_label is not NULL before checking
2543         that it's notebook's child. Closes #341247.
2544
2545 Wed May 10 15:57:53 2006  Tim Janik  <timj@imendio.com>
2546
2547         * applied unified patch for configurable scroll arrow sizes from
2548         bug #333632 and bug #325282.
2549
2550         * gtk/gtkwidget.c (gtk_widget_class_init): added ::scroll-arrow-hlength
2551         and ::scroll-arrow-vlength style properties. fixed upper limit for
2552         ::separator-width and ::separator-height to be MAXINT.
2553
2554         * gtk/gtkmenu.c: use GtkWidget::scroll-arrow-vlength to determine the
2555         scroll arrow size, instead of using a hard coded constant.
2556
2557         * gtk/gtknotebook.c: use GtkWidget::scroll-arrow-vlength and
2558         GtkWidget::scroll-arrow-hlength to determine scroll arrow sizes.
2559         added GtkNotebook::arrow-spacing style property to configure the
2560         spacing between scroll arrows.
2561
2562 2006-05-10  Matthias Clasen  <mclasen@redhat.com>
2563
2564         * gtk/gtkpagesetupunixdialog.c: Don't include langinfo.h
2565         unconditionally.  (#341217)
2566
2567 2006-05-10  John (J5) Palmieri  <johnp@redhat.com>
2568
2569         * modules/printbackends/cups/gtkprintbackendcups.c:
2570         make the _CUPS_MAP_ATTR_STR macro not dup the string so we don't
2571         leak 
2572
2573 2006-05-10  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>
2574
2575         * gtk/paper_names.c: Correct #11 Envelope typo.
2576
2577 2006-05-09  Tor Lillqvist  <tml@novell.com>
2578
2579         * gdk/win32/gdkevents-win32.c (doesnt_want_scroll): Look at both
2580         GDK_SCROLL_MASK and GDK_BUTTON_PRESS_MASK. (#139628)
2581
2582 2006-05-09  Matthias Clasen  <mclasen@redhat.com>
2583
2584         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add a :cursor-position
2585         property.  (#334412, Yevgen Muntyan)
2586
2587         * gtk/gtk.symbols:
2588         * gtk/gtkmessagedialog.[hc]: Add an image property.  (#337306, Alex Graveley)
2589
2590 2006-05-09  Carlos Garnacho  <carlosg@gnome.org>
2591
2592         * gtk/gtknotebook.c: create an independent GdkWindow to behave nicely
2593         during reordering with tab_labels with their own window, also use
2594         gtk_drag_set_icon_widget() for the DnD icon to avoid drawing garbage
2595         from offscreen regions. Closes bug #335707.
2596         (gtk_notebook_tab_space), (gtk_notebook_calculate_shown_tabs),
2597         (gtk_notebook_calculate_tabs_allocation): new functions, 
2598         gtk_notebook_pages_allocate() functionality has been splitted into
2599         these.
2600
2601 2006-05-08  Matthias Clasen  <mclasen@redhat.com>
2602
2603         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_add_shortcut_folder): 
2604         * gtk/gtktextbufferserialize.c (parse_attr_element): Fix some typos in
2605         messages.  (#341091, Tino Meinen)
2606
2607         * gtk/gtkstatusicon.c: Some cleanups.
2608         
2609         * gtk/gtkstatusicon.c (gtk_status_icon_get_property): Silently return
2610         NULL if the storage type of the image does not match.  (#340516, Christian
2611         Persch)
2612
2613         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Elide (_x) in the middle
2614         of the string, too.  (#323956, Abel Cheung)
2615
2616         * gtk/gtkuimanager.c (update_node): Fix tooltips. (#340527, Jon-Kare Hellan)
2617
2618         * configure.in: Require Pango 1.13.0
2619
2620         * gtk/gtknotebook.c: 
2621         * gtk/gtkwindow.c: 
2622         * gtk/gtkrange.c: Fix doc typos.
2623
2624 2006-05-08  Francisco Javier F. Serrador  <serrador@cvs.gnome.org>
2625
2626         * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_class_init):
2627         Corrected a duplicate word.
2628
2629         * gtk/gtkrecentmanager.c (gtk_recent_manager_add_full): Corrected
2630         a typo.
2631
2632 2006-05-07  Matthias Clasen  <mclasen@redhat.com>
2633
2634         * gtk/gtkrange.c (gtk_range_key_press):  Chain up, to
2635         make bindings work.  Noticed by Al Puzzuoli.
2636         
2637 2006-05-07  Matthias Clasen  <mclasen@redhat.com>
2638
2639         * gtk/gtkseparator.c: 
2640         * gtk/gtkscrollbar.c: 
2641         * gtk/gtkpaned.c: 
2642         * gtk/gtkoldeditable.c: 
2643         * gtk/gtkmisc.c: 
2644         * gtk/gtkitem.c: 
2645         * gtk/gtkimcontext.c: 
2646         * gtk/gtkrange.c:
2647         * gtk/gtkscale.c: Make types abstract again.
2648
2649 2006-05-06  Matthias Clasen   <mclasen@redhat.com>
2650         
2651         * gdk/gdkwindow.c (gdk_window_get_toplevels): Fix a wrong
2652         reference in the docs.  (#340870, Ed Catmur)
2653
2654 2006-05-05  Christian Persch  <chpe@cvs.gnome.org>
2655
2656         * modules/printbackends/cups/gtkprintbackendcups.c:
2657         * modules/printbackends/lpr/gtkprintbackendlpr.c:
2658         * modules/printbackends/pdf/gtkprintbackendpdf.c: Always register
2659           the type with the type module, even if it had been registered
2660           before. Fixes bug #340676.
2661
2662 2006-05-05  Matthias Clasen  <mclasen@redhat.com>
2663
2664         * gtk/gtkprintunixdialog.c: Use theme colors for 
2665         the page layout indicator, and do RTL flipping for
2666         the collate indicator.
2667
2668 2006-05-05  Matthias Clasen  <mclasen@redhat.com>
2669
2670         * configure.in: Require GLib 1.11.0
2671
2672         * configure.in: Bump version
2673
2674         * === Released 2.9.0 ===
2675
2676         * configure.in: Require cairo 1.1.6
2677
2678         * gtk/Makefile.am: Tweaks to make distcheck work.
2679
2680 2006-05-05  Alexander Larsson  <alexl@redhat.com>
2681
2682         * gtk/gtkprintoperation-unix.c:
2683         Implement per-page paper sizes.
2684         
2685         * gtk/gtkprintoperation.c:
2686         Implement per-page paper sizes for pdf output.
2687         Make gtk_print_operation_set_pdf_target() work again
2688         
2689         * tests/Makefile.am:
2690         * tests/testprint.c:
2691         * tests/testprintfileoperation.[ch]:
2692         Add more test code for printing support.
2693         This tests per-page paper sizes & orientation and
2694         deriving from GtkPrintOperation.
2695
2696 2006-05-04  Michael Emmel  <mike.emmel@gmail.com>
2697
2698         * gdk/directfb/gdkkeys-directfb.c: DIKI_ALTGR to compile with
2699         directfb 0.9.25.1
2700
2701 2006-05-04  Michael Natterer  <mitch@imendio.com>
2702
2703         * gtk/gtk.symbols: remove gtk_printer_set_backend so it compiles
2704         again.
2705
2706 2006-05-04  Alexander Larsson  <alexl@redhat.com>
2707
2708         * gtk/gtk.symbols:
2709         Added new symbols
2710         
2711         * gtk/gtkpagesetupunixdialog.c:
2712         * gtk/gtkprintunixdialog.c:
2713         Destroy backends when finalizing dialogs.
2714         Fix printer leak in selected_printer_changed.
2715         
2716         * gtk/gtkprintbackend.[ch]:
2717         Convert from interface to baseclass.
2718         Move printer hashtable here so that the baseclass can handle
2719         the slightly complicated ownership model.
2720         Add gtk_print_backend_destroy which runs the dispose method,
2721         causing the ref-cycles between the backend and its printers
2722         to be broken.
2723         Add gtk_print_backend_unref_at_idle().
2724         
2725         * gtk/gtkprinter.[ch]:
2726         GtkPrinter objects now ref their backend so that its always
2727         availible, since its needed for the printer object to work.
2728         This causes a reference-cycle that is broken using
2729         gtk_print_backend_destroy.
2730         Add gtk_printer_compare.
2731         
2732         * gtk/gtkprintoperation-private.h:
2733         * gtk/gtkprintoperation-unix.c:
2734         * gtk/gtkprintoperation.c:
2735         Implement !show_dialog for unix.
2736         Make sure the print data is fully spooled before returning
2737         from a sync run_dialog.
2738         
2739         
2740         * modules/printbackends/cups/gtkcupsutils.[ch]:
2741         Add gtk_cups_request_ipp_add_strings
2742         
2743         * modules/printbackends/cups/gtkprintbackendcups.c:
2744         * modules/printbackends/cups/gtkprintercups.c:
2745         * modules/printbackends/lpr/gtkprintbackendlpr.c:
2746         * modules/printbackends/pdf/gtkprintbackendpdf.c:
2747         Convert backends to derive instead of implementing interface.
2748         Move common code into baseclass.
2749         CUPS:
2750           Remove the printer polling in dispose, not finalize.
2751           In the cups watch, remove the backend at idle instead of
2752           immediately, since the unref can cause the module to be unloaded.
2753           Limit the number of printer attributes requested
2754           Get printer uri in initial printer listing so that we can use
2755           the printer object immediately.
2756         
2757         * tests/Makefile.am:
2758         * tests/testnouiprint.c:
2759         Add testcase for !show_dialog.
2760
2761 2006-05-04  Matthias Clasen  <mclasen@redhat.com>
2762
2763         * gtk/gtk.symbols:
2764         * gtk/gtkfilesystem.c:
2765         * gtk/gtkfilesystemunix.c:
2766         * gtk/gtkprintbackend.h:
2767         * gtk/gtkrecentchooserdefault.c:
2768         * gtk/gtkrecentchooserdefault.h:
2769         * gtk/paper_names_offsets.c: Make symbol list mstch reality.
2770         
2771         * gtk/Makefile.am: Fix a typo.
2772         
2773         * gdk/x11/Makefile.am (EXTRA_DIST): Add gdksettings.c
2774
2775 2006-05-03  Matthias Clasen  <mclasen@redhat.com>
2776
2777         * NEWS: Updates
2778
2779 2006-05-04  Murray Cumming <murrayc@murrayc.com>
2780
2781         * gtk/gtktreemodel.c: (gtk_tree_model_base_init): Changed the 
2782         language of the signals documentation slightly. Bug #340205.
2783
2784 2006-05-03  Federico Mena Quintero  <federico@novell.com>
2785
2786         Merged the federico-filename-entry branch, to fix bug #136541.
2787         Combined ChangeLogs:
2788
2789         2006-04-17  Federico Mena Quintero  <federico@novell.com>
2790
2791         * gtk/gtkfilechooserdefault.c (pending_select_paths_process):
2792         Oops, we *do* need to check that we are in OPEN mode before
2793         selecting the first row in the file list.  See
2794         https://bugzilla.novell.com/show_bug.cgi?id=166906
2795         (gtk_file_chooser_default_get_paths): If we are in the case for
2796         the file list, and the list has no selected rows, jump to the case
2797         for the filename entry.  This is so that
2798
2799                1. The user types a filename in the SAVE filename entry
2800                   ("foo.txt").
2801
2802                2. He then double-clicks on a folder ("bar") in the file
2803                   list.
2804
2805         will yield the expected "bar/foo.txt" selection.
2806
2807         2006-03-29  Federico Mena Quintero  <federico@novell.com>
2808
2809         * gtk/gtkpathbar.c (gtk_path_bar_init): Reduce the inter-button
2810         spacing to 0.
2811
2812         * gtk/gtkfilechooserdefault.c (browse_widgets_create): Make the
2813         location label bold.
2814
2815         2006-03-29  Federico Mena Quintero  <federico@novell.com>
2816
2817         * gtk/gtkfilechooserdefault.c (location_mode_set): Just change the
2818         location_mode field if we are in SAVE/CREATE_FOLDER modes.
2819         (gtk_file_chooser_default_get_paths): Get the path based on the
2820         currently focused widget, or the last-focused widget.  This is
2821         what we should have been doing in the beginning, but it worked out
2822         fine because we didn't have the possibility of a filename entry in
2823         OPEN mode.
2824         (gtk_file_chooser_default_should_respond): Handle the case where
2825         the last focused widget is the location_entry.
2826
2827         2006-03-28  Federico Mena Quintero  <federico@novell.com>
2828
2829         * gtk/gtkfilechoosersettings.[ch]: New files with a simple
2830         framework for saving/loading settings from the file chooser in
2831         $XDG_CONFIG_HOME/gtk-2.0/gtkfilechooser.
2832
2833         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_unmap):
2834         Save the current settings.
2835         (settings_save): New helper function.  We save the location_mode
2836         and show_hidden flags.
2837         (gtk_file_chooser_default_map): Load the settings.
2838         (settings_load): New helper function.
2839
2840         * gtk/gtkfilechooserentry.c
2841         (_gtk_file_chooser_entry_set_file_part): Oops, don't modify
2842         in_change.  Our handlers are what set the file_part, so they
2843         *must* be run when we modify the text.
2844
2845         2006-03-27  Federico Mena Quintero  <federico@novell.com>
2846
2847         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
2848         Removed the save_file_name_entry.  We'll make this be the same as
2849         the location_entry widget.
2850         (struct _GtkFileChooserDefault): Leave only location_button,
2851         location_entry_box, location_label, location_entry.  We'll use a
2852         single toggle button for the location entry, which will appear
2853         below the path bar.
2854         (struct _GtkFileChooserDefault): Added a
2855         processing_pending_selections flag.
2856
2857         * gtk/gtkfilechooserdefault.c (save_widgets_create): Destroy the
2858         old location_entry if necessary, and hide the location toggle
2859         widgets.
2860         (update_chooser_entry): In multiple selection mode, just clear the
2861         location_entry.
2862         (check_save_entry): Allow running in OPEN or SELECT_FOLDER modes
2863         if we are in LOCATION_MODE_FILENAME_ENTRY.
2864         (gtk_file_chooser_default_should_respond): Switch to a folder if
2865         the location_entry contains a folder name in OPEN and SAVE mode,
2866         not just SAVE mode.  If the entry doesn't contain a folder name,
2867         but is otherwise well-formed, and we are in OPEN mode, return that
2868         we should respond with that filename.
2869         (gtk_file_chooser_default_initial_focus): Focus the location_entry
2870         if appropriate.
2871         (browse_widgets_create): Create the location_entry_box and the
2872         location_label here.
2873         (update_appearance): Call location_mode_set() when switching back
2874         to OPEN/SELECT_FOLDER mode.  Hide the location_button when
2875         switching to SAVE/CREATE_FOLDER mode.
2876         (pending_select_paths_process): Turn the
2877         processing_pending_selections flag on and off around changes to
2878         the current selection.  Don't special-case OPEN mode anymore,
2879         since the new flag will take care of things in
2880         update_chooser_entry().
2881         (update_chooser_entry): Don't do anything if
2882         processing_pending_selections is TRUE.  This keeps the entry from
2883         being polluted when changing folders.
2884         (location_popup_handler): In OPEN/SELECT_FOLDER modes, toggle
2885         between the path bar and the entry.  In SAVE/CREATE_FOLDER modes, simply focus the
2886         location_entry.
2887         (update_from_entry): Removed.
2888         (location_entry_create): Removed.
2889         (open_location_cb): Removed.
2890         (file_list_build_popup_menu): Don't add an "Open _Location" menu item.
2891         (location_entry_set_initial_text): Don't do anything if
2892         current_folder is NULL.
2893
2894         * gtk/gtkfilechooserentry.c
2895         (_gtk_file_chooser_entry_set_file_part): Turn in_change on and off
2896         around the call to gtk_entry_set_text().  This makes completion
2897         not happen when the caller has explicitly set a name.
2898
2899         2006-03-24  Federico Mena Quintero  <federico@novell.com>
2900
2901         * gtk/gtkfilechooserprivate.h (struct _GtkFileChooserDefault):
2902         Added fields location_mode_box, location_pathbar_radio,
2903         location_filename_radio, location_widget_box, location_label,
2904         location_entry.  The radio buttons will switch between the pathbar
2905         and the location entry; the other boxes are for layout purposes.
2906         (enum LocationMode): New enum.
2907         (struct _GtkFileChooserDefault): Added a location_mode field.
2908
2909         * gtk/gtkfilechooserdefault.c (browse_widgets_create): Create the
2910         location radio buttons to switch between the pathbar and the
2911         location entry.  Pack the browse_path_bar in the new
2912         location_widget_box instead of a generic hbox.
2913         (location_buttons_create): New function.
2914         (gtk_file_chooser_default_init): Initialize impl->location_mode.
2915         (location_switch_to_path_bar): New function.
2916         (location_switch_to_filename_entry): New function.
2917
2918         * gtk/gtkfilechooserbutton.c (model_add_special): The display_name
2919         should not be const.
2920
2921 2006-05-03  Matthias Clasen  <mclasen@redhat.com>
2922
2923         * gtk/gtkprintunixdialog.c: Replace the xpm collate icons
2924         by cairo drawing that respects themes.
2925
2926         * gdk/quartz/Makefile.am (libgdk_quartz_la_SOURCES): Add
2927         missing files.  (#340533, Ludovic Rousseau)
2928
2929         * gtk/gtkprintunixdialog.c (draw_page_cb): Don't leak the
2930         cairo context here.  (#340522, Christian Persch)
2931
2932         * gtk/gtkprintoperation-unix.c (unix_finish_send): Don't
2933         use gtk_dialog_run for the error dialog, and improve the
2934         dialog in other ways.  (#340510, Christian Persch)
2935
2936         * gtk/gtkpagesetupunixdialog.c: Beautify the custom
2937         paper size dialog.  (#339590, patch by Christian Persch)
2938         
2939         * gtk/gtkaccessible.c:
2940         * gtk/gtkclipboard.c:
2941         * gtk/gtkfilefilter.c:
2942         * gtk/gtkimmodule.c:
2943         * gtk/gtkmenubar.c: More G_DEFINE_TYPE conversion.
2944
2945         * gtk/gtkwidget.c: Make GtkWidget abstract again.
2946
2947 2006-05-02  Matthias Clasen  <mclasen@redhat.com>
2948
2949         * gtk/*.c: Use G_DEFINE_TYPE and g_type_register_static_simple()
2950         where applicable, for ~5000 lines of code reduction. This also
2951         reduces the size of the data section by ~9k. The overall library
2952         sizes shrinks a bit less, since the text section gets a bit
2953         larger.
2954
2955 2006-05-02  Kristian Rietveld  <kris@imendio.com>
2956
2957         * gtk/gtktreeview.c (gtk_tree_view_row_inserted): set tmpnode to
2958         the return value of the _gtk_rbtree_insert* functions, since that
2959         is the node we really want to check for visibilty.
2960
2961 2006-05-02  Matthias Clasen  <mclasen@redhat.com>
2962
2963         * gtk/gtkprinter.[hc]: Don't use virtual as a parameter name.
2964         (#340394, Christian Persch)
2965
2966 2006-05-02  Christian Persch  <chpe@cvs.gnome.org>
2967
2968         * gtk/gtkpagesetupunixdialog.c:
2969         * gtk/gtkprintcontext.c: 
2970         * gtk/gtkprinter.c:
2971         * gtk/gtkprinteroptionwidget.c:
2972         * gtk/gtkprintjob.c:
2973         * gtk/gtkprintoperation-unix.c:
2974         * gtk/gtkprintoperation.c:
2975         * gtk/gtkprintunixdialog.c: Use a priv variable when accessing priv
2976           multiple times in the same function. Bug #340288.
2977
2978 2006-05-02  Michael Natterer  <mitch@imendio.com>
2979
2980         * gtk/gtklabel.c (gtk_label_set_line_wrap): added note about the
2981         inablity to do height-for-width text layout and suggest to use
2982         gtk_widget_set_size_request() for getting a label that wraps at
2983         some specific position.
2984
2985 2006-05-02  Kristian Rietveld  <kris@imendio.com>
2986
2987         * ChangeLog.gtk-async-file-chooser: added ChangeLog entries from
2988         the kris-async-branch.
2989
2990         * Makefile.am: updated EXTRA_DIST
2991
2992 2006-05-02  Alexander Larsson  <alexl@redhat.com>
2993
2994         * ChangeLog.gtk-printing: 
2995         * Makefile.am (EXTRA_DIST):
2996         Add ChangeLog.gtk-printing
2997
2998 2006-05-01  Matthias Clasen  <mclasen@localhost.localdomain>
2999
3000         * NEWS: Updates
3001
3002 2006-05-02  Kristian Rietveld  <kris@imendio.com>
3003
3004
3005         * configure.in: Up ABI version to 2.10.0 (by Matthias' request).
3006
3007 2006-05-01  Kristian Rietveld  <kris@imendio.com>
3008
3009         Merge of the GTK+ asynchronous file chooser branch.  Please see
3010         the kris-asynch-branch for more detailed ChangeLog entries.
3011
3012         * configure.in: increase binary version to 2.9.0.
3013
3014         * gtk/gtk.symbols:
3015         * gtk/gtkfilechooser.c:
3016         * gtk/gtkfilechooserbutton.c:
3017         * gtk/gtkfilechooserdefault.c:
3018         * gtk/gtkfilechooserdialog.c:
3019         * gtk/gtkfilechooserembed.c:
3020         * gtk/gtkfilechooserembed.h:
3021         * gtk/gtkfilechooserentry.c:
3022         * gtk/gtkfilechooserentry.h:
3023         * gtk/gtkfilechooserprivate.h:
3024         * gtk/gtkfilesystem.c:
3025         * gtk/gtkfilesystem.h:
3026         * gtk/gtkfilesystemmodel.c:
3027         * gtk/gtkfilesystemmodel.h:
3028         * gtk/gtkfilesystemunix.c:
3029         * gtk/gtkpathbar.c:
3030         * gtk/gtkpathbar.h:
3031         Merge from kris-async-branch.
3032
3033 2006-05-01  Matthias Clasen  <mclasen@redhat.com>
3034
3035         * NEWS: Updates
3036
3037 2006-04-30  Matthias Clasen  <mclasen@redhat.com>
3038
3039         * gtk/gtktreemodel.c (gtk_tree_model_base_init): Document
3040         GtkTreeModel signals.
3041
3042 2006-04-19  Michael Emmel  <mike.emmel@gmail.com>
3043
3044         * gdk/directfb/gdkdrawable-directfb.c: removed all subtracting one on
3045         clipping
3046
3047 2006-04-30  Kristian Rietveld  <kris@imendio.com>
3048
3049         Fix for #340200, spotted by Torsten Schoenfeld.
3050
3051         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): fix up logic
3052         calculating the level indentation,
3053         (gtk_tree_view_start_editing): remove code calculating the
3054         level indentation, since _get_cell_area() takes care of this for us.
3055
3056 2006-04-30  Matthias Clasen  <mclasen@redhat.com>
3057
3058         Fix problems with setting symbolic colors from rc files.
3059         (#338345, Benjamin Berg)
3060         
3061         * gtk/gtkrc.c (gtk_rc_settings_changed, gtk_rc_font_name_changed) 
3062         (gtk_rc_color_hash_changed, gtk_rc_reparse_all_for_settings): Don't
3063         freeze notification for settings changes while parsing; instead
3064         manually avoid recursion, and update the color hashes.
3065
3066 2006-04-30  Matthias Clasen  <mclasen@redhat.com>
3067
3068         * gtk/gtksettings.c (gtk_settings_class_init): Change the default
3069         value of the gtk-color-scheme setting to "".
3070
3071         * gtk/gtkprinteroption.c: 
3072         * gtk/gtkprinteroptionwidget.c: 
3073         * gtk/gtkprintunixdialog.c: Improve the print dialog layout,
3074         mark some more strings for translation.  (#340139, Christian Persch)
3075
3076         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Fix the definition
3077         of the ::size-changed signal, and improve its documentation.
3078         (#340112, Christian Persch)
3079
3080 2006-04-29  Behdad Esfahbod  <behdad@gnome.org>
3081
3082         * gtk/gtkwidget.c (gtk_widget_create_pango_layout)
3083         (gtk_widget_get/create_pango_context): Change colormap to font map in
3084         docs. (#340093)
3085
3086 2006-04-29  Matthias Clasen  <mclasen@redhat.com>
3087
3088         * gtk/gtk.symbols: 
3089         * gtk/gtkstatusicon.h: 
3090         * gtk/gtkstatusicon.c (gtk_status_icon_position_menu): Add a menu
3091         position function for use with popups on status icons.  (#334573, 
3092         Christian Persch)
3093
3094         * gtk/gtkwidget.c (gtk_widget_is_composited): Fix a C99ism.  (#340055,
3095         Kazuki Iwamoto)
3096
3097 2006-04-28  Matthias Clasen  <mclasen@redhat.com>
3098
3099         * gtk/gtkcellrenderertext.c (get_size): Use _static variants when
3100         copying and merging short-lived Pango layouts. (#340033, Morten Welinder)
3101
3102 2006-04-28  Behdad Esfahbod  <behdad@gnome.org>
3103
3104         * gtk/gtkwidget.c (gtk_widget_create_pango_layout): Fix typo in
3105         docs. (#340063)
3106
3107 2006-04-28  Matthias Clasen  <mclasen@redhat.com>
3108
3109         * gtk/gtktreeview.c (gtk_tree_view_drag_begin): Don't force
3110         the standard DND icon if the user has a custom DND source.  
3111         (#339522, Joe Wreschnig)
3112
3113 2006-04-28  Michael Natterer  <mitch@imendio.com>
3114
3115         * gtk/gtktextbuffer.c (create_clipboard_contents_buffer): keep a
3116         reference to the source buffer while the clipboard contents buffer
3117         exists, because it is needed for serializing the contents buffer.
3118         Makes copying from the contents buffer possible even after the
3119         resp. text view is destroyed (for example when there is a
3120         clipboard manager running on app exit) (bug #339195).
3121
3122 2006-04-27  Behdad Esfahbod  <behdad@gnome.org>
3123
3124         * gdk/gdkpango.c (gdk_pango_renderer_draw_glyphs): Cast to double
3125         before dividing by PANGO_SCALE. (#334582)
3126
3127 2006-04-27  Matthias Clasen  <mclasen@redhat.com>
3128
3129         * gtk/gtkentry.c (popup_position_func): Improve positioning
3130         of the menu when popped up by keynav.  (#334987, Christian
3131         Persch)
3132
3133         * gtk/gtkdnd.c (gtk_drag_set_icon_window): Handle the case
3134         of being called after the drag is cancelled.  (#339224, 
3135         Benjamin Otte)
3136
3137         * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
3138         Use XFixes only if it is available.  (#339839, Marko Anastasov)
3139
3140 2006-04-26  Federico Mena Quintero  <federico@novell.com>
3141
3142         * gtk/gtkdialog.c (gtk_dialog_close): Don't make this conditional
3143         on having a GTK_RESPONSE_CANCEL button -> end the idiocy.  Fixes
3144         bug #101293.
3145
3146 2006-04-26  Kristian Rietveld  <kris@imendio.com>
3147
3148         * gtk/gtktreeview.c (node_is_visible): new function,
3149         (validate_visible_area): when a node is validated, only queue a
3150         redraw for that node, not for the entire widget (a redraw for the
3151         entire widget is only needed when the sizes change, and
3152         _queue_resize() will take care of that),
3153         (do_validate_rows): do not queue a redraw, redraws are only needed
3154         for changes in the visible area and validate_visible_area() takes
3155         care of that,
3156         (gtk_tree_view_row_inserted): for fixed height mode, only queue
3157         a resize and redraw if the node is visible, else no redraw is needed.
3158
3159 2006-04-26  Kristian Rietveld  <kris@imendio.com>
3160
3161         If this new "row-ending-details" property is turned on, more
3162         detailed "details" will be passed to the theme engine for drawing
3163         the background, drop indicator and focus rectangle.  Requirement is
3164         that the theme engine supports these details. (#333760).
3165
3166         * gtk/gtktreeview.c (gtk_tree_view_class_init): add row-ending-details
3167         style property,
3168         (gtk_tree_view_bin_expose): pass more detailed detail to
3169         gtk_paint_flat_box() if the property is turned on,
3170         (gtk_tree_view_bin_expose): likewise for the drop indicator,
3171         (gtk_tree_view_bin_expose): likewise for the focus rectangle.
3172
3173 2006-04-26  Kristian Rietveld  <kris@imendio.com>
3174
3175         New "show-expanders" and "level-indentation" properties, which can
3176         be used for customizing the tree view.  (For example to do
3177         grouping as demonstrated in the test application).
3178         Discussion in #80869.
3179
3180         * gtk/gtktreeprivate.h: add level_indentation field.
3181
3182         * gtk/gtktreeview.c (gtk_tree_view_class_init),
3183         (gtk_tree_view_init), (gtk_tree_view_set_property),
3184         (gtk_tree_view_get_property): add the properties to the object,
3185         (gtk_tree_view_button_press), (do_prelight),
3186         (gtk_tree_view_bin_expose), (validate_row),
3187         (gtk_tree_view_discover_dirty_iter), (gtk_tree_view_get_cell_area),
3188         (gtk_tree_view_create_row_drag_icon): take the new properties
3189         into account,
3190         (gtk_tree_view_start_editing): fix cell placement code.
3191
3192         * tests/testgrouping.c: new test application, showing how to
3193         implement grouping.
3194
3195         * tests/Makefile.am: updated.
3196
3197 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
3198
3199         * gdk/gdk.symbols: Add gdk_screen_is_composited
3200
3201         * gtk/gtkprintjob.c (gtk_print_job_set_source_file): Add docs.
3202
3203         * gtk/gtkprintoperation.c: Add docs.
3204
3205 Tue Apr 25 10:25:28 2006  Søren Sandmann  <sandmann@redhat.com>
3206
3207         * tests/testgtk.c (create_alpha_window): Create 'composited' label.
3208
3209         * tests/testgtk.c (on_composited_changed): New function, change
3210         the label to say whether the screen is composited or not.
3211
3212         * gtk/gtkwindow.c (gtk_window_on_composited_changed): When
3213         composited status change, invalidate the window and propagate the signal;.
3214
3215         * gtk/gtkwindow.c (gtk_window_map): Set the appropriate type hint
3216         if reset_type_hint is TRUE.
3217
3218         * gtk/gtkwindow.c (gtk_window_set_type_hint): If hint is one of
3219         the old hints, store a shadow copy in the public window->type_hint
3220         bitfield, otherwise set this field to normal. Set the private
3221         field to the type hint.
3222
3223         * gtk/gtkwindow.c (gtk_window_init): Initialize priv->type_hint. 
3224
3225         * gtk/gtkwindow.c (struct _GtkWindowPrivate): New field
3226         "reset_type_hint" indicating whether the type hint needs to be
3227         reset. New field type_hint containing a GdkWindowTypeHint.
3228
3229         * gtk/gtkwidget.c (propagate_composited_changed): New function to
3230         propagate changes in composited status.
3231         (gtk_widget_class_init): Add composited_changed signal.
3232         
3233         * gtk/gtkwidget.h (struct _GtkWidgetClass): New signal composited-changed.
3234
3235         * gtk/gtkwidget.c (gtk_widget_is_composited): New function.
3236
3237         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): Set transient for.
3238
3239         * gtk/gtktooltips.c (gtk_tooltips_force_window): Set the type hint
3240
3241         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Compute whether
3242         the item belongs to a menubar. Set the type_hint appropriately
3243         depending on the outcome.
3244
3245         * gtk/gtkmenu.c (gtk_menu_position): Set the default type hint here.
3246
3247         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): connect to hierarchy
3248         changed on the attach widget.
3249
3250         * gtk/gtkmenu.c (attach_widget_hierarchy_changed): New function to
3251         set the transient_for property for menus.
3252
3253         * gtk/gtkdnd.c (set_icon_stock_pixbuf): Set the appropriate type hint.
3254
3255         * gtk/gtkcombo.c (gtk_combo_popup_list): Make the popup window
3256         transient for the toplevel.
3257
3258         * gtk/gtkcombobox.c (gtk_combo_box_set_popup_widget): Set
3259         transient-for, for the popup window.
3260
3261         * gdk/x11/gdkwindow-x11.c (gdk_window_get_type_hint): Support for
3262         new window types.
3263
3264         * gdk/x11/gdkwindow-x11.c (gdk_window_set_type_hint): Add support
3265         for new window types.
3266
3267         * gdk/x11/gdkscreen-x11.c (_gdk_x11_screen_process_owner_change):
3268         New function called whenever the compositing manager comes and goes.
3269
3270         * gdk/x11/gdkscreen-x11.c (gdk_screen_is_composited): New function.
3271
3272         * gdk/x11/gdkscreen-x11.c
3273         (_gdk_x11_screen_request_cm_notification, make_cm_atom,
3274         check_is_composited): New functions
3275
3276         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Call
3277         _gdk_x11_screen_process_owner_change when an
3278         XFixesSelectionNotifyEvent is received.
3279
3280         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Call
3281         _gdk_x11_screen_request_cm_notification() on all screens.
3282
3283         * gdk/quartz/gdkscreen-quartz.c (gdk_screen_is_composited): Dummy
3284         implementation. 
3285
3286         * gdk/gdkscreen.c (gdk_screen_class_init): New signal,
3287         'composited-changed'.
3288
3289         * gdk/gdkwindow.h: Add new EWMH window types.
3290
3291         * gdk/win32/gdkscreen-win32.c (gdk_screen_is_composited) 
3292
3293 2006-04-25  Matthias Clasen  <mclasen@redhat.com>
3294         
3295         * modules/printbackends/cups/gtkprintbackendcups.c: 
3296         Add some more translatable PPD option names.
3297
3298 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3299
3300         * po/POTFILES.in:
3301         * po-properties/POTFILES.in: Updates
3302
3303         * gtk/paper_names.c: Declare PaperInfo here.
3304
3305         * gtk/gen-paper-names.c: Add a prefix to gettext msgids.
3306
3307         * gtk/paper_names_offsets.c: Regenerated.
3308         
3309         * gtk/gtkpapersize.c (gtk_paper_size_get_display_name):
3310         Use g_strip_context() to strip the prefix.
3311
3312 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3313         
3314         * gtk/gtkfontbutton.c: Small doc fixes.
3315
3316         * gtk/gtkprintunixdialog.h: 
3317         * gtk/gtkpagesetupunixdialog.h: Fix includes (#338665)
3318
3319         * gtk/gtkprintsettings.h (GtkPageRange): Declare in a way grokked by gtk-doc.
3320
3321         * gdk/gdkregion-generic.c: Documentation fixes.
3322
3323         * gdk/directfb/gdkmain-directfb.c: Make the comment not look like
3324         a doc comment.
3325
3326         * gtk/gtkprintunixdialog.c: Add docs.
3327
3328         * gtk/gtkstatusicon.c (gtk_status_icon_get_visible): Typo fix.
3329
3330 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3331
3332         * gtk/gtkprinter.c:
3333         Don't ref the backend since the backend owns the printer.
3334
3335 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3336
3337         * gtk/gtkpagesetupunixdialog.c (update_combo_sensitivity_from_printers):
3338         Remove spew.
3339
3340 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3341
3342         * gtk/gtkprintunixdialog.c (create_page_setup_page):
3343         Even/Odd Pages -> Even/Odd Sheets
3344
3345 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3346
3347         * gtk/gtk.symbols:
3348         * gtk/gtkprintoperation.c (gtk_print_operation_run_async): Refactor the
3349         gtk_print_operation_run() code and add an _async version.
3350
3351         * gtk/gtkprintoperation-private.h:
3352         * gtk/gtkprintoperation-unix.c
3353         (_gtk_print_operation_platform_backend_run_dialog_async)
3354         (gtk_print_run_page_setup_dialog_async): Variants of the run functions
3355         which don't call gtk_dialog_run(), but only show the dialog and return,
3356         and handle the response in a signal handler.
3357
3358         * gtk/gtkprintoperation-win32.c (gtk_print_run_page_setup_dialog_async) 
3359         (_gtk_print_operation_platform_backend_run_dialog_async): Implement these 
3360         by calling the sync versions.
3361
3362         * gtk/gtkprintoperation-unix.c: Cleanups.
3363
3364         * gtk/gtkpagesetupunixdialog.c (gtk_page_setup_unix_dialog_get_page_setup):
3365         Remove redundant code.
3366
3367         * gtk/Makefile.am: Install gtkprintjob.h as Unix-specific print API.
3368
3369         * gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog): 
3370         Return a copy of the original page setup if the dialog was canceled.
3371
3372 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3373
3374         * gtk/gtkprintjob.h:
3375         Declare GtkPrintJob.
3376         
3377         * gtk/gtkprintunixdialog.c: (gtk_print_unix_dialog_get_settings):
3378         Change g_return_if_fail to g_return_val_if_fail.
3379
3380 2006-04-24  Alexander Larsson  <alexl@redhat.com>
3381
3382         * configure.in:
3383         Check for cairo-pdf.h.
3384         Check for cairo-ps.h on non-win32.
3385
3386 2006-04-24  Matthias Clasen  <mclasen@redhat.com>
3387
3388         * gtk/gtkclipboard.h: 
3389         * gtk/gtkprinter.c: 
3390         * gtk/gtkprintsettings.h: 
3391         * gtk/gtkprintsettings.c: Match parameter names with the headers.
3392
3393         * gtk/gtkprintoperation-unix.c (gtk_print_run_page_setup_dialog): 
3394         Add docs.
3395
3396         * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize): 
3397         * gtk/gtkstatusicon.c (gtk_status_icon_get_storage_type): 
3398         * gtk/gtktreeview.c (gtk_tree_view_set_search_position_func): 
3399         * gtk/gtktreeview.c (gtk_tree_view_get_headers_clickable): 
3400         * gtk/gtkcellrendererspin.c (gtk_cell_renderer_spin_new): 
3401         * gtk/gtkmenu.c (gtk_menu_get_for_attach_widget): Fix the docs.
3402
3403         * gtk/gtkprinter.h: Don't declare GtkPrintJob here.
3404         * gtk/gtkprinter-private.h: Instead include gtkprintjob.h.
3405
3406 2006-04-23  Matthias Clasen  <mclasen@redhat.com>
3407
3408         * gtk/gtkprinter-private.h: 
3409         * gtk/gtkprintbackend.h: 
3410         * gtk/gtkprinter.[hc]: 
3411         * gtk/gtkprintjob.[hc]: Use g types, add documentation, and some
3412         stylistic fixups.
3413
3414         * gtk/gtkaboutdialog.c (activate_url): Avoid a compiler warning.
3415
3416         * gtk/gtkpapersize.[hc]: Use g types, add documentation.
3417
3418         * gtk/gtkprintunixdialog.c (gtk_print_unix_dialog_get_settings): 
3419         Use g_return_val_if_fail in non-void functions.
3420
3421         * gtk/Makefile.am: Add gtkprintutils.[hc]
3422
3423         * gtk/gtkprintutils.[hc]: New files, move the unit conversion
3424         functions here.
3425
3426         * gtk/gtkpagesetupunixdialog.c: 
3427         * gtk/gtkprintsettings.c: 
3428         * gtk/gtkpagesetup.c: 
3429         * gtk/gtkpapersize.c: Replace all static copies of to_mm/from_mm
3430         by the copies in gtkprintutils.c.
3431
3432         * gtk/gtkpagesetup.[hc]: Use g types, add documentation.
3433
3434         * gtk/gtkprintsettings.c: More documentation
3435
3436 2006-04-22  Tor Lillqvist  <tml@novell.com>
3437
3438         * gtk/Makefile.am (gtk_private_h_sources): Small workaround for
3439         weird bug in some versions of Automake at least on Windows.
3440
3441 2006-04-21  Alexander Larsson  <alexl@redhat.com>
3442
3443         Merge the gtk-printing branch.
3444         For more detailed ChangeLog entries, see the ChangeLog.gtk-printing.
3445         
3446         * .cvsignore:
3447         * Makefile.am:
3448         * configure.in:
3449         * docs/tools/widgets.c:
3450         * gtk+-unix-print-2.0.pc.in:
3451         * gtk/Makefile.am:
3452         * gtk/gen-paper-names.c:
3453         * gtk/gtk.h:
3454         * gtk/gtk.symbols:
3455         * gtk/gtkenums.h:
3456         * gtk/gtkiconfactory.c:
3457         * gtk/gtkmarshalers.list:
3458         * gtk/gtkpagesetup.[ch]:
3459         * gtk/gtkpagesetupunixdialog.[ch]:
3460         * gtk/gtkpapersize.[ch]:
3461         * gtk/gtkprint-win32.[ch]:
3462         * gtk/gtkprintbackend.[ch]:
3463         * gtk/gtkprintcontext.[ch]:
3464         * gtk/gtkprinter-private.h:
3465         * gtk/gtkprinter.[ch]:
3466         * gtk/gtkprinteroption.[ch]:
3467         * gtk/gtkprinteroptionset.[ch]:
3468         * gtk/gtkprinteroptionwidget.[ch]:
3469         * gtk/gtkprintjob.[ch]:
3470         * gtk/gtkprintoperation-private.h:
3471         * gtk/gtkprintoperation-unix.c:
3472         * gtk/gtkprintoperation-win32.c:
3473         * gtk/gtkprintoperation.[ch]:
3474         * gtk/gtkprintsettings.[ch]:
3475         * gtk/gtkprintunixdialog.[ch]:
3476         * gtk/paper_names.c:
3477         * gtk/paper_names_offsets.c:
3478         Platform independent printing API and implementations
3479         for unix and windows.
3480
3481         * gtk/gtkstock.h:
3482         * gtk/stock-icons/24/gtk-orientation-landscape.png:
3483         * gtk/stock-icons/24/gtk-orientation-portrait.png:
3484         * gtk/stock-icons/24/gtk-orientation-reverse-landscape.png:
3485         Add stock icons for page orientation.
3486         
3487         * modules/Makefile.am:
3488         * modules/printbackends/Makefile.am:
3489         * modules/printbackends/cups/Makefile.am:
3490         * modules/printbackends/cups/gtkcupsutils.[ch]:
3491         * modules/printbackends/cups/gtkprintbackendcups.[ch]:
3492         * modules/printbackends/cups/gtkprintercups.[ch]:
3493
3494         Cups printing backend for unix.
3495         
3496         * modules/printbackends/lpr/Makefile.am:
3497         * modules/printbackends/lpr/gtkprintbackendlpr.[ch]:
3498         lpr printing backend for unix.
3499         
3500         * modules/printbackends/pdf/Makefile.am:
3501         * modules/printbackends/pdf/gtkprintbackendpdf.[ch]:
3502         print-to-pdf printing backend for unix.
3503         
3504         * tests/.cvsignore:
3505         * tests/Makefile.am:
3506         * tests/print-editor.c:
3507         Test application for printing.
3508
3509         * gdk/gdk.symbols:
3510         * gdk/win32/gdkevents-win32.c:
3511         * gdk/win32/gdkwin32.h:
3512         Add gdk_win32_set_modal_dialog_libgtk_only so that we can pump the
3513         mainloop while displaying a win32 common dialog.
3514
3515         * gdk/directfb/Makefile.am:
3516         Whitespace cleanup.
3517         
3518 2006-04-20  Paolo Borelli  <pborelli@katamail.com>
3519
3520         * gtk/gtkcombobox.c: plug small leak (#339132)
3521         * tests/testcombo.c: ditto
3522
3523 2006-04-19  Michael Emmel  <mike.emmel@gmail.com>
3524
3525         * gdk/directfb/gdkdrawable-directfb.c: fixed off by one error in
3526         clip patch from (#330824)
3527
3528 2006-04-19  Murray Cumming  <murrayc@murrayc.com>
3529
3530         * gtk/gtkfilechooserbutton.c: _GtkFileChooserButtonPrivate:
3531         Added has_title flag so we can remember whether a title has 
3532         been set.
3533         (gtk_file_chooser_button_constructor): If no title has been
3534         set then set it to the default title. This means that the 
3535         default title will be used if the dialog was instantiated with 
3536         g_object_new(), without using the gtk_file_chooser_button_new() 
3537         convenience function. This helps language bindings.
3538         (gtk_file_chooser_button_set_property): Set has_title when 
3539         setting the title.
3540
3541 2006-04-19  Tor Lillqvist  <tml@novell.com>
3542
3543         * gdk/win32/gdkkeys-win32.c (handle_special): Map VK_NUMPAD[0-9]
3544         to GDK_KP_[0-9]. (#337562)
3545
3546 2006-04-18  Matthias Clasen  <mclasen@redhat.com>
3547
3548         * gtk/gtkrc.c: Allocate pixmap_path dynamically, rather than
3549         using a fixed array of size 128.
3550
3551         * gtk/gtkiconcache.c: Apply a patch by Paolo Borelli to factor
3552         out a strip_suffix() function and save some memory.  (#338307)
3553
3554 2006-04-18  Carlos Garnacho  <carlosg@gnome.org>
3555
3556         * gtk/gtknotebook.c (gtk_notebook_pages_allocate): removed wrong
3557         condition check that caused tab labels not to be drawn under certain
3558         circumstances. Bug #338734.
3559
3560 2006-04-17  Kjartan Maraas  <kmaraas@gnome.org>
3561
3562         * configure.in: Remove obsolete entry for no_NO
3563         * po-properties/no.po: And the translation
3564         * po/no.po: And the translation.
3565
3566 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
3567
3568         * demos/gtk-demo/colorsel.c (expose_event_callback): Small formatting
3569         fix.
3570
3571 2006-04-17  Christian Persch  <chpe@cvs.gnome.org>
3572
3573         * gtk/gtkdnd.c: (gtk_drag_dest_set), (gtk_drag_dest_set_proxy): Fix
3574         UMR in gtk_drag_dest_motion. Bug #338725.
3575
3576 2006-04-17  Matthias Clasen  <mclasen@redhat.com>
3577
3578         * gtk/gtksettings.c (gtk_settings_class_init): 
3579         * gtk/gtkentry.c (gtk_entry_class_init): Fix typos
3580         in property blurbs.  (#338772, Clytie Siddall)
3581
3582 2006-04-16  Richard Hult  <richard@imendio.com>
3583
3584         * gdk/quartz/gdkdrawable-quartz.c: (gdk_quartz_draw_drawable): Add check 
3585         for source being a window.
3586
3587         * gdk/quartz/gdkwindow-quartz.c: (_gdk_windowing_window_get_pointer):
3588         Don't assert on window not being the root window.
3589
3590 2006-04-16  Richard Hult  <richard@imendio.com>
3591
3592         * gdk/quartz/gdkdrawable-quartz.c: Remove leading cairo/ in include.
3593
3594 2006-04-16  Matthias Clasen <mclasen@redhat.com>
3595
3596         * gdk/x11/gdkwindow-x11.c (set_initial_hints ): Avoid a
3597         possible array overrun.  (Coverity)
3598
3599         * gtk/gtkcalendar.c (gtk_calendar_key_press): Avoid a
3600         possible array overrun.  (Coverity)
3601
3602         * gtk/gtktextbuffer.c (_gtk_text_buffer_remove_all_tags):
3603         Avoid a NULL dereference.  (Coverity)
3604
3605 2006-04-15  Matthias Clasen <mclasen@redhat.com>
3606
3607         * gtk/gtkrecentmanager.c: Make filename_warning() static,
3608         and use caseless matching when looking for file:/.  
3609         (#336772, Morten Welinder)
3610
3611 2006-04-13  Anders Carlsson  <andersca@imendio.com>
3612
3613         * gdk/quartz/gdkevents-quartz.c:
3614         (synthesize_enter_event):
3615         (synthesize_leave_event):
3616         (synthesize_crossing_events):
3617         Take grabs into account.
3618
3619         (find_window_for_event):
3620         Only return grabbed window when owner_events is FALSE.
3621
3622 2006-04-13  Matthias Clasen  <mclasen@redhat.com>
3623
3624         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Reorganize slightly
3625         to avoid a possible NULL dereference.  (Coverity)
3626
3627 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
3628
3629         * gtk/gtktreeview.c (gtk_tree_view_get_arrow_xrange): Don't
3630         allow passing NULL for x1 or x2, adjust callers.
3631
3632         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_get_neighbor_sizes): 
3633         Reorganize to avoid a possible NULL pointer dereference.  (Coverity)
3634
3635         * gtk/gtknotebook.c (gtk_notebook_page_allocate): Reorganize
3636         to avoid a possible NULL dereference.  (Coverity)
3637
3638         * gdk/x11/gdkimage-x11.c (gdk_image_new_bitmap): Handle
3639         closed displays correctly.  (Coverity)
3640
3641         * contrib/gdk-pixbuf-xlib/Makefile.am:
3642         * modules/engines/pixbuf/Makefile.am
3643         * gdk-pixbuf/Makefile.am: Build fixes for Cygwin.  (#338262)
3644
3645         * gdk/x11/gdkselection-x11.c (make_list): Make this work
3646         for list == NULL.  (Coverity)
3647
3648         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_entries_for_keycode): 
3649         Rearrange the code a bit.
3650
3651         * gtk/gtktextlayout.c (gtk_text_layout_validate_yrange): 
3652         Handle _gtk_text_line_get_data() returning NULL in all
3653         cases.  (Coverity)
3654
3655         * gtk/gtkuimanager.c: Make find_menu_position and
3656         find_toolbar_position void.  (#338100)
3657
3658 2006-04-12  Anders Carlsson  <andersca@imendio.com>
3659
3660         * gdk/quartz/gdkkeys-quartz.c:
3661         Handle page up and page down.
3662
3663 2006-04-12  Anders Carlsson  <andersca@imendio.com>
3664
3665         * gdk/quartz/gdkdrawable-quartz.c:
3666         (_gdk_quartz_drawable_release_context):
3667         Don't flush if we're inside a begin_paint/end_paint pair.
3668         
3669         * gdk/quartz/gdkwindow-quartz.c:
3670         (gdk_window_impl_quartz_end_paint):
3671         Free clip region here.
3672
3673 2006-04-12  Matthias Clasen  <mclasen@redhat.com>
3674
3675         * gtk/gtkuimanager.c (start_element_handler): Don't pass
3676         a negative value as string length to get_child_node().  (Coverity)
3677
3678         * gtk/gtkicontheme.c (insert_theme): Handle dirs == NULL
3679         gracefully.  (Coverity)
3680
3681         * gtk/gtknotebook.c (gtk_notebook_remove): Silently do nothing
3682         if the widget is not a child.  (Coverity)
3683
3684 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
3685
3686         * gdk/x11/gdkkeys-x11.c (get_xkb): Return early in error
3687         cases.  (Coverity)
3688
3689         * gtk/gtktextview.c (selection_motion_event_handler): Remove
3690         some unused variables.
3691
3692         * gtk/gtktreeview.c ((gtk_tree_view_search_position_func): Apply
3693         a patch from David Trowbridge to improve the positioning of the
3694         search popup.  (#338047)
3695
3696 2006-04-11  Emmanuele Bassi  <ebassi@cvs.gnome.org>
3697
3698         * gtk/gtkrecentmanager.c (gtk_recent_manager_init)
3699         (gtk_recent_manager_new): Remove the unneeded setting of the
3700         storage file inside the constructor. (Murray Cumming)
3701         (build_recent_items_list): Reset the dirty bit when done rebuilding
3702         the list from the storage file.
3703
3704 2006-04-11  Matthias Clasen  <mclasen@redhat.com>
3705
3706         * gtk/gtkscale.c (gtk_scale_get_layout_offsets): Silence
3707         compiler warnings.
3708
3709         * gtk/gtkinputdialog.c (gtk_input_dialog_set_mapping_mode): Don't
3710         dereference info before checking it for NULL.  (Coverity)
3711
3712 2006-04-11  Anders Carlsson  <andersca@mac.imendio.com>
3713
3714         * gdk/quartz/GdkQuartzView.c:
3715         (-[GdkQuartzView drawRect:]):
3716         * gdk/quartz/gdkdrawable-quartz.c:
3717         (gdk_quartz_ref_cairo_surface):
3718         (_gdk_quartz_drawable_get_context):
3719         (_gdk_quartz_drawable_release_context):
3720         * gdk/quartz/gdkwindow-quartz.c:
3721         (gdk_window_impl_quartz_finalize):
3722         (gdk_window_impl_quartz_class_init):
3723         (gdk_window_impl_quartz_begin_paint_region):
3724         (gdk_window_impl_quartz_end_paint):
3725         (gdk_window_impl_quartz_invalidate_maybe_recurse):
3726         (gdk_window_impl_quartz_process_updates):
3727         (gdk_window_impl_quartz_paintable_init):
3728         (_gdk_window_impl_quartz_get_type):
3729         * gdk/quartz/gdkwindow-quartz.h:
3730         Have GdkWindowImplQuartz implement GdkPaintable.
3731
3732 2006-04-10  Michael Natterer  <mitch@imendio.com>
3733
3734         * gtk/gtktextbufferrichtext.c (gtk_text_buffer_deserialize):
3735         pasted rich text should not be affected by tags that are active at
3736         the insertion point. Therefore, remove and remember all active
3737         tags, and re-apply them left and right of the inserted text after
3738         pasting. Fixes bug #337653.
3739
3740 2006-04-11  Anders Carlsson  <andersca@imendio.com>
3741
3742         * gdk/gdkinternals.h:
3743         * gdk/gdkwindow.c:
3744         (_gdk_paintable_get_type):
3745         (gdk_window_begin_paint_region):
3746         (gdk_window_end_paint):
3747         (gdk_window_process_updates):
3748         (gdk_window_invalidate_maybe_recurse):
3749         Add new GdkPaintable interface which implementation objects can 
3750         implement in order to override gdk painting functions.
3751
3752 2006-04-10 Vladimer Sichinava  <vlsichinava@gmail.com>
3753
3754         * configure.in: Added "ka" (Georgian) to ALL_LINGUAS
3755
3756 2006-04-07  Hans Breuer  <hans@breuer.org>
3757
3758         * gtk/makefile.msc.in tests/makefile.msc : updated
3759
3760 2006-04-06  Tor Lillqvist  <tml@novell.com>
3761
3762         Correct the appearance of non-square icons and cursors: pad them
3763         to square so that Windows won't stretch them.
3764
3765         * gdk/win32/gdkcursor-win32.c (create_alpha_bitmap)
3766         (create_color_bitmap): Always create square bitmaps, take only
3767         side length as argument.
3768         (pixbuf_to_hbitmaps_alpha_winxp, pixbuf_to_hbitmaps_normal):
3769         Corresponding changes.
3770
3771 2006-04-05  Matthias Clasen  <mclasen@redhat.com>
3772
3773         * gtk/gtktextview.c (text_window_realize): Lower the window, to
3774         prevent late-constructed text windows from covering child 
3775         widgets.  (#336796, Yevgen Muntyan)
3776
3777         * gtk/gtkmain.c (gtk_grab_add, gtk_grab_remove, gtk_grab_notify) 
3778         (gtk_grab_notify_foreach): Rework the code which emits ::grab-notify
3779         signals to ensure that we emit enough signals. Also optimize the
3780         code to not do unnecessary tree walking.
3781
3782         * gtk/gtkwidget.c (gtk_widget_class_init): Document ::grab-notify.
3783
3784 2006-04-05  Paolo Borelli  <pborelli@katamail.com>
3785
3786         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle the case of \r
3787         and \n split across lines. Bug #337022.
3788         * tests/testtextbuffer.c: add unit test.
3789
3790 Tue Apr  4 12:25:36 2006  Søren Sandmann  <sandmann@redhat.com>
3791
3792         * gdk/x11/gdkimage-x11.c (gdk_image_class_init): Add "_private" to
3793         make it build.
3794
3795 2006-04-04  Matthias Clasen  <mclasen@redhat.com>
3796
3797         * gdk/gdkdisplay.c: 
3798         * gdk/gdkdisplaymanager.c:
3799         * gdk/gdkdraw.c:
3800         * gdk/gdkkeys.c:
3801         * gdk/gdkpixmap.c:
3802         * gdk/gdkscreen.c:
3803         * gdk/gdkwindow.c:
3804         * gdk/x11/gdkcolor-x11.c:
3805         * gdk/x11/gdkdisplay-x11.c:
3806         * gdk/x11/gdkdnd-x11.c:
3807         * gdk/x11/gdkdrawable-x11.c:
3808         * gdk/x11/gdkgc-x11.c:
3809         * gdk/x11/gdkimage-x11.c:
3810         * gdk/x11/gdkinput.c:
3811         * gdk/x11/gdkpixmap-x11.c:
3812         * gdk/x11/gdkscreen-x11.c:
3813         * gdk/x11/gdkwindow-x11.c: Use G_DEFINE_TYPE.
3814
3815         * gdk/x11/gdkcolor-x11.c: 
3816         * gdk/x11/gdkdnd-x11.c:
3817         * gdk/x11/gdkimage-x11.c: Use instance private data.
3818
3819 2006-04-03  Matthias Clasen  <mclasen@redhat.com>
3820
3821         * gdk/gdkrgb.c: Get rid of a duplicate copy of the visual names.
3822
3823         * gtk/gtkmain.c: Make gtk_args const.
3824
3825         * gtk/gtkicontheme.c (pixbuf_supports_svg): Save one static.
3826
3827         * gtk/gtkrecentchooser.c (gtk_recent_chooser_error_quark):
3828         * gtk/gtkrecentmanager.c (gtk_recent_manager_error_quark):
3829         * gtk/gtkfilechooser.c (gtk_file_chooser_error_quark):
3830         * gtk/gtkfilesystem.c (gtk_file_system_error_quark):
3831         * gtk/gtkicontheme.c (gtk_icon_theme_error_quark): No point
3832         in making the error path fast by caching quarks. 
3833
3834         * gtk/gtkfilesel.c (no_stat_dirs): Avoid relocation.
3835
3836         * gdk/gdk.c: Here too.
3837
3838         * gdk/gdkinternals.h: 
3839         * gdk/x11/gdkmain-x11.c: 
3840         * gdk/win32/gdkmain-win32.c: 
3841         * gdk/directfb/gdkdisplay-directfb.c: 
3842         * gdk/quartz/gdkmain-quartz.c: Make _gdk_windowing_args const.
3843
3844         * gdk/win32/gdkpixmap-win32.c: Include gdkscreen.h  (#337032,
3845          Kazuki IWAMOTO)
3846
3847         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Mention
3848         that %NULL is allowed.  (#336937, Christian Neumair)
3849
3850         * gtk/gtkmain.c: Get rid of an unnecessary static variable.
3851
3852         * gtk/gtktextlayout.c: Fix a warning.
3853         
3854         * gtk/gtktextsegment.h: 
3855         * gtk/gtktextsegment.c: 
3856         * gtk/gtktextchild.c:
3857         * gtk/gtktextbtree.c:
3858         * gtk/gtktextmark.c: 
3859         * gtk/gtktexttypes.h: Make the segment class pointers const.
3860
3861         * gtk/gtktextbufferserialize.c: Make parser struct const.
3862         
3863         * gtk/gtkuimanager.c: Make parser struct const.
3864
3865         * gtk/gtklinkbutton.c: Make the default colors const.
3866
3867         * gtk/gtkuimanager.c: Avoid relocations. 
3868
3869         * gtk/gtkxembed.c (_gtk_xembed_message_name): Reduce size of static
3870         buffer.
3871
3872         * gtk/gtktext.c (gtk_text_key_press): Avoid relocations.
3873
3874         * gtk/gtkrc.c (gtk_rc_add_initial_default_files) 
3875         (gtk_rc_add_default_file): Allocate the gtk_rc_default_files array
3876         dynamically.
3877
3878 2006-04-02  Matthias Clasen  <mclasen@redhat.com>
3879
3880         * gtk/gtkrc.c: Avoid relocations for the array of symbol names. 
3881
3882         * gtk/gtkruler.c: Remove unused strings from the ruler_metrics 
3883         structs, to avoid relocations.  (#336917, Stephane Chauveau)
3884
3885 2006-04-02  Emmanuele Bassi  <ebassi@cvs.gnome.org>
3886
3887         * gtk/gtkrecentmanager.c (gtk_recent_manager_set_filename): Build
3888         the items list after setting the storage file.
3889
3890         * gtk/gtkrecentmanager.c (display_closed): Use the right string
3891         for unsetting the default manager object from the screen.       
3892
3893 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
3894
3895         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Oops. (#336784)
3896
3897 2006-04-01  Behdad Esfahbod  <behdad@gnome.org>
3898
3899         * gtk/gtkfilesel.c (gtk_file_selection_get_filename): Use a GString
3900         instead of static buffer to reduce .bss by 8kb. (#336784)
3901
3902 2006-04-01  Dom Lachowicz <cinamod@hotmail.com>
3903
3904         * modules/engines/ms-windows/msw_style.c (draw_hline): Emulate WinXP's
3905         drawing of menu separators
3906         
3907 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
3908
3909         * gtk/gtkrecentmanager.c: Convert filenames to UTF-8 before printing
3910         them out in warning messages. (#336770, Morten Welinder)
3911
3912 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
3913
3914         * gtk/gtkrecentmanager.c (gtk_recent_info_last_application): Update
3915         last_stamp inside the look. (#336771, Morten Welinder)
3916
3917 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
3918
3919         * gtk/gtkrecentchoosermenu.c (gtk_recent_chooser_menu_get_property):
3920         Add missing break. (#336769, Morten Welinder)
3921
3922 2006-03-31  Behdad Esfahbod  <behdad@gnome.org>
3923
3924         * gtk/gtkfilesystem.c (gtk_file_system_get_bookmark_label):
3925         * gtk/gtklinkbutton.c (gtk_link_button_new_with_label): Return NULL
3926         instead of FALSE in g_return_val_if_fail in a pointer-returning
3927         function. (#336764, Morten Welinder)
3928
3929 2006-04-01  Gora Mohanty  <gmohanty@cvs.gnome.org>
3930
3931         * configure.in: Added 'or' (Oriya) to ALL_LINGUAS.
3932
3933 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
3934
3935         * gtk/gtkrecentmanager.c (gtk_recent_info_get_age): Don't
3936         assert that the age is positive.  (#336773, Morten Welinder)
3937
3938 2006-03-31  Matthias Clasen  <mclasen@redhat.com>
3939
3940         * gtk/gtkicontheme.c (load_icon_data): Don't leak the keyfile 
3941         parser in the error case. 
3942         
3943         * gtk/gtkicontheme.c (load_icon_data, free_unthemed_icon) 
3944         (icon_data_free, load_themes):
3945         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon_data): Use the slice
3946         allocator for GtkIconData and UnthemedIcon structs.
3947
3948 2006-03-30  Behdad Esfahbod  <behdad@gnome.org>
3949
3950         * gtk/gtkcalendar.c: Fix translation comments for localizable
3951         digit formats. (fixes bug #336650)
3952
3953 2006-03-30  Matthias Clasen  <mclasen@redhat.com>
3954
3955         * gtk/gtkrecentmanager.h (struct _GtkRecentData): Fix the doc
3956         comment format.
3957
3958         * gtk/gtkrecentmanager.c (gtk_recent_manager_has_item) 
3959         (gtk_recent_manager_purge_items, gtk_recent_manager_lookup_item) 
3960         (gtk_recent_manager_get_limit, gtk_recent_manager_add_full) 
3961         (gtk_recent_manager_get_items, gtk_recent_manager_remove_item): 
3962
3963         * gtk/gtkrecentfilter.c (gtk_recent_filter_add_age): 
3964         * gtk/gtkrecentchooser.c (gtk_recent_chooser_set_show_numbers) 
3965         (gtk_recent_chooser_set_sort_func): 
3966         * gtk/gtknotebook.h (gtk_notebook_set_tab_detachable): Sync
3967         parameter names between .c and .h files to help gtk-doc.
3968
3969         * gdk/gdkregion-generic.c (gdk_region_get_clipbox): Reword
3970         docs to help gtk-doc.
3971
3972         * docs/tools/widgets.c (get_all_widgets): Add 
3973         GtkRecentChooserDialog.
3974
3975         * gtk/gtkdnd.c (gtk_drag_get_icon): Make sure to get an
3976         icon window when constructing the fallback_icon. This
3977         fixes a crash when dragging icons between screens in
3978         nautilus.  (#325751, Hylke van der Schaaf)
3979
3980 2006-03-30  Michael Emmel  <mike.emmel@gmail.com>
3981
3982         * gdk/directfb/gdkpixmap-directfb.c implement
3983             (gdk_pixmap_foreign_new_for_screen)
3984
3985 2006-03-30  Emmanuele Bassi  <ebassi@cvs.gnome.org>
3986
3987         Add documentation for the GtkLinkButton (#336592)
3988
3989         * docs/reference/tmpl/gtklinkbutton.sgml: Add description
3990         of the GtkLinkButton.
3991
3992         * docs/reference/gtk/migrating-GtkLinkButton.sgml: Guidelines
3993         for migrating code from GnomeHRef to the GtkLinkButton.
3994
3995         * docs/reference/gtk/gtk-docs.sgml:
3996         * docs/reference/gtk/Makefile.am: Build glue for the porting
3997         guide.
3998
3999 2006-03-29  Matthias Clasen <mclasen@redhat.com>
4000
4001         * gdk/gdk.symbols:
4002         * gdk/gdkpixmap.h:
4003         * gdk/win32/gdkpixmap-win32.c:
4004         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new_for_screen):
4005         New function to allow wrapping a native pixmap without
4006         a server roundtrip.  (#334954, David Baron) 
4007
4008         * gtk/gtk.symbols:
4009         * gtk/gtkrecent*.c: Fix some symbol aliasing glitches.
4010
4011 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4012
4013         * gtk/gtkrecentchoosermenu.c: Make gtkalias.h the last included file.
4014
4015 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4016
4017         * gtk/gtk.symbols: Fix a typo that broke aliasing rules.
4018
4019 2006-03-29  Richard Hult  <richard@imendio.com>
4020
4021         * gdk/quartz/gdkproperty-quartz.c: Add missing CLIPBOARD atom.
4022
4023 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4024
4025         * docs/reference/gtk/migrating-GtkRecentChooser.sgml: Add a migration
4026         guide for porting to the new GtkRecent stuff from the old EggRecent
4027         code.
4028
4029         * docs/reference/gtk/tmpl/gtkrecentchooser.sgml:
4030         * docs/reference/gtk/tmpl/gtkrecentchooserdialog.sgml:
4031         * docs/reference/gtk/tmpl/gtkrecentchoosermenu.sgml:
4032         * docs/reference/gtk/tmpl/gtkrecentchooserwidget.sgml:
4033         * docs/reference/gtk/tmpl/gtkrecentfilter.sgml:
4034         * docs/reference/gtk/tmpl/gtkrecentmanager.sgml: Add template files
4035         for the reference guide.
4036
4037         * docs/reference/gtk/gtk-docs.sgml:
4038         * docs/reference/gtk/gtk-sections.txt:
4039         * docs/reference/gtk/Makefile.am: Build glue for add GtkRecent to
4040         the reference guide.
4041
4042 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4043
4044         * tests/Makefile.am:
4045         * tests/testrecentchooser.c: Add a test suite for GtkRecentChooser.
4046
4047 2006-03-29  Emmanuele Bassi  <ebassi@cvs.gnome.org>
4048
4049         Import GtkRecent* from libegg.
4050
4051         * gtk/gtkrecentmanager.[ch]: Add GtkRecentManager, an object
4052         for managing a list of recently used resources.
4053
4054         * gtk/gtkrecentchooser.[ch]:
4055         * gtk/gtkrecentchooserdefault.[ch]:
4056         * gtk/gtkrecentchooserdialog.[ch]:
4057         * gtk/gtkrecentchoosermenu.[ch]:
4058         * gtk/gtkrecentchooserprivate.h:
4059         * gtk/gtkrecentchooserutils.[ch]:
4060         * gtk/gtkrecentchooserwidget.[ch]: Add GtkRecentChooser, a
4061         GTypeInterface for widgets implementing viewers for recently
4062         used resources.
4063
4064         * gtk/gtkrecentfilter.[ch]: GtkRecentFilter, a filter object
4065         for GtkRecentChooser implementations.
4066
4067         * gtk/gtk.h:
4068         * gtk/gtk.symbols:
4069         * gtk/Makefile.am: Build glue for GtkRecent*.
4070
4071 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
4072
4073         * gtk/gtknotebook.c (gtk_notebook_real_insert_page): Emit
4074         page-added before switch-page.  (#335691, Christian Persch)
4075
4076 2006-03-29  Matthias Clasen  <mclasen@redhat.com>
4077
4078         * gtk/gtkfilechooserdefault.c (queue_edited_idle): Handle
4079         double queuing, rather than asserting that it does not 
4080         happen.  (#330617)
4081
4082 2006-03-28  Matthias Clasen  <mclasen@redhat.com>       
4083
4084         * gtk/gtknotebook.c (gtk_notebook_set_tab_detachable): Fix
4085         docs syntax, also commit a patch from #335707 to improve
4086         notebook DND with window widgets.
4087
4088         * gtk/gtktextview.c (gtk_text_view_start_selection_drag): 
4089         (selection_motion_event_handler): Fix drag-selection after
4090         double-click.  (#323862, Benjamin Berg)
4091
4092         * gtk/gtktextview.c (get_iter_at_pointer): Factor this out
4093         into a function and use it in move_mark_to_pointer_and_scroll,
4094         drag_scan_timeout and selection_motion_event_handler.
4095         (Paolo Borelli)
4096
4097 2006-03-28  Matthias Clasen  <mclasen@redhat.com>
4098
4099         * gtk/gtktextview.c (gtk_text_view_do_popup) 
4100         (gtk_text_view_grab_notify): Move the call to 
4101         gtk_text_view_end_selection_drag() from gtk_text_view_do_popup
4102         to gtk_text_view_grab_notify, so that it works not only
4103         for the text views own popup, but also for other ways in which
4104         we might become grab-shadowed during a selection drag.
4105         (#74620, Li Yuan)
4106
4107 2006-03-28  Sven Herzberg  <herzi@gnome-de.org>
4108
4109         reviewed by: Tim Janik
4110         
4111         * gtk/gtkpixmap.c: (gtk_pixmap_set): only check for equal colormaps if
4112         the new pixmap is not NULL; fixes a warning when gtk_pixmap_set is
4113         called from gtk_pixmap_finalize (bug 336254)
4114
4115 2006-03-27  Anders Carlsson  <andersca@imendio.com>
4116
4117         * gdk/quartz/gdkevents-quartz.c:
4118         (select_thread_func):
4119         (got_fd_activity):
4120         (poll_func):
4121         (gdk_event_translate):
4122         Make the poll func work with real file descriptors.
4123         We do this by creating a thread which calls poll and then
4124         signals the main thread using a run loop source.
4125         
4126         * gtk/gtkclipboard-quartz.c:        
4127         (-[GtkClipboardOwner pasteboard:provideDataForType:]):
4128         Remove debugging output
4129
4130 2006-03-27  Matthias Clasen  <mclasen@redhat.com>
4131
4132         * gtk/gtkmnemonichash.c (_gtk_mnemonic_hash_activate): Check that 
4133         the widget is viewable.  (#336200, Bastian Nocera)
4134
4135 2006-03-27  Michael Natterer  <mitch@imendio.com>
4136
4137         * gtk/gtkmenu.c (gtk_menu_scroll_by): bail out if there is no need
4138         for scrolling (more obvious than adding additional conditions to
4139         the scroll offset calculation). Fixes bug #335912.
4140
4141 2006-03-27  Anders Carlsson  <andersca@imendio.com>
4142
4143         * gtk/Makefile.am:
4144         Add -xobjective-c to cflags.
4145         (#335956, Lllian Angel)
4146         
4147         * gtk/gtkdnd-quartz.c:
4148         (gtk_drag_dest_set_track_motion):
4149         (gtk_drag_dest_get_track_motion):
4150         Add stubs for new functions.
4151         (#335955, Lillian Angel)
4152         
4153 2006-03-27  Richard Hult  <richard@imendio.com>
4154
4155         * gdk/quartz: Add more stubs.
4156
4157 2006-03-27  Michael Natterer  <mitch@imendio.com>
4158
4159         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
4160         add missing ')'.
4161
4162 2006-03-26  Matthias Clasen  <mclasen@redhat.com>
4163
4164         * gtk/Makefile.am: Fix a srcdir != builddir build problem.
4165         (#335915, Yevgen Muntyan)
4166
4167         * gtk/gtktextbuffer.c (gtk_text_buffer_get_property):
4168         * gtk/gtksettings.c (gtk_settings_get_property):
4169         * gtk/gtkuimanager.c (gtk_ui_manager_get_property): Fix leaks.
4170
4171         * gtk/gtktexttag.c (gtk_text_tag_get_property):
4172         * gtk/gtkcellrenderertext.c (gtk_cell_render_text_get_property):
4173         Avoid an unnecessary strdup.  (#336013)
4174
4175 2006-03-24  Matthias Clasen  <mclasen@redhat.com>
4176
4177         * gtk/gtktextview.c (gtk_text_view_value_changed): Don't call
4178         gdk_window_invalidate_rect() on unrealized widgets.  (#335717,
4179         Nicolas Setton)
4180
4181 Fri Mar 24 14:53:20 2006  Tim Janik  <timj@imendio.com>
4182
4183         * gtk/gtktreemodel.h: 
4184         * gtk/gtktextbtree.h: back out G_GNUC_WARN_UNUSED_RESULT on iterator
4185         functions which turned out to cause too much trouble.
4186
4187 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
4188
4189         * AUTHORS: small update
4190
4191 2006-03-23  Matthias Clasen  <mclasen@redhat.com>
4192
4193         Support subclasses in RC files.  (#142417, Todd Berman, patch
4194         based on a patch by Benjamin Berg)
4195         
4196         * gtk/gtkrc.h: 
4197         * gtk/gtkrc.c: Support <classname> elements in widget_class paths 
4198         in rc files which match any classes derived from named class.
4199
4200         (_gtk_rc_init): Use the new syntax in the default rc string.
4201
4202         * gtk/gtkbindings.c: Support the new syntax for bindings too.
4203         
4204         * tests/testrc.c: Tests for widget_class path matching
4205
4206 2006-03-23  Carlos Garnacho  <carlosg@gnome.org>
4207
4208         * gtk/gtkdnd.c (gtk_drag_dest_motion): make sure that gdk_drag_event()
4209         is called when track_motion is TRUE to receive drag_motion and
4210         drag_leave events properly.
4211
4212 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4213
4214         * gtk/gtknotebook.c (gtk_notebook_remove): Emit the ::page-removed
4215         signal after removing the page.  (#335238, Christian Persch)
4216
4217 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
4218
4219         * gtk/gtkexpander.c: Make it to expand when hovering during DnD
4220
4221 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4222
4223         Improved DND support for GtkNotebook  (#332991, Carlos Garnacho)
4224         
4225         * gtk/gtk.symbols: 
4226         * gtk/gtkdnd.h: 
4227         * gtk/gtkdnd.c: Add a track_motion flag on GtkDragDest
4228         with getter and setter, for cases where the drag destination
4229         is interested in drag motion events independent of targets.
4230
4231         * gtk/gtksettings.c (gtk_settings_class_init): Add a setting
4232         for the timeout used when expanding during DND.
4233
4234         * gtk/gtknotebook.c: Use the track_motion flag to switch
4235         notebook tabs when hovering over tabs during DND.
4236         
4237 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4238
4239         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Use fg_gc to
4240         draw the inter-row drop highlight. Also draw the line all the 
4241         way across, and flip it in RTL mode. (#334906, Ian McDonald)
4242
4243 2006-03-22  Johan Dahlin  <jdahlin@async.com.br>
4244
4245         * tests/testtreeview.c: Add a column that demonstrates how to use
4246         the new spinbutton cellrenderer.
4247
4248 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4249
4250         * tests/prop-editor.c: 
4251         * tests/testtreeview.c: Remove pointless includes of config.h,
4252         to make it easier compilable against system GTK+.
4253
4254 2006-03-22  Michael Natterer  <mitch@imendio.com>
4255
4256         * gtk/gtkentry.c: renamed last-char-timeout to
4257         password-hint-timeout and store all its data in a struct attached
4258         as QData.
4259
4260         * gtk/gtkcellrendererspin.c: fix typo in #include.
4261
4262 2006-03-22  Carlos Garnacho  <carlosg@gnome.org>
4263
4264         * gtk/gtknotebook.c: send a GtkWidget** instead of a GtkNotebookPage*
4265         when doing tabs DnD, this allows DnD interaction with other widgets,
4266         added some docs for this too.
4267         * tests/testnotebookdnd.c: add some code to test it.
4268
4269 2006-03-22  Matthias Clasen  <mclasen@redhat.com>
4270
4271         * gtk/gtk.symbols: 
4272         * gtk/gtkcellrendererspin.h:
4273         * gtk/gtkcellrendererspin.c: Add a cell renderer which 
4274         uses a spinbutton to edit the value of a cell. (#156023,
4275         Daniel Kasak, Lorenzo Gil Sanchez, Carlos Garnacho)
4276
4277         * gtk/gtk.h: 
4278         * gtk/Makefile.am: Glue it in.
4279
4280 2006-03-21  Matthias Clasen  <mclasen@redhat.com>
4281
4282         * tests/testtreeview.c (drag_begin_cb): Test setting up
4283         drag icons for tree dnd.
4284
4285 2006-03-22  Michael Natterer  <mitch@imendio.com>
4286
4287         * gtk/gtkentry.c: applied modified patch from maemo-gtk which
4288         allows the most recently entered character in a hidden entry to be
4289         shown for a configurable period of time. Fixes bug #334560.
4290
4291 2006-03-22  Michael Natterer  <mitch@imendio.com>
4292
4293         * gtk/gtktextbuffer.h (enum GtkTextBufferTargetInfo): count down
4294         from G_MAXUINT to avoid clashes with application-added DND
4295         targets.
4296
4297         * gtk/gtktextview.c (gtk_text_view_init): set an empty
4298         GtkTargetList on the drag_dest so it is not NULL when a derived
4299         class' init() function is called.
4300
4301         (gtk_text_view_target_list_notify): copy the text buffer's paste
4302         targets into the view's destinstion target list (preserving
4303         application-added DND targets), instead of replacing the view's
4304         target list. Fixes bug #334399.
4305
4306 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4307
4308         * gtk/Makefile.am:
4309         Add new files.
4310         
4311         * gtk/gtkclipboard-quartz.c: Added.
4312         * gtk/gtkdnd-quartz.c: Added.
4313         * gtk/gtkquartz.c: Added.
4314         * gtk/gtkquartz.h: Added.
4315         Add dnd and clipboard implementations.
4316
4317 2006-03-21  Michael Natterer  <mitch@imendio.com>
4318
4319         * gdk/quartz/Makefile.am: removing trailing \ fixes the build.
4320
4321 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4322
4323         * gdk/quartz/gdkgeometry-quartz.c:
4324         (gdk_window_scroll):
4325         Implement gdk_window_scroll.
4326
4327 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4328
4329         * gdk/quartz/GdkQuartzWindow.c:
4330         (drag_operation_to_drag_action):
4331         (drag_action_to_drag_operation):
4332         (update_context_from_dragging_info):
4333         (-[GdkQuartzWindow draggingEntered:]):
4334         (-[GdkQuartzWindow draggingEnded:]):
4335         (-[GdkQuartzWindow draggingExited:]):
4336         (-[GdkQuartzWindow draggingUpdated:]):
4337         (-[GdkQuartzWindow performDragOperation:]):
4338         (-[GdkQuartzWindow wantsPeriodicDraggingUpdates]):
4339         (-[GdkQuartzWindow draggedImage:endedAt:operation:]):
4340         * gdk/quartz/gdkdnd-quartz.c:
4341         (gdk_drag_context_finalize):
4342         (gdk_drag_context_init):
4343         (gdk_drag_context_class_init):
4344         (gdk_drag_begin):
4345         (gdk_drag_status):
4346         Add the GDK part of the DND implementation.
4347
4348         * gdk/quartz/Makefile.am:
4349         Add some missing headers.
4350         
4351         * gdk/quartz/gdkdrawable-quartz.h:
4352         * gdk/quartz/gdkprivate-quartz.h:
4353         * gdk/quartz/gdkquartz.h:
4354         * gdk/quartz/gdkwindow-quartz.c:
4355         (gdk_quartz_window_get_nsview):
4356         New function, for use by the GTK part of the DND implementation
4357
4358 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4359
4360         * gdk/quartz/gdkdrawable-quartz.c:
4361         (gdk_quartz_ref_cairo_surface):
4362         (gdk_quartz_draw_rectangle):
4363         (gdk_quartz_draw_arc):
4364         (gdk_quartz_draw_polygon):
4365         (gdk_quartz_draw_drawable):
4366         (gdk_quartz_draw_segments):
4367         (gdk_quartz_draw_lines):
4368         (gdk_quartz_draw_pixbuf):
4369         (gdk_quartz_draw_image):
4370         (_gdk_quartz_drawable_get_context):
4371         * gdk/quartz/gdkdrawable-quartz.h:
4372         Offset coordinates by 0.5 pixels to get consistant results for both
4373         image contexts and screen contexts.
4374
4375 2006-03-21  Anders Carlsson  <andersca@imendio.com>
4376
4377         * gdk/quartz/GdkQuartzWindow.c 
4378         ([GdkQuartzWindow -windowDidMove:]): Synthesize GDK_CONFIGURE events
4379         when the window position changes.
4380
4381 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4382
4383         * gtk/gtkdnd.c (gtk_drag_get_cursor): Remove an unused variable.
4384
4385         * gtk/gtknotebook.c (gtk_notebook_remove_tab_label): Don't leave
4386         page->tab_label dangling.
4387         (gtk_notebook_real_remove): Use GTK_IN_DESTRUCTION to determine
4388         if we are being called during destruction of the notebook, rather
4389         than maintaining that information as a passed-in parameter.
4390         (gtk_notebook_destroy): Leave the removal of the children
4391         to the container destroy method.  (#319032, Yevgen Muntyan)
4392
4393 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4394
4395         * gtk/gtkcombobox.c (gtk_combo_box_remove): Use the existing
4396         GTK_IN_DESTRUCTION flag, rather than roll our own.
4397
4398 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4399         
4400         * gtk/gtk.symbols: 
4401         * gtk/gtkscrolledwindow.h: 
4402         * gtk/gtkscrolledwindow.c: Add a window-placement-set property
4403         and a gtk-scrolled-window-placement setting.  (#157025, Christian
4404         Neumair)
4405
4406 2006-03-20  Matthias Clasen  <mclasen@redhat.com>
4407
4408         * gtk/gtkmain.c (gtk_get_option_group): Make sure gettext
4409         is initialized before using it.  (#335129, Christian Persch)
4410
4411 2006-03-19  Matthias Clasen  <mclasen@redhat.com>
4412
4413         * MAINTAINERS: Add this, at the request of the GNOME sysadmin team.
4414
4415         * AUTHORS: Updates, typo fix
4416
4417         * gtk/gtkiconview.c (gtk_icon_view_set_cursor): Document that
4418         @cell must be one of the renderers of the icon view, warn if 
4419         it is not, and ignore @start_editing if @cell is not set.
4420         (#335001, Emmanuel Rodriguez)
4421
4422 2006-03-16  Matthias Clasen  <mclasen@redhat.com>
4423
4424         * configure.in: Add a missing comma.  (#334774, Peter Breitenlohner)
4425
4426         * gtk/gtkactiongroup.c (gtk_action_group_add_actions_full) 
4427         (gtk_action_group_add_toggle_actions_full) 
4428         (gtk_action_group_add_radio_actions_full): Check for a stock 
4429         icon, not a stock item, when deciding whether to use stock-id 
4430         or icon-name.  (#334760, Jody Goldberg)
4431
4432         * gtk/gtkimage.c (gtk_image_clear): Update the size of the image, 
4433         by swapping the implementations of gtk_image_clear and
4434         gtk_image_reset.  (#334657)
4435
4436         * README.in: Add a note about GtkNotebook signals.
4437
4438 2006-03-15  Matthias Clasen  <mclasen@redhat.com>
4439
4440         * gtk/gtkcombobox.c (gtk_combo_box_list_button_released) 
4441         (gtk_combo_box_list_key_press): Popdown the list before changing
4442         the active iter, otherwise people will be surprised by the
4443         grabs that are still in place when their ::changed handler
4444         runs. 
4445
4446 2006-03-15  Dom Lachowicz <cinamod@hotmail.com>
4447
4448         * modules/engines/ms-windows/msw_style.c: Override style->realize/
4449         style->unrealize, so that GTK+ doesn't automatically attempt to apply
4450         shading to the GC colors, causing a mismatch with the Win32 native
4451         colors. Problem found by (and suggested solution by) "Cosmic Integer"
4452
4453         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Make expander-size
4454         a bit closer to Microsoft's values (bug 325699, Brad Taylor)
4455         
4456 2006-03-14  Matthias Clasen  <mclasen@redhat.com>
4457
4458         * tests/testcellrenderertext.c: Add test cases for alignment.
4459
4460         * gtk/gtkcellrenderertext.c: Add an alignment property,
4461         and fix some cases where ellipsize_set was being used to
4462         mean "we're ellipsizing" even when ellipsize was set to NONE.  
4463         (#318761, Ross Burton)
4464
4465         * gtk/gtkimcontextsimple.c: Make return and release work again
4466         to commit a hex sequence. Additionally, make escape reset the
4467         im context when in a hex sequence.  (#334423, Behdad Esfahbod)
4468
4469 2006-03-13  Matthias Clasen  <mclasen@redhat.com>
4470
4471         Make actions work with named icons.  (#323484, Jorn Baayen)
4472         
4473         * gtk/gtkactiongroup.c: If the stock-id field of a GtkActionEntry
4474         does not contain a registered stock id, interpret it as an
4475         icon name.
4476
4477         * gtk/gtkaction.c: Add an icon-name property to actions and
4478         use it for icons if a stock-id is not specified.
4479
4480 2006-03-12  Matthias Clasen  <mclasen@redhat.com>
4481
4482         * gtk/gtkwindow.c (gtk_window_compute_configure_request): Don't
4483         for the creation of geometry info here.  (#114533)
4484
4485 2006-03-11  Tor Lillqvist  <tml@novell.com>
4486
4487         * gdk/win32/gdkdrawable-win32.c (draw_polygon): Use Polygon() for
4488         outlined polygons, too. Same idea as in draw_rectangle(): Set pen
4489         to NULL_PEN if drawing a filled polygon, set brush to HOLLOW_BRUSH
4490         if drawing a polygon outline. (#332662)
4491         (gdk_win32_draw_polygon): Corresponding simplification: no need to
4492         add an extra final copy of the starting point.
4493
4494 2006-03-11  Dom Lachowicz <cinamod@hotmail.com>
4495
4496         * modules/engines/ms-windows: Speed up the Windows theme
4497         considerably (#163724, John Ehresman)
4498         Be more careful about setting Pango font descriptions (#333372)
4499         
4500 2006-03-11  Matthias Clasen  <mclasen@redhat.com>
4501
4502         * gtk/gtkrange.c (gtk_range_key_press): Allow to cancel 
4503         a drag with ESC.  (#58389, Søren Sandmann)
4504
4505 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4506
4507         * gtk/gtkrange.c: Add a style property ::activate_slider that
4508         allows themes to draw the slider active while dragged.  (#311992,
4509         Benjamin Berg)
4510
4511         * gtk/gtkcolorsel.c (gtk_color_selection_init): Fix two labels.
4512
4513         * gtk-engine-check-abi.sh: Add a script to check that theme
4514         engines don't export any extra functions. 
4515
4516 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4517
4518         * gtk/gtkcolorsel.c (gtk_color_selection_init): Avoid a mnemonic
4519         conflict.  (#163850, Dennis Cranston)
4520
4521         * gtk/gtkaboutdialog.c (gtk_show_about_dialog): Make the behaviour
4522         of the about dialog consistent with other dialogs in gtk. If the
4523         dialog is constructed with gtk_about_dialog_new(), the creator
4524         is reponsible for handling the response by hiding or closing the
4525         dialog. gtk_show_about_dialog() handles it by hiding the dialog.
4526         (#333360, Daniel Drake)
4527
4528         * README.in: Mention this change.
4529
4530 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4531
4532         Apply a patch from Dennis Cranston to make dialogs more
4533         consistent  (#163850)
4534         
4535         * gtk/gtkcolorsel.c (make_label_spinbutton): Left-align labels.
4536         
4537         * gtk/gtkfontsel.c (gtk_font_selection_init): 
4538         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): 
4539         * gtk/gtkcolorsel.c (gtk_color_selection_init): 
4540         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
4541         * gtk/gtkinputdialog.c (gtk_input_dialog_init): Update the layout
4542         of the dialog to follow HIG recommendations. Also update labels.
4543
4544         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): HIG-compatible 
4545         spacing.
4546         (gtk_message_dialog_font_size_change): Merged into 
4547          gtk_message_dialog_style_set.
4548
4549 2006-03-10  Matthias Clasen  <mclasen@redhat.com>
4550
4551         * gtk/gtkstyle.c: Remove g_return_if_fail() checks
4552         from static functions.
4553
4554 2006-03-10  Federico Mena Quintero  <federico@novell.com>
4555
4556         Make Shift-P and Shift-N activate typeahead in GtkTreeView
4557         (i.e. they are just normal capital letters).  Fixes bug #334098.
4558
4559         * gtk/gtktreeview.c (gtk_tree_view_add_move_binding): Add an
4560         "add_shifted_binding" argument which determines whether we'll add
4561         the same binding with GDK_SHIFT_MASK.
4562         (gtk_tree_view_class_init): Use add_shifted_binding=FALSE for GDK_p
4563         and GDK_n; use TRUE for all the rest.
4564
4565 2006-03-10  Michael Natterer  <mitch@imendio.com>
4566
4567         * gtk/gtkentry.[ch]: applied refactored patch from maemo-gtk that
4568         replaces the INNER_BORDER define by an "inner-border" style
4569         property of type GtkBorder. Additionally, add an "inner-border"
4570         object property plus API which allows to override any theme
4571         border, to allow pixel-perfect positioning of entries for inline
4572         editing. Fixes bug #333922.
4573
4574         * gtk/gtk.symbols: add the new public functions.
4575
4576 2006-03-09  Matthias Clasen  <mclasen@redhat.com>
4577
4578         * gtk/gtkcombobox.c (gtk_combo_box_class_init): Replace the
4579         popup-show and popup-hide signals with a readonly popup-shown
4580         property.  (#162531, Christian Persch)
4581
4582 2006-03-09  Ross Burton  <ross@openedhand.com>
4583
4584         * gtk/gtkwidget.c:
4585         * gtk/gtkrange.c:
4586         * gtk/gtktogglebutton.c:
4587         Turn off prelighting when gtk-touchscreen-mode is enabled (#135666)
4588
4589 Thu Mar  9 14:29:43 2006  Tim Janik  <timj@gtk.org>
4590
4591         * gtk/gtkobject.c (gtk_object_init): move the floating flag from
4592         the GInitiallyUnowned bit to GTK_FLOATING. fixes tests/floatingcheck.
4593         kudos to mitch for debugging this.
4594
4595 2006-03-09  Matthias Clasen <mclasen@redhat.com>
4596
4597         * Makefile.am: Add ChangeLog.pre-2.8 to EXTRA_DIST.
4598
4599 2006-03-09  Tor Lillqvist  <tml@novell.com>
4600
4601         * gtk/gtk.symbols: No gtk_tray_icon_get_type on Win32.
4602
4603 2006-03-08  Carlos Garnacho  <carlosg@gnome.org>
4604
4605         Rename ::tab-added and ::tab-removed signals to ::page-added and
4606         ::page-removed for not conflicting with other tab reordering
4607         implementations. Fixes bug #333743.
4608
4609         Also rename ::tab-reordered to ::page-reordered, and emit it in
4610         gtk_notebook_reorder_child () to make it behave consistently with the
4611         other two signals.
4612
4613         * gtk/gtknotebook.c (gtk_notebook_class_init): rename signals.
4614         (gtk_notebook_reorder_tab)
4615         (gtk_notebook_button_release)
4616         (gtk_notebook_remove)
4617         (gtk_notebook_real_insert_page): emit respectively renamed signals
4618         (gtk_notebook_reorder_child): also emit ::page-reordered here
4619
4620         * tests/testnotebookdnd.c: use renamed signals
4621
4622 2006-03-08  Michael Natterer  <mitch@imendio.com>
4623
4624         * gdk/gdkscreen.h
4625         * gdk/x11/gdkscreen-x11.c
4626         * gdk/gdk.symbols: added gdk_screen_get_active_window() and
4627         gdk_screen_get_window_stack() (patch from maemo-gtk).
4628         Fixes bug #320881.
4629
4630         * gdk/directfb/gdkscreen-directfb.c
4631         * gdk/quartz/gdkscreen-quartz.c
4632         * gdk/win32/gdkscreen-win32.c: added the functions as stubs.
4633
4634 2006-03-08  Michael Natterer  <mitch@imendio.com>
4635
4636         * tests/prop-editor.c (unichar_changed): zero-initialize the
4637         GValue before calling g_value_init().
4638
4639 2006-03-08  Michael Natterer  <mitch@imendio.com>
4640
4641         * gtk/gtkentry.c (gtk_entry_adjust_scroll): make sure that the
4642         text_area_width is always >= 0. Fixes bug #316712 (Dan Winship).
4643
4644 2006-03-07  Federico Mena Quintero  <federico@novell.com>
4645
4646         Cancel drags when the grabs get broken.  Fixes bug #333056:
4647
4648         * gtk/gtkdnd.c (gtk_drag_selection_received): The time argument is
4649         a guint, not guint32.
4650         (gtk_drag_source_event_cb): Return gboolean, not gint.
4651         (gtk_drag_anim_timeout): Likewise.
4652         (gtk_drag_motion_cb): Likewise.
4653         (gtk_drag_key_cb): Likewise.
4654         (gtk_drag_button_release_cb): Likewise.
4655         (gtk_drag_abort_timeout): Likewise.
4656         (gtk_drag_begin_internal): Connect to "grab-broken-event" on the
4657         ipc_widget.
4658         (gtk_drag_source_info_destroy): Disconnect from the
4659         "grab-broken-event" callback.
4660         (gtk_drag_end): Likewise.
4661         (gtk_drag_grab_broken_event_cb): New callback.  We cancel the drag
4662         if the grab was broken and not regrabbed by the DnD code.
4663
4664 2006-03-07  Federico Mena Quintero  <federico@novell.com>
4665
4666         * gtk/gtkfilechooserdefault.c (shortcuts_button_press_event_cb):
4667         Hack to let the treeview's button-press-event handler run before
4668         ours.  This lets the selection be updated before we pop up a
4669         context menu.
4670
4671 Tue Mar  7 17:16:34 2006  Tim Janik  <timj@gtk.org>
4672
4673         * configure.in: depend on glib-2.10.1.
4674
4675         * gtk/gtkobject.c: fixed up messing with non-GtkObject floating flags.
4676         this requires glib-2.10.1.
4677
4678 2006-03-07  Michael Natterer  <mitch@imendio.com>
4679
4680         Add infrastructure for copy/paste and DND of rich text for
4681         GtkTextBuffer. Fixes bug #324177.
4682
4683         * gtk/gtktextbufferrichtext.[ch]: new files implementing a
4684         per-buffer registry of rich text formats.
4685
4686         * gtk/gtk.h: #include gtktextbufferrichtext.h
4687
4688         * gtk/gtktextbufferserialize.[ch]: new files implementing an
4689         internal serialization format that can handle all of a text
4690         buffer's tags and pixbufs. It's not useful for anything except
4691         tranfer between instances of GtkTextBuffer (Anders Carlsson).
4692
4693         * gtk/Makefile.am: build the new files.
4694
4695         * gtk/gtkclipboard.[ch]: added convenience APIs for rich text,
4696         just as they exist for plain text and pixbufs.
4697
4698         * gtk/gtkselection.[ch]: added rich text convenience APIs here
4699         too.  Return the target list from gtk_target_list_ref(). Register
4700         GtkTargetList as boxed type. Added
4701         gtk_target_table_new_from_list() and gtk_target_table_free(),
4702         which make converting between GtkTargetList and arrays of
4703         GtkTargetEntry considerably easier.
4704
4705         * gtk/gtktextutil.[ch]: added _gtk_text_util_create_rich_drag_icon()
4706         which creates a fancy rich text icon (Matthias Clasen).
4707
4708         * gtk/gtktextbuffer.[ch]: use all the new stuff above and
4709         implement copy and paste of rich text. Added APIs for getting the
4710         target lists used for copy and paste. Added public enum
4711         GtkTextBufferTargetInfo which contains the "info" IDs associated
4712         with the entries of the target lists.
4713
4714         * gtk/gtktextview.c: use the new rich text APIs and
4715         GtkTextBuffer's new target list API to enable DND of rich text
4716         chunks.
4717
4718         * gtk/gtk.symbols: export all the new symbols added.
4719
4720         * tests/testtext.c: added rich text testing stuff.
4721
4722 2006-03-06  Matthias Clasen  <mclasen@redhat.com>
4723
4724         * gtk/gtktextview.c (text_window_invalidate_cursors): Take
4725         cursor width into account when calculating the area to 
4726         be invalidated.  (#333377, #323401 Steve Frécinaux)
4727
4728         * gtk/gtkmain.c (post_parse_hook): Set error when returning
4729         FALSE.  (#333268, Paolo Maggi, Christian Persch)
4730         
4731         * gtk/gtkpixmap.c (gtk_pixmap_set): Check that the pixmap
4732         has the right depth.  (#333363, Ed Catmur)
4733
4734 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
4735
4736         * gtk/gtkiconview.c (adjust_wrap_width): Apply some
4737         arbitrary lower limit for the guessed wrap width. (#332466,
4738         Donald Straney)
4739
4740 2006-03-05  Matthias Clasen  <mclasen@redhat.com>
4741
4742         Fix handling of image-only buttons.  (#332985, Kalle 
4743         Vahlmann, #333555)
4744         
4745         * gtk/gtkbutton.c (gtk_button_construct_child): Don't
4746         return early if there an image to show.
4747         (show_image): Always return TRUE if there is no text.
4748
4749 2006-03-04  Matthias Clasen  <mclasen@redhat.com>
4750
4751         * gdk/x11/gdkinput-x11 (gdk_input_translate_coordinates):
4752         Adjust the handling of min values for the x and y axes of 
4753         extended input devices  (#324562, #142536, Denis Auroux and 
4754         Robert Ögren)
4755
4756         * gtk/gtkexpander.c (gtk_expander_paint_focus): Position
4757         the focus rectangle correctly in RTL mode.  (#333291,
4758         Benjamin Berg)
4759
4760 2006-03-03  Tor Lillqvist  <tml@novell.com>
4761
4762         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_commit_char)
4763         (gtk_im_context_simple_reset): Avoid emitting superfluous
4764         preedit_changed signals. Thanks to Matthias. (#319407)
4765
4766 2006-03-03  Michael Natterer  <mitch@imendio.com>
4767
4768         Applied modified patch from maemo-gtk which makes separators more
4769         themeable. Fixes bug #332022.
4770
4771         * gtk/gtkwidget.c: added style properties "wide-separators",
4772         "separator-width" and "separator-height".
4773
4774         * gtk/gtkhseparator.c
4775         * gtk/gtkvseparator.c
4776         * gtk/gtkmenuitem.c
4777         * gtk/gtktoolbar.c: honor the new settings and paint separators
4778         using gtk_paint_box() if wide-separators is true.
4779
4780 2006-03-02  Dom Lachowicz <cinamod@hotmail.com>
4781
4782         * modules/engines/ms-windows/msw_style.c: Fix combobox theming
4783         regression noted in bug 321301
4784         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
4785         
4786 2006-03-02  Matthias Clasen  <mclasen@redhat.com>
4787
4788         * gtk/gtkiconview.c (gtk_icon_view_layout) 
4789         (gtk_icon_view_row_inserted, gtk_icon_view_scroll_to_path): 
4790         Make scroll_to_path work for newly inserted items, by delaying
4791         the scroll until layout is done.  (#332923, Cory Dodt)
4792
4793         * gtk/gtkcolorbutton.c (render): Use GTK_WIDGET_IS_SENSITIVE,
4794         not GTK_WIDGET_SENSITIVE.  (#333133, Christian Persch)
4795
4796 2006-03-02  Ross Burton  <ross@openedhand.com>
4797
4798         * gtk/gtktooltips.c:
4799         Disable tooltips if gtk-touchscreen-mode is activated (#315112).
4800
4801 2006-03-01  Kristian Rietveld  <kris@imendio.com>
4802
4803         * gtk/gtktreeselection.c (row_is_selectable): rename to
4804         _gtk_tree_selection_row_is_selectable and export internally,
4805         (gtk_tree_selection_real_select_node): changed so it is always
4806         possible to unselect insensitive nodes, changed the logic a bit to
4807         be more clear.
4808
4809         * gtk/gtktreeprivate.h: add _gtk_tree_selection_row_is_selectable.
4810
4811         * gtk/gtktreeview.c (gtk_tree_view_row_changed): Unselect a row if
4812         it became insensitive.
4813
4814 2006-02-27  Federico Mena Quintero  <federico@novell.com>
4815
4816         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Check that
4817         the fontsel has a screen assigned before doing anything.  This
4818         will at least warn the caller of what is wrong, since we only
4819         populate the family_list until we get a screen.  Also, put the
4820         reference docs here.  Fixes bug #332756.
4821         (gtk_font_selection_dialog_get_font_name): Document this here.
4822         (gtk_font_selection_get_font_name): Document this here; mention
4823         that the font names get normalized, so the result of this function
4824         may not be the same as what you set with
4825         gtk_font_selection_set_font_name().
4826
4827 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
4828
4829         * gtk/gtk.symbols:
4830         * gtk/gtktrayicon-x11.c: Fix symbol lists for make check.
4831
4832 2006-02-27  Michael Natterer  <mitch@imendio.com>
4833
4834         * gdk/x11/gdksettings.c: map "gtk-touchscreen-mode" to the
4835         "Gtk/TouchscreenMode" XSettings property, remove trailing
4836         whitespace.
4837
4838         * gdk/x11/checksettings.c: #include <string.h> and sprinkled some
4839         newlines.
4840
4841 Mon Feb 27 14:52:50 2006  Tim Janik  <timj@imendio.com>
4842
4843         * gdkevents-x11.c:
4844         * gdksettings.c: moved and renamed the gdk_settings_names and 
4845         gdk_settings_map.
4846
4847         * gdk/x11/checksettings.c: test program for the gdk_settings_map array.
4848
4849         * gdk/x11/Makefile.am: run checksettings as part of make check.
4850
4851 2006-02-27  Matthias Clasen  <mclasen@redhat.com>
4852
4853         * gtk/gtkdnd.c (gtk_drag_get_cursor): Comment out some unused
4854         code, and fix the reference point of composited drag cursors.
4855         (#320132, Christian Neumair)
4856
4857 Sun Feb 26 10:24:10 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
4858         
4859         *gdk/directfb/README
4860         Updated README to remove old build instructions
4861
4862 Sat Feb 25 10:35:23 PST 2006  Michael Emmel  <mike.emmel@gmail.com>
4863         
4864         *gdk/directfb/gdkdisplay-directfb.c
4865         *gdk/directfb/gdkwindow-directfb.c
4866         Added stubs for shape window functions to fix compile problems
4867
4868 2006-02-24  Federico Mena Quintero  <federico@novell.com>
4869
4870         * gtk/gtkfilechooserdefault.c (shortcuts_list_create): Make the
4871         column header visible, and make it be "_Places".  Changed the
4872         accessible object name to Places as well.  Fixes bug #331306.
4873         (file_pane_create): Do not create the path bar and "create folder"
4874         button here...
4875         (browse_widgets_create): ... but create them here instead.  This
4876         moves the path bar to be above both the hpaned, giving it the full
4877         width of the dialog.  Fixes bug #327733.
4878
4879 Thu Feb 23 13:28:21 2006  Tim Janik  <timj@imendio.com>
4880
4881         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): remove unconditional
4882         warnings about missing X locale support. Gdk properly handles this
4883         situation anyway.
4884
4885 Fri Feb 17 14:20:29 2006  Tim Janik  <timj@imendio.com>
4886
4887         * gtk/gtktreemodel.h: 
4888         * gtk/gtktextbtree.h: added G_GNUC_WARN_UNUSED_RESULT warnings for
4889         iterator functions, to avoid invalid iterators go unnoticed,
4890         suggested by Markku Vire <markku.vire@movial.fi>.
4891
4892 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
4893
4894         * tests/Makefile.am: 
4895         * tests/testnotebookdnd.c: Add notebook DND tests.
4896
4897         * gtk/gtknotebook.h: Add a reorder_tab keynav signal and an
4898         insert_page vfunc to GtkNotebook.
4899
4900         * gtk/gtk.symbols:
4901         * gtk/gtknotebook.c: Support notebook DND. New API includes
4902         gtk_notebook_set_window_creation_hook, 
4903         gtk_notebook_[gs]et_group_id,
4904         gtk_notebook_[gs]et_tab_reorderable, 
4905         gtk_notebook_[gs]et_tab_detachable (#73240, Carlos Garnacho)
4906
4907 2006-02-23  Matthias Clasen  <mclasen@redhat.com>
4908
4909         * gtk/gtktextiter.c: Fix macro declaration
4910
4911         * gtk/gtkaboutdialog.c: Remove an accidentally included function.
4912
4913 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
4914
4915         * gtk/gtktextbtree.c: 
4916         * gtk/gtktextiter.c: Minor optimizations.  (#332059, Arnaud Charlet)
4917
4918         * gtk/gtkradiobutton.c (gtk_radio_button_clicked): Emit notify::active
4919         here, when changing the value of this property.  (#331651)
4920
4921         * gtk/gtknotebook.c: Apply a patch by Paolo Borelli to
4922         make the tab menu keynavigatable.  (#331440)
4923
4924 2006-02-22  Matthias Clasen  <mclasen@redhat.com>
4925
4926         * gtk/gtkaboutdialog.c: Change Close buttons to GTK_RESPONSE_CANCEL
4927         so Escape works. (#331940, Daniel Drake)
4928
4929 2006-02-22  Michael Natterer  <mitch@imendio.com>
4930
4931         * gtk/gtksettings.c: added boolean property gtk-touchscreen-mode,
4932         which essentially means "there are no motion notify events", so
4933         widgets can't use the pointer hovering them for anything.
4934
4935         * gtk/gtkmenu.c: if gtk-touchscreen-mode is TRUE, scroll menus
4936         when clicking the scroll arrows, since hovering goes undetected.
4937         Fixes bug #323028.
4938
4939         Added boolean style property "double-arrows" which always makes
4940         both scroll arrows visible when the menu is too long.
4941         For pushed-in popup menus, both arrows are always shown
4942         (regardless of double-arrows), in order to fix user confusion
4943         about the blank area. Fixes bug #129463.
4944
4945 2006-02-21  Kristian Rietveld  <kris@imendio.com>
4946
4947         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
4948         Make sure we always update the virtual root, also when ->priv->root
4949         is still NULL.  (Markku Vire)
4950
4951 2006-02-21  Anders Carlsson  <andersca@imendio.com>
4952
4953         * gdk/quartz/gdkselection-quartz.c:
4954         (make_list):
4955         (gdk_text_property_to_utf8_list_for_display):
4956         Add these from the win32 backend.
4957
4958 2006-02-20  Matthias Clasen  <mclasen@redhat.com>
4959
4960         * gtk/gtknotebook.c: Properly update internal state
4961         when child visibility changes.  (#331785, Sebastien Bacher)
4962
4963         * gdk/gdkgc.c (_gdk_gc_update_context): Obtain the
4964         background color from the gc when it is needed.  (#331820)
4965
4966 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
4967
4968         * gdk/gdkgc.c (_gdk_gc_update_context): Add a gc_changed
4969         argument, and avoid setting the clip region if the gc
4970         has not changed. 
4971
4972         * gdk/gdkgc.c: Update all callers.
4973
4974         * gdk/gdkpango.c (get_cairo_context): Avoid updating the
4975         context if nothing changed.
4976
4977 2006-02-20  Anders Carlsson  <andersca@imendio.com>
4978
4979         * gdk/quartz/gdkdisplay-quartz.c:
4980         (gdk_display_supports_shapes):
4981         (gdk_display_supports_input_shapes):
4982         * gdk/quartz/gdkwindow-quartz.c:
4983         (gdk_display_warp_pointer):
4984         (gdk_window_input_shape_combine_mask):
4985         (gdk_window_input_shape_combine_region):
4986         (gdk_window_set_child_input_shapes):
4987         (gdk_window_set_accept_focus):
4988         (gdk_window_merge_child_input_shapes):
4989         Add stubs for input shape functions.
4990
4991 2006-02-20  Anders Carlsson  <andersca@imendio.com>
4992
4993         * gdk/quartz/gdkevents-quartz.c:
4994         (get_keyboard_modifiers_from_nsevent):
4995         Fix typo so ctrl gets passed on to the gdk event.
4996         
4997         * gdk/quartz/gdkproperty-quartz.c:
4998         (gdk_atom_name):
4999         g_strdup the atom name.
5000
5001 2006-02-20  Tor Lillqvist  <tml@novell.com>
5002
5003         * gdk/win32/gdkdisplay-win32.c (gdk_display_supports_shapes):
5004         New function, return TRUE.
5005         (gdk_display_supports_input_shapes): New function, return FALSE.
5006
5007         * gdk/win32/gdkwindow-win32.c (do_shape_combine_region): New
5008         function. Factor out code from gdk_window_shape_combine_mask().
5009         (gdk_window_shape_combine_region): Actually do something. Convert
5010         region to a HRGN and call do_shape_combine_region().
5011         (gdk_window_input_shape_combine_mask)
5012         (gdk_window_input_shape_combine_region)
5013         (gdk_window_set_child_input_shapes)
5014         (gdk_window_merge_child_input_shapes): New functions, dummy
5015         implementations.
5016
5017 2006-02-20  Michael Natterer  <mitch@imendio.com>
5018
5019         * gdk/x11/gdkdisplay-x11.h (struct _GdkDisplayX11): adding boolean
5020         have_shapes and have_input_shapes members fixes the build.
5021
5022 2006-02-20  Tor Lillqvist  <tml@novell.com>
5023
5024         * gdk/win32/gdkfont-win32.c: Replace all calls to g_strcasecmp()
5025         with g_ascii_strcasecmp().
5026
5027 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
5028
5029         Support input shapes:  (#331070)
5030         
5031         * gdk/gdk.symbols: 
5032         * gdk/gdkdisplay.h: 
5033         * gdk/gdkwindow.h: 
5034         * gdk/x11/gdkdisplay-x11.c (gdk_display_supports_shapes) 
5035         (gdk_display_supports_input_shapes): Functions to determine
5036         if a display supports shaped windows or input shapes.
5037
5038         * gdk/x11/gdkwindow-x11.c (gdk_window_input_shape_combine_region): 
5039         (gdk_window_input_shape_combine_mask): 
5040         (gdk_window_set_child_input_shapes): 
5041         (gdk_window_merge_child_input_shapes): Input shape versions
5042         of the window shape API.
5043
5044         * gtk/gtk.symbols: 
5045         * gtk/gtkwidget.h: 
5046         * gtk/gtkwidget.c (gtk_widget_input_shape_combine_mask): 
5047         New function to set an input shape on a widget.
5048
5049 2006-02-19  Matthias Clasen  <mclasen@redhat.com>
5050
5051         * gtk/gtklinkbutton.c (gtk_link_button_class_init): Fix
5052         a cast.
5053
5054 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
5055
5056         DND keynav support:
5057         
5058         * gtk/gtkdnd.c (gtk_drag_update_idle): Protect against 
5059         info->last_event being NULL.
5060         (gtk_drag_key_cb): Handle arrow keys to move the drag icon
5061         and space or enter to drop.
5062
5063 2006-02-17  Matthias Clasen  <mclasen@redhat.com>
5064
5065         * gdk/gdkregion-generic.c (gdk_region_union_with_rect):
5066         Be robust and reject rectangles with negative width or
5067         height.  (#331467, Benjamin Berg)
5068
5069
5070 2006-02-17  Kristian Rietveld  <kris@imendio.com>
5071
5072         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_rows_reordered):
5073         Only update the virtual root if the child path is an ancestor
5074         of the virtual root.  (Patch from Markku Vire).
5075
5076 2006-02-16  Federico Mena Quintero  <federico@novell.com>
5077
5078         * gtk/gtkfilechooserdialog.c (gtk_file_chooser_dialog_map): Call
5079         ::initial_focus() on the child before calling ::map() on our
5080         parent class.  This will prevent the shortcuts treeview from
5081         highlighting its first row as a result of getting assigned focus
5082         by gtk_dialog_map().
5083
5084 2006-02-14  Matthias Clasen  <mclasen@redhat.com>
5085
5086         * gtk/gtkwidget.c (gtk_widget_send_expose): Remove redundant
5087         check.  Pointed out by Bodo-Merle Sandor.
5088
5089         * gtk/gtkcolorbutton.c (gtk_color_button_[un]realize):
5090         Remove unnecessary checks.  
5091
5092 2006-02-12  Matthias Clasen  <mclasen@redhat.com>
5093
5094         * gtk/gtkicontheme.c (gtk_icon_theme_list_icons): Give working
5095         examples in the docs.  (#330944, John Spray)
5096
5097 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
5098         
5099         * gtk/gtkiconview.c (gtk_icon_view_get_item_at_coords): Fix
5100         row_spacing/column_spacing confusion.  (#330732, Donald Straney)
5101
5102 2006-02-10  Matthias Clasen  <mclasen@redhat.com>
5103
5104         * gtk/gtkstyle.c: Add some docs. (#330073, Mart Raudsepp)
5105
5106         * gtk/gtkentrycompletion.c (gtk_entry_completion_match_selected): 
5107         Guard against NULL.  (#330177, Raphael Slinckx)
5108
5109 2006-02-10  Murray Cumming  <murrayc@murrayc.com>
5110
5111         * docs/reference/gtk/tmpl/gtkcomboboxentry.sgml: Mention that 
5112         the changed signal is emitted when typing - not just when 
5113         selecting from the list. Suggest use of GtkEntry::action to 
5114         etect end of typing.
5115          gtk/gtkcombobox.c: (gtk_combo_box_class_init): changed signal 
5116         ocumentation: Mention that the GtkComboBoxEntry emits it when 
5117         he users types, not just when he selects from the list.
5118
5119 2006-02-10  Murray Cumming  <murrayc@murrayc.com
5120
5121         * gtk/gtkassistant.h: Correct the declaration of the prepare 
5122         default signal handler to match its registration and use.
5123
5124 2006-02-09  Ross Burton  <ross@burtonini.com>
5125
5126         * gtk/gtkfontbutton.c:
5127         Work out the font size in floating point, and display the font
5128         size with %g instead of %d (#317590)
5129
5130 2006-02-09  Tor Lillqvist  <tml@novell.com>
5131
5132         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
5133         <WM_MOUSELEAVE>: If we don't know where we went, and have
5134         generated a leave event, set current_window to the root
5135         window. This assures we will generate proper enter and leave
5136         events for popup windows. (#325521)
5137
5138 2006-02-08  John Ehresman  <jpe@wingware.com>
5139
5140         * gdk/win32/gdkevents-win32.c (gdk_event_translate)
5141         <WM_MOUSEACTIVATE>
5142         * gdk/win32/gdkwindow-win32.c (show_window_internal)
5143         (gdk_window_raise): Call SetWindowPos() instead of
5144         SetForegroundWindow() or BringWindowToTop() if the window
5145         shouldn't accept focus. (#327375)
5146         
5147 2006-02-08  John Ehresman  <jpe@wingware.com>
5148
5149         * gdk/win32/gdkwindow-win32.c: Let gdk_window_set_decorations()
5150         take precedence over anything derived from hints. Restructure
5151         related code and logic, add some new helper functions. (#327217)
5152
5153 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
5154
5155         * gtk/gtkfilechooserbutton.c: Don't put relevant callss
5156         in g_assert().  (#329876, Kristian Rietveld)
5157
5158 2006-02-08  Tor Lillqvist  <tml@novell.com>
5159
5160         * gdk/win32/gdkevents-win32.c (gdk_pointer_grab)
5161         (gdk_display_pointer_ungrab, gdk_keyboard_grab)
5162         (gdk_display_keyboard_ungrab): Consistenly use assign_object()
5163         when assigning GdkWindow pointers so that the ref counting doesn't
5164         get off whack.
5165
5166         (handle_stuff_while_moving_or_resizing): Don't use deprecated API.
5167
5168         (gdk_event_translate) <WM_MOUSEMOVE>: When the pointer is grabbed
5169         with owner_events FALSE, generate enter and leave events only for
5170         the grab window. (#321054)
5171
5172 2006-02-08  Kristian Rietveld  <kris@imendio.com>
5173
5174         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_ref_path),
5175         (gtk_tree_model_filter_unref_path): free temporary paths after
5176         usage (patch from maemo-gtk),
5177         (gtk_tree_model_filter_clear_cache): fix little typo in the docs
5178         (patch from maemo-gtk).
5179
5180         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_deleted): remove
5181         stale FIXME.
5182
5183 2006-02-08  Matthias Clasen  <mclasen@redhat.com>
5184
5185         * gtk/gtkfilesystem.c (gtk_file_info_copy): Copy the display_key
5186         as well.  (#330389, Markku Vire)
5187
5188 2006-02-08  Tor Lillqvist  <tml@novell.com>
5189
5190         * gtk-zip.sh.in: Drop the timestamp from the zipfile names.
5191
5192 2006-02-07  Sven Neumann  <sven@gimp.org>
5193
5194         * gdk/directfb/AUTHORS: updated mine and Dok's email address.
5195
5196 2006-02-06  Kristian Rietveld  <kris@gtk.org>
5197
5198         * gtk/gtktreeview.c (gtk_tree_view_get_search_entry): fix compiler
5199         warning.
5200
5201 2006-02-05  Dom Lachowicz <cinamod@hotmail.com>
5202
5203         * gdk/gdkcairo.c (gdk_cairo_set_source_pixbuf): Bug #330022
5204         Wrong pixel values are computed when color = 0xFF and alpha = 0xFF
5205         
5206 2006-02-04  Michael Emmel  <mike.emmel@gmail.com>
5207         Added new directfb backend located in gdk/directfb
5208         plus patches to compile new backend
5209         compile with --with-gdktarget=directfb
5210
5211 2006-02-03  Federico Mena Quintero  <federico@ximian.com>
5212
5213         Work around https://bugs.freedesktop.org/show_bug.cgi?id=4320,
5214         which used to be our own
5215         http://bugzilla.gnome.org/show_bug.cgi?id=314616.  If one uses a
5216         pixmap for a pattern in Cairo, and sets the pattern to
5217         CAIRO_EXTEND_REPEAT; and if the destination surface is also a
5218         pixmap, Cairo does a slow copy instead of using XCopyArea().  So,
5219         we use the same code that we used in GTK+ 2.6 (pre-cairo), by
5220         filling the double-buffer pixmap with a tiled GC and
5221         XFillRectangle().
5222
5223         * gdk/gdkwindow.c (BackingRectMethod): New structure with a
5224         cairo_t and a GdkGC field.  Depending on which of these fields
5225         gets filled in, we'll use Cairo or GDK to clear the double-buffer
5226         pixmap when painting a window.
5227         (setup_backing_rect_method): Fill a BackingRectMethod as
5228         appropriate, depending on the window's configuration and our
5229         knowledge of whether Cairo is fast or slow when doing repeating
5230         patterns.
5231         (gdk_window_clear_backing_rect): Call
5232         setup_backing_rect_method().  Depending on what it returns, use
5233         Cairo to clear the double-buffer pixmap, or plain GDK.
5234
5235 2006-02-03  Matthias Clasen  <mclasen@redhat.com>
5236
5237         * gtk/gtklabel.c (get_layout_location): Fix handling
5238         of padding in RTL.  (#329099, Hooman Mesgary) 
5239
5240 2006-02-02  Matthias Clasen  <mclasen@redhat.com>
5241
5242         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display):
5243         Make drops on the root window work again.  (#145243, Andrew S. Dixon)
5244
5245 2006-02-01  Matthias Clasen  <mclasen@redhat.com>
5246
5247         * gtk/gtkwidget.c (gtk_widget_class_init): Wrap dnd signal
5248         docs to 80 columns.
5249
5250 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
5251
5252         * autogen.sh: Touch README and INSTALL here to pacify 
5253         automake.  (#329124, Kjartan Maraas, Tim Janik)
5254
5255 2006-01-31  Matthias Clasen  <mclasen@redhat.com>
5256
5257         * gtk/gtk.symbols:
5258         * gtk/gtkassistant.h: 
5259         * gtk/gtkassistant.c: Actually implement visibility handling,
5260         and add gtk_assistant_update_buttons_state.
5261
5262         * tests/testassistant.c: Test visibility handling.
5263
5264 2006-01-31  Kristian Rietveld  <kris@imendio.com>
5265
5266         * gtk/gtkstyle.c (gtk_default_draw_flat_box): Add support for row
5267         hinting for the selected state.
5268
5269 2006-01-30  Matthias Clasen  <mclasen@redhat.com>
5270
5271         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup): 
5272         Make sure the tree view is realized, since we grab the
5273         focus to it.  (#329144, Wouter Bolsterlee)
5274
5275         * gtk/gtkspinbutton.h: 
5276         * gtk/gtkspinbutton.c: Add a wrapped signal.  (#322933,
5277         Carlos Garnacho Parro)
5278
5279         * gtk/gtkassistant.c: More generous spacing. (#328082,
5280         Christian Persch, patch by Carlos Garnacho)
5281         
5282         * gtk/gtktoggletoolbutton.c (gtk_toggle_tool_button_set_property): 
5283         Use the setter for active.  (#329208, Guillaume Cottenceau)
5284
5285         * docs/tools/widgets.c (get_all_widgets): Add GtkLinkButton
5286
5287         * gtk/gtkassistant.c (gtk_assistant_init): Move the
5288         last button to the left where it does not affect
5289         the positioning of forward/back.
5290
5291 2006-01-29  Matthias Clasen  <mclasen@redhat.com>
5292
5293         More GtkAssistant work, by Carlos Garnacho.
5294         
5295         * tests/testassistant.c: Additions.
5296
5297         * gtk/gtkassistant.c: Handle page visibility, other 
5298         small fixes.
5299
5300         * docs/tools/widgets.c: Add GtkAssistant.
5301
5302 2006-01-28  Behdad Esfahbod  <behdad@gnome.org>
5303
5304         * configure.in: If major.minor of required and available glib versions
5305         are the same, add -DG_DISABLE_DEPRECATED to GLIB_CFLAGS. (bug #328617)
5306
5307         * */Makefile.am: Remove hardcoded -DG_DISABLE_DEPRECATED.
5308
5309 2006-01-28  Dom Lachowicz <cinamod@hotmail.com>
5310
5311         * modules/engines/ms-windows/msw-style.c: Re-sync with gtk-wimp
5312         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Ditto
5313         
5314 2006-01-28  Matthias Clasen  <mclasen@redhat.com>
5315
5316         * gtk/gtk.symbols: 
5317         * gtk/gtklinkbutton.h: 
5318         * gtk/gtklinkbutton.c: Allow to set a global hook function
5319         thats called whenever a link button is clicked.
5320
5321         More work on GtkAssistant by Carlos Garnacho:
5322         
5323         * demos/gtk-demo/Makefile.am: 
5324         * demos/gtk-demo/assistant.c: Add a  GtkAssistant demo.
5325
5326         * gtk/gtkassistant.c: Handle focus, several small fixes to the
5327         flow computations.
5328
5329 2006-01-27  Federico Mena Quintero  <federico@ximian.com>
5330
5331         Fixes bug #328820:
5332
5333         * gtk/gtkfilechooserdefault.c
5334         (gtk_file_chooser_default_class_init): Make GDK_KP_Divide pop up
5335         the location dialog populated to "/".
5336         (tree_view_keybinding_cb): Likewise.
5337         (trap_activate_cb): Likewise.
5338
5339 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
5340
5341         * gtk/gtkcalendar.c (gtk_calendar_size_request): Use translated format
5342         strings for L10n in size calculation too.
5343
5344         * gtk/gtkcalendar.c (calendar_paint_week_numbers): Expand buffer to
5345         accomodate localized digits.
5346
5347 2006-01-26  Matthias Clasen  <mclasen@redhat.com>
5348
5349         * tests/prop-editor.c: Introspect child properties. too.
5350
5351 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
5352
5353         * gtk/gtkcalendar.c (calendar_paint_week_numbers, calendar_paint_day):
5354         Use contexed translated strings calendar:week:digits|%d and
5355         calendar:day:digits|%d to let translators choose localized digits for
5356         week and day numbers. (bug #317171, Hamed Malek)
5357
5358 2006-01-25  Behdad Esfahbod  <behdad@gnome.org>
5359
5360         * gtk/gtklabel.c (get_layout_location): Use logical extents of the
5361         layout instead of ink extents.  According to Pango docs, that's what
5362         should be used for placement.  Moreover, simply use
5363         pango_layout_get_pixel_size instead of getting the extents and
5364         dividing ourselves.
5365
5366 2006-01-25  Matthias Clasen  <mclasen@redhat.com>
5367
5368         * gtk/gtkentrycompletion.c: 
5369         * gtk/gtkentry.c: Be more careful when blocking signals. 
5370
5371         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): Only
5372         set the cursor size if it is != 0.
5373
5374         * gtk/gtksettings.c (gtk_settings_class_init): Change the default value
5375         of gtk-cursor-theme-size to 0, meaning "use default".
5376
5377 2006-01-24  Kristian Rietveld  <kris@gtk.org>
5378
5379         #322591, Jonathan Blandford.
5380
5381         * gtk/gtktreeview.[ch] (gtk_tree_view_get_search_entry),
5382         (gtk_tree_view_set_search_entry),
5383         (gtk_tree_view_get_search_position_func),
5384         (gtk_tree_view_set_search_position_func): New functions,
5385         and small adaptions to the tree view code to allow for setting
5386         the entry and search position function.
5387
5388         * gtk/gtktreeprivate.h: Removed GtkTreeViewSearchDialogPositionFunc
5389         typedef, which is now in gtktreeview.h as
5390         GtkTreeViewSearchPositionFunc.  Add/update fields.
5391
5392         * gtk/gtk.symbols: Add new functions.
5393
5394         * tests/testtreesort.c: Add a little test for _set_search_entry().
5395
5396 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
5397
5398         Add GtkLinkButton, a port of GnomeHRef.  (#314808, Emmanuele Bassi)
5399         
5400         * gtk/gtklinkbutton.h: 
5401         * gtk/gtklinkbutton.c: New files.
5402
5403         * gtk/gtk.h:
5404         * gtk/gtk.symbols: 
5405         * gtk/Makefile.am: Glue.
5406
5407         * gtk/gtkaboutdialog.c: Use GtkLinkButton.
5408         
5409         * gtk/gtkwidget.c: Add link-color and visited-link-color style
5410         properties.  (#113649, Leena Gunda)
5411
5412         * gtk/gtkaboutdialog.c: Use the new style properties here instead
5413         of the about dialogs own link-color property. 
5414
5415 2006-01-23  Kristian Rietveld  <kris@gtk.org>
5416
5417         * gtk/gtktreemodel.c (gtk_tree_model_base_init): don't copy
5418         tree paths when emitting signals. (#325041, Matthias Clasen).
5419
5420 2006-01-23  Behdad Esfahbod  <behdad@gnome.org>
5421
5422         * gtk/gtklabel.c (get_layout_location): Fix misalignment of RTL
5423         text in ellipsized GtkLabel: use layout width if set, otherwise
5424         fallback to ink extents width. (#322042)
5425
5426 2006-01-23  Matthias Clasen  <mclasen@redhat.com>
5427
5428         * gtk/gtkassistant.c (compute_last_button_state): Only show the
5429         last button if we can jump to the end. 
5430         (gtk_assistant_init): Make the spacing and button order more
5431         HIG compliant.
5432
5433         Fix drawing issues in progress bars.  (#328081, Christian Persch)
5434         
5435         * gtk/gtkprogressbar.c (gtk_progress_bar_size_request): Always
5436         request enough space. 
5437         (gtk_progress_bar_paint_activity) 
5438         (gtk_progress_bar_paint_continuous) 
5439         (gtk_progress_bar_paint_discrete): Clip when drawing the bar.
5440
5441 2006-01-23  Michael Natterer  <mitch@imendio.com>
5442
5443         * gtk/gtkcolorbutton.c: move destruction of the private GdkGC
5444         from finalize() to unrealize(). Fixes BadMatch on display change
5445         (bug #85715).
5446
5447 2006-01-22  Kristian Rietveld  <kris@gtk.org>
5448
5449         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Revert previous
5450         commit after more searching in the bugzilla archives (see #309221).
5451
5452 2006-01-22  Kristian Rietveld  <kris@gtk.org>
5453
5454         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Remove second call
5455         to gtk_tree_view_column_cell_set_cell_data, since we also set the
5456         cell data before iterating over the columns for exposure. (Fixes
5457         #322471, Duncan Coutts).
5458
5459 2006-01-21  Matthias Clasen  <mclasen@redhat.com>
5460
5461         * tests/testassistant.c: Add some tests for GtkAssistant
5462
5463         * tests/Makefile.am: Glue
5464
5465 2006-01-20  Matthias Clasen  <mclasen@redhat.com>
5466
5467         * gtk/gtkassistant.c: Fix the docs to reflect the actual signal
5468         signatures.
5469
5470         * gtk/gtktextview.c (gtk_text_view_set_virtual_cursor_pos): Don't
5471         crash if layout is NULL.  (#327934, Christian Kirbach)
5472
5473 2006-01-20  Dan Winship  <danw@novell.com>
5474
5475         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_class_init,
5476         tree_view_keybinding_cb, trap_activate_cb): On "unix", pop up the
5477         "Open Location" window on "~" as well as "/". #153213
5478         (location_entry_create): Fix this so autocompletion still works
5479         correctly in that case.
5480
5481 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
5482
5483         * configure.in: Explicitly link against Xrender.  
5484         (#327538, Christophe Belle)
5485         
5486         * gdk/x11/gdkprivate-x11.h (XID_FONT_BIT): 
5487         * gdk/x11/gdkfont-x11.c: 
5488         * gdk/x11/gdkxid.c: Use an unused high bit in the
5489         XID to mark fonts in the global xid hash table.
5490
5491         * gdk/x11/gdkcursor-x11.c (update_cursor): Skip fonts
5492         when iterating over the xid hash table, since calling
5493         GDK_IS_WINDOW () on an GdkFont can cause a segfault.
5494         (#327751, Ryan Lovett)
5495
5496 2006-01-19  Matthias Clasen  <mclasen@redhat.com>
5497         
5498         * gtk/gtkassistant.[hc]: Use a priv pointer for
5499         cheap access to the priv struct.  (#327725, Christian
5500         Persch)
5501
5502         * gtk/gtkassistant.h: Fix line endings.
5503
5504 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
5505
5506         * gtk/gtkassistant.[hc]: Add GtkAssistant, a widget to
5507         construct multi-step wizards.  (#115348, Martyn Russell, 
5508         Matthias Clasen, Carlos Garnacho Parro)
5509
5510         * gtk/gtk.symbols:
5511         * gtk/Makefile.am: 
5512         * gtk/gtk.h: Necessary glue.
5513
5514 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5515
5516         * gdk/quartz/gdkevents-quartz.c:
5517         (get_mm_from_pixels):
5518         (gdk_screen_get_width_mm):
5519         (gdk_screen_get_height_mm):
5520         Implement these functions.
5521         (#327228, Thomas Broyer).
5522
5523 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5524
5525         * gdk/quartz/gdkdrawable-quartz.c:
5526         (gdk_quartz_draw_polygon):
5527         (gdk_quartz_draw_lines):
5528         Implement these functions.
5529         (#327226, Thomas Broyer)
5530         
5531 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5532
5533         * gdk/quartz/gdkkeys-quartz.c:
5534         (maybe_update_keymap):
5535         Support non-MacRoman keyboard layouts.
5536         (#322585, Wolfgang Thaller)
5537         
5538 2006-01-18  Anders Carlsson  <andersca@imendio.com>
5539
5540         * gdk/quartz/gdkmain-quartz.c:
5541         (_gdk_windowing_init):
5542         Make the process a foreground application.
5543         (#322481, Wolfgang Thaller)
5544         
5545 2006-01-18  Matthias Clasen  <mclasen@redhat.com>
5546
5547         * gtk/gtkrbtree.c: 
5548         * gtk/gtktreemodel.c: Fix several g_new() calls which
5549         were using extra indirections or pointless casts.  
5550         (#327423, Morten Welinder)
5551
5552 Tue Jan 17 19:27:59 2006  Tim Janik  <timj@imendio.com>
5553
5554         * gtk/gtkprogress.c: fix adopted from maemo-gtk.
5555         gtk_progress_create_pixmap(): clear out the newly created offscreen 
5556         pixmap, so themes making use of transparency don't draw onto garbage.
5557
5558 2006-01-17  Michael Natterer  <mitch@imendio.com>
5559
5560         * gtk/gtkbutton.c: remove the "child-spacing" style property again
5561         and add "inner-border" instead. That's far more flexible and
5562         "child-spacing" was a bad name anyway.
5563
5564 2006-01-17  Michael Natterer  <mitch@imendio.com>
5565
5566         * configure.in (ALL_LINGUAS): remove "ang" again until all po
5567         files are there.
5568
5569 2006-01-16  Abel Cheung  <maddog@linuxhall.org>
5570
5571         * configure.in: Added "ang" "zh_HK" to ALL_LINGUAS.
5572
5573 2006-01-16  Matthias Clasen  <mclasen@redhat.com>
5574
5575         * README.in: Mention new pixbuf engine features.
5576
5577         * gtk/gtk.symbols: 
5578         * gtk/gtkradioaction.[hc]: Add a current-value property and a
5579         setter for it.  (#322735, Jorn Baayen)
5580         
5581 2006-01-16  Michael Natterer  <mitch@imendio.com>
5582
5583         * gtk/gtkbutton.c: applied patch from maemo-gtk which adds a
5584         child-spacing style property. Fixes bug #327202.
5585
5586 2006-01-16  Anders Carlsson  <andersca@imendio.com>
5587
5588         * gdk/quartz/gdkdisplay-quartz.c:
5589         * gdk/quartz/gdkevents-quartz.c:
5590         (gdk_keyboard_grab):
5591         (gdk_display_keyboard_ungrab):
5592         (gdk_keyboard_grab_info_libgtk_only):
5593         (find_window_for_event):
5594         Implement keyboard grabs.
5595         
5596         (_gdk_quartz_send_map_events):
5597         * gdk/quartz/gdkmain-quartz.c:
5598         * gdk/quartz/gdkprivate-quartz.h:
5599         New function that synthesizes map events.
5600         
5601         * gdk/quartz/gdkwindow-quartz.c:
5602         (_gdk_windowing_window_init):
5603         The root window is always visible.
5604         
5605         (all_parents_shown):
5606         (show_window_internal):
5607         Send map events.
5608         
5609         (gdk_window_hide):
5610         Ungrab keyboard and pointer
5611
5612 2006-01-15  Kristian Rietveld  <kris@gtk.org>
5613
5614         Fixes #324099, Tommi Komulainen.
5615
5616         * gtk/gtktreestore.[ch] (gtk_tree_store_insert_with_values),
5617         (gtk_tree_store_insert_with_valuesv): new functions, analog to
5618         those found in GtkListStore.
5619
5620         * gtk/gtktreestore.c (gtk_tree_store_real_set_value),
5621         (gtk_tree_store_set_valist), (gtk_tree_store_set_valist_internal),
5622         (gtk_tree_store_sort_iter_changed): refactored.
5623
5624         * gtk/gtk.symbols: updated.
5625
5626         * tests/treestoretest.c: added a test for this new functionality.
5627
5628 2006-01-14  Matthias Clasen  <mclasen@redhat.com>
5629
5630         * gtk/gtkentry.c (gtk_entry_drag_data_received): Remove 
5631         an unused variable.
5632
5633         * gtk/gtkiconfactory.c (get_default_icons): Register RTL 
5634         versions of the indent and unindent icons.  (#326857,
5635         Itai Bar-Haim)
5636
5637         * gtk/Makefile.am (STOCK_ICONS): And add them here.
5638
5639         Fix a crash with combo boxes in RESIZE_IMMEDIATE
5640         containers.  (#326806, Sebastian Bacher)
5641         
5642         * gtk/gtkcombobox.c (gtk_combo_box_size_allocate) 
5643         (gtk_combo_box_size_request): Don't call 
5644         gtk_combo_box_check_appearance() from here, as that 
5645         can lead to recursion. 
5646         (gtk_combo_box_init): Instead, call it here.
5647
5648 2006-01-14  Kristian Rietveld  <kris@gtk.org>
5649
5650         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_iter_children): fix
5651         a typo which caused this whole thing to not function ...
5652
5653 2006-01-14  Kristian Rietveld  <kris@gtk.org>
5654
5655         * gtk/gtktreeview.c (gtk_tree_view_size_allocate),
5656         (validate_visible_area): fixup adjustments and top_row if the
5657         current dy + page_size exceeds the new tree view height. (Fixes
5658         #316689, reported by Chris Lord).
5659
5660 2006-01-13  Matthias Clasen  <mclasen@redhat.com>
5661
5662         * */abicheck.sh: Make this work on more platforms.
5663
5664 2006-01-13  Kristian Rietveld  <kris@imendio.com>
5665
5666         * tests/testtreefocus.c (set_indicator_size), (main): add a little
5667         test for the newly introduced indicator-size property.
5668
5669 2006-01-13  Kristian Rietveld  <kris@imendio.com>
5670
5671         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_init):
5672         initialize the inconsistent field in the private structure,
5673         (gtk_cell_renderer_toggle_class_init),
5674         (gtk_cell_renderer_toggle_{set,get}_property),
5675         (gtk_cell_renderer_toggle_get_size): introduce a indicator-size
5676         property.
5677
5678 2006-01-13  Michael Natterer  <mitch@imendio.com>
5679
5680         * gtk/gtktreeview.c (gtk_tree_view_real_expand_row)
5681         (gtk_tree_view_real_collapse_row): don't animate the expander
5682         arrows if gtk-enable-animations is FALSE (bug #142582).
5683
5684 2006-01-12  Matthias Clasen  <mclasen@redhat.com>
5685
5686         * gtk/gtknotebook.c: Replace hardcoded values for tab-overlap and
5687         tab-curvature with style properties.  (#325282, Alexander Nedotsukov)
5688
5689         * gtk/gtktextview.c (gtk_text_view_commit_text) 
5690         (gtk_text_view_delete_from_cursor, gtk_text_view_backspace): 
5691         Reset the virtual cursor position.  (#326003, Evert Verhellen)
5692
5693         * gtk/gtkwidget.c (gtk_widget_set_app_paintable): Add some docs
5694         about RGBA windows. (#326486, Benjamin Otte)
5695
5696 2006-01-12  Michael Natterer  <mitch@imendio.com>
5697
5698         * gdk/gdkimage.c (scratch_image_info_for_depth): connect to the
5699         display's "closed" signal and free the cached scratch images upon
5700         display closing (bug #85715).
5701
5702 2006-01-12  Michael Natterer  <mitch@imendio.com>
5703
5704         * gtk/gtkexpander.c (gtk_expander_set_expanded): skip the
5705         animation if the gtk-enable-animations setting is FALSE
5706         (bug #142582).
5707
5708 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
5709
5710         * gtk/gtklabel.c: Fix a C99ism (#326658, Kazuki Iwamoto)
5711
5712 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
5713
5714         * gtk/gtklabel.c: Add some notify batching, always
5715         emit notify after setting the new value.
5716
5717         * gtk/gtkmessagedialog.c: Add properties.  (#311254,
5718         Johan Dahlin)
5719         (gtk_message_dialog_new): Remove some redundant code, pointed
5720         out by Gustavo Carneiro.
5721
5722         * gdk/x11/gdkwindow-x11.c (create_moveresize_window): Clean
5723         up properly if the grab fails.
5724         (finish_drag): Don't leak a reference to moveresize_window
5725         here.
5726
5727 2006-01-11  Matthias Clasen  <mclasen@redhat.com>
5728
5729         * gdk/x11/gdkevents-x11.c: Fix string offsets.
5730
5731         Allow falling back to another icon theme before 
5732         hicolor.   (#325546, Rodney Dawes)
5733         
5734         * gtk/gtksettings.c: Add a gtk-fallback-icon-theme setting.
5735
5736         * gdk/x11/gdkevents-x11.c: Map it to the XSetting Net/FallbackIconTheme.
5737         
5738         * gtk/gtkicontheme.c: Consult the fallback icon theme before
5739         looking in hicolor. 
5740
5741 2006-01-10  Matthias Clasen  <mclasen@redhat.com>
5742
5743         * tests/testgtk.c: Add an expander example.
5744
5745         * gtk/gtkcalendar.c (gtk_calendar_focus_out): Queue a draw
5746         when losing the focus.  (#326064, Andrew Conkling)
5747
5748         * gtk/gtkimmulticontext.c: 
5749         * gtk/gtkhsv.c: 
5750         * gtk/gtkhandlebox.c: Convert to use instance private data.
5751
5752         * gtk/gtk.h: Remove duplicate include.  (#326429, 
5753         Benoît Carpentier)
5754
5755         * gtk/gtkpaned.c: Convert to use instance private data.
5756
5757 2006-01-10  Michael Natterer  <mitch@imendio.com>
5758
5759         * gdk/gdkpango.c (on_renderer_display_closed): disconnect from the
5760         right object ("closed" is emitted by the display, not the screen).
5761         (bug #85715)
5762
5763 2006-01-10  Anders Carlsson  <andersca@imendio.com>
5764
5765         * gdk/quartz/gdkproperty-quartz.c:
5766         (ensure_atom_tables):
5767         (intern_atom_internal):
5768         (gdk_atom_intern):
5769         (gdk_atom_intern_static_string):
5770         (gdk_atom_name):
5771         Implement local-only atoms.
5772
5773 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
5774
5775         * gdk/gdkgc.c (gc_get_foreground): Correct a warning.
5776         (#326341, Benoît Carpentier)
5777
5778         * gtk/gtk.symbols:
5779         * gtk/gtkwindow.h:
5780         * gtk/gtkwindow.c (gtk_window_get_group): Make this function
5781         public API.  (#307099, Todd Berman)
5782
5783         * gtk/gtkmenu.c: 
5784         * gtk/gtkmain.c: 
5785         * gtk/gtkentrycompletion.c: 
5786         * gtk/gtkcombo.c: 
5787         * gtk/gtkcombobox.c: Update all callers.
5788
5789         * gtk/gtkentry.c (paste_received):  Make GtkEntryCompletion
5790         complete on pastes at the end.  (#165714, Christian Neumair)
5791
5792         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
5793         Prevent the first row being focused on map.  (#137351,
5794         Niklas Knutsson)
5795
5796 2006-01-09  Johan Dahlin  <jdahlin@async.com.br>
5797
5798         * gtk/gtk.symbols:
5799         * gtk/gtkeditable.h:
5800         * gtk/gtksizegroup.c: (gtk_size_group_get_widgets):
5801         * gtk/gtksizegroup.h:
5802         (struct _GtkSizeGroup): 
5803
5804         Add gtk_size_group_get_widgets, fixes #326324.
5805         Also mark all fields of GtkSizeGroup as private
5806
5807 2006-01-09  Matthias Clasen  <mclasen@redhat.com>
5808
5809         * gtk/gtktextlayout.c (gtk_text_layout_finalize): Don't
5810         leak preedit_string and preedit_attrs.  (#322332, Paolo
5811         Borelli)
5812
5813         * gtk/gtk.symbols:
5814         * gtk/gtkaction.h: 
5815         * gtk/gtkaction.c (gtk_widget_get_action): New function to
5816         get the action for a proxy.  (#326288)
5817
5818         * gtk/gtkaction.c: Go back to the old key for attaching the
5819         action to the proxy.  (#326288, Diego González)
5820
5821 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
5822
5823         * gtk/gtkactiongroup.c (dgettext_swapped): Don't translate
5824         empty strings.  (#326200, Christian Stimming)
5825
5826 2006-01-08  Matthias Clasen  <mclasen@redhat.com>
5827
5828         * gtk/gtkentry.[hc]: 
5829         * gtk/gtklabel.[hc]: Shrink the private structs of these a bit.
5830
5831         * gtk/gtklabel.c (get_layout_location): Fix label alignment 
5832         when width-chars is set.  (#326098, Benjamin Otte)
5833
5834         * gdk/gdkregion-generic.c (miRegionCopy): Fix this for the 
5835         single-rectangle case.  (#326127, Benjamin Berg)
5836         (gdk_region_copy): Use miRegionCopy() here.
5837
5838 2006-01-07  Matthias Clasen  <mclasen@redhat.com>
5839
5840         Fix actiongroup-action interaction that relied on 
5841         actions connecting to notify on themselves:
5842         
5843         * gtk/gtkaction.[hc]: Factor out the code updating the
5844         visibility/sensitivity of proxies into _gtk_action_sync_visible()
5845         and _gtk_action_sync_sensible().
5846
5847         * gtk/gtkactiongroup.c: Call the new functions when the
5848         group visibility/sensitivity changes. 
5849
5850 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
5851
5852         * gtk/gtkactiongroup.c (gtk_action_group_set_sensitive) 
5853         (gtk_action_group_set_visible): Add missing property change
5854         notification.
5855
5856 2006-01-06  Matthias Clasen  <mclasen@redhat.com>
5857
5858         * gtk/gtkfilechooserbutton.c (model_add_special): Just use the
5859         directory name for the home dir.  (#325817, Federico Mena Quintero)
5860         
5861         * gtk/gtktexttag.c (gtk_text_attributes_new): Initialize editable 
5862         to TRUE. 
5863         (gtk_text_tag_class_init): The default value for the direction 
5864         property is GTK_TEXT_DIR_NONE. Add notes about the initial values 
5865         of the font and language properties.
5866
5867         * gtk/gtktoolbutton.c (gtk_tool_button_class_init): Make clicked
5868         an action signal.  (#325782, Martyn Russell)
5869
5870         * gtk/gtkviewport.c (viewport_set_adjustment): Disconnect from
5871         the old adjustments signals.  (#325869, Jorn Baayen)
5872
5873 2006-01-06  Hans Breuer  <hans@breuer.org>
5874
5875         * tests/makefile.msc : added a bunch of tests
5876         * tests/testcellrenderertext.c : use g_snprintf()
5877         * tests/testfilechooserbutton.c : don't include unistd.h twice.
5878         Removed the unconditional one and added direct.h for G_OS_WIN32
5879         
5880 2006-01-05  Hans Breuer  <hans@breuer.org>
5881
5882         * gdk/makefile.msc : also recurse into win32 for ::clean
5883         * gtk/makefile.msc.in : create gtkbuiltincache.h (most code
5884         to simulate links) and file renames
5885
5886 2006-01-05  Johan Dahlin  <jdahlin@async.com.br>
5887
5888         * gtk/gtkprogressbar.c: Set minimum for activity-step property to 0
5889         instead of -G_MAXUINT.
5890         
5891 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
5892
5893         * gtk/gtkwindow.c: Only connect to the event if we have
5894         a frame, since the handler is only relevant in that case.
5895
5896         * gtk/gtkaction.c (connect_proxy, disconnect_proxy): 
5897         Use a weak reference rather than the destroy signal to track 
5898         proxies going away.
5899
5900         * gtk/gtkbindings.c (binding_signal_new): Revert the last change.
5901
5902         * gtk/gtkaction.c (gtk_action_sync_property): 
5903         (gtk_action_sync_stock_id): Removed.
5904
5905 2006-01-05  Rodrigo Moya <rodrigo@novell.com>
5906
5907         * gtk/gtkbindings.c (binding_signal_new): allocate correct amount for
5908         signal and arguments.
5909
5910 2006-01-05  Matthias Clasen  <mclasen@redhat.com>
5911
5912         * gtk/gtklabel.c (gtk_label_grab_focus): Don't return a value from
5913         a void function.
5914
5915 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
5916
5917         * gtk/gtkbindings.h (struct _GtkBindingSignal): Revert questionable
5918         changes.
5919         
5920         * gtk/gtkbindings.c: Use the slice allocator and allocate signal
5921         and arguments in one block.
5922
5923         * gtk/gtkuimanager.c (gtk_ui_manager_get_toplevels): Don't return
5924         a list of NULLs.  (#325723, Steve Chaplin)
5925
5926 2006-01-04  Rodrigo Moya <rodrigo@novell.com>
5927
5928         * gtk/gtkbindings.c (binding_signal_new): guard against multiplying
5929         by -1 (when n_args is 0).
5930
5931 2006-01-04  Michael Natterer  <mitch@imendio.com>
5932
5933         * gtk/gtkmenutoolbutton.c
5934         (gtk_menu_tool_button_set_menu)
5935         (gtk_menu_tool_button_destroy): use gtk_menu_attach_to_widget()
5936         and gtk_menu_detach() instead of reffing/unreffing the menu
5937         manually. Also fixes brokenness on screen change (bug #85715).
5938
5939 2006-01-04  Matthias Clasen  <mclasen@redhat.com>
5940
5941         * gtk/gtkaccelmap.c: 
5942         * gtk/gtkactiongroup.c: 
5943         * gtk/gtkdialog.c: 
5944         * gtk/gtkfilesystemunix.c: 
5945         * gtk/gtkgc.c: 
5946         * gtk/gtkkeyhash.c: 
5947         * gtk/gtkplug.c: 
5948         * gtk/gtktextiter.c: 
5949         * gtk/gtktextlayout.c: 
5950         * gtk/gtkuimanager.c: 
5951         * gtk/gtkwidget.c: 
5952         * gtk/gtkwindow.c: 
5953         * gtk/gtkxembed.c: Use the slice allocator for many small 
5954         allocations.
5955
5956         * gtk/gtkcolorsel.c: 
5957         * gtk/gtktreeview.c: Use IPN.
5958
5959         * gtk/gtkwidget.c: Remove an unused field from the AccelPath 
5960         struct.
5961
5962 2006-01-04  Tor Lillqvist  <tml@novell.com>
5963
5964         * gtk-zip.sh.in: Include also the gtk20-properties message catalogs.
5965
5966 2006-01-03  Matthias Clasen  <mclasen@redhat.com>
5967         
5968         * gtk/gtkdnd.c: Make it compile
5969
5970         * gtk/gtkdnd.c (gtk_drag_begin_internal): Call gtk_drag_update
5971         for non-motion events.  (#325443, Peter Harvey)
5972
5973         * gtk/gtkaction.c: Avoid connecting to notify on our own
5974         properties. 
5975
5976 2006-01-02  Matthias Clasen  <mclasen@redhat.com>
5977
5978         * gtk/gtkentry.c (gtk_entry_delete_from_cursor): When deleting
5979         words, delete preceding whitespace as well.  (#325358,  Akkana Peck)
5980
5981 2006-01-02  Anders Carlsson  <andersca@imendio.com>
5982
5983         * gdk/quartz/GdkQuartzWindow.c:
5984         (-[GdkQuartzWindow canBecomeMainWindow]):
5985         (-[GdkQuartzWindow canBecomeKeyWindow]):
5986         Have these return TRUE
5987         
5988         * gdk/quartz/gdkevents-quartz.c:
5989         (pointer_grab_internal):
5990         Remove FIXME
5991         
5992         (find_child_window_by_point_helper):
5993         Fix bug in offset calculation
5994         
5995         (find_window_for_event):
5996         Use grab window toplevel when a grab is in effect
5997         
5998         (gdk_event_translate):
5999         Don't call _gdk_event_button_generate on mouse up
6000         
6001         * gdk/quartz/gdkgc-quartz.c:
6002         (_gdk_quartz_gc_new):
6003         Fix indentation
6004         
6005         * gdk/quartz/gdkwindow-quartz.c:
6006         (gdk_window_new):
6007         Make TEMP windows borderless
6008         
6009         (gdk_window_hide):
6010         Hide window
6011         
6012         (gdk_window_get_origin):
6013         Implement
6014         
6015 2006-01-02  Tor Lillqvist  <tml@novell.com>
6016
6017         * gdk/win32/gdkwindow-win32.c
6018         (gdk_window_impl_win32_get_visible_region): Make identical to the
6019         X11 implementation. (#322264, John Ehresman)
6020
6021         * gdk/win32/gdkgeometry-win32.c (gdk_window_scroll): Get the
6022         invalidated region from ScrollWindowEx() instead of an incorrect
6023         attempt to calculate it ourselves. Fix by John Ehresman. (#323666)
6024
6025         * gdkevents-win32.c: Make _gdk_win32_hrgn_to_region() non-static.
6026
6027         * gdkprivate-win32.h: Declare it.
6028
6029 2005-12-31  Matthias Clasen  <mclasen@redhat.com>
6030
6031         * gtk/gtkaction.c: 
6032         * gtk/gtkentry.c: Connect to notify instead of multiple
6033         detailed signals.
6034
6035 2005-12-30  Matthias Clasen  <mclasen@redhat.com>
6036
6037         * gdk/gdk.symbols: 
6038         * gdk/gdkcairo.h: 
6039         * gdk/gdkcairo.c: Add gdk_cairo_set_source_pixmap.  (#318805,
6040         Alexander Larsson)
6041
6042         * gdk/gdkdisplaymanager.c (gdk_display_manager_set_property): Call
6043         gdk_display_manager_set_default_display() to change the default
6044         display.  (#153623, Stefan Kost)
6045
6046         * gtk/gtkmessagedialog.c (gtk_message_dialog_init):
6047          (setup_type): Alert dialogs should not have titles and should 
6048         not be displayed in the taskbar.  (#310443, Carlos Garnacho Parro,
6049         Dennis Cranston)
6050
6051 2005-12-29  Matthias Clasen  <mclasen@redhat.com>
6052
6053         * gtk/gtkliststore.c: 
6054         * gtk/gtktreestore.c: Always call the get_path and get_iter
6055         implementations directly, rather than the current mixture whith
6056         some calls going through the GtkTreeModel interface.
6057
6058         * gtk/gtktreemodelsort.c: 
6059         * gtk/gtkliststore.c: 
6060         * gtk/gtktreestore.c: Remove excessive g_return_if_fail() checks
6061         in static functions.
6062         
6063         * gtk/gtktreedatalist.c: Use the slice allocater for 
6064         GtkTreeDataSortHeader.
6065
6066         * gtk/gtktreedatalist.h: 
6067         * gtk/gtktreedatalist.c (_gtk_tree_data_list_set_header): New function.
6068
6069         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_sort_func): 
6070         * gtk/gtkliststore.c (gtk_list_store_set_sort_func): 
6071         * gtk/gtktreestore.c (gtk_tree_store_set_sort_func): Use it here.
6072
6073 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
6074
6075         * gtk/gtkbindings.h (GtkBindingSignal): 
6076         * gtk/gtkbindings.c (binding_signal_new): Make the
6077         args a flexible array inside the struct, and allocate them
6078         together.
6079
6080 Wed Dec 28 00:45:46 2005  Tim Janik  <timj@gtk.org>
6081
6082         * gtk/gtkctree.c (row_delete): delete GtkCTreeRow as GtkCTreeRow, not
6083         clist rows which crashes in gslice later on.
6084
6085 2005-12-27  Federico Mena Quintero  <federico@ximian.com>
6086
6087         * gtk/gtkfilefilter.c (gtk_file_filter_filter): In the case for
6088         FILTER_RULE_PIXBUF_FORMATS, check that filter_info->mime_type is
6089         not NULL.  Fixes bug #317687.
6090
6091 2005-12-27  Matthias Clasen  <mclasen@redhat.com>
6092
6093         * gdk/x11/gdkevents-x11.c (check_transform): Fix a typo.
6094         (gdk_screen_get_setting): Avoid relocations for the settings
6095         map.
6096
6097         * gdk/x11/gdkproperty-x11.c: Avoid relocations for the list
6098         of standard atoms.
6099
6100         * gtk/gtkbindings.c (gtk_binding_set_new): Avoid copying
6101         the set_name by interning it.
6102
6103 2005-12-26  Matthias Clasen  <mclasen@redhat.com>
6104
6105         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Precache atoms
6106         before calling gdk_window_new().
6107
6108         * gtk/gtktextbtree.c: Use the slice allocator for some other small
6109         auxiliary structures as well.
6110
6111         * gtk/gtkimcontext.c (gtk_im_context_filter_keypress): Clarify
6112         docs.  (#324996)
6113
6114         * gtk/gtktextbtree.c (gtk_text_btree_get_tag_info) 
6115         (gtk_text_btree_remove_tag_info): Use the slice allocator for 
6116         tag info.
6117
6118         * README.in: Mention the stripping of (_F) suffixes.
6119
6120         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Strip a suffix of 
6121         the form "(_<single character>)", since this is the preferred way
6122         for some languages to indicate accelerators.  (#323956, Yang Hong)
6123
6124         * gtk/gtklabel.c (gtk_label_class_init): Add a gtk-label-select-on-focus
6125         setting.
6126         (gtk_label_grab_focus): And use it here to select the contents of
6127         the label when appropriate.
6128         (gtk_label_class_init): Use the same keybindings for select all/
6129         unselect all as GtkEntry and GtkTextView.
6130
6131         * gtk/gtkdialog.c (gtk_dialog_map): When looking for the initial
6132         focus, avoid leaving a selection in a label.
6133
6134 2005-12-25  Matthias Clasen  <mclasen@redhat.com>
6135
6136         * gtk/gtkwindow.c: Documentation fixes.  (#324815, 
6137         Ross Burton)
6138
6139         * configure.in: Require GLib 2.9.2
6140
6141 2005-12-24  Matthias Clasen  <mclasen@redhat.com>
6142
6143         * gdk/gdkregion-generic.c: 
6144         * gdk/gdkpolyreg-generic.c: 
6145         * gdk/gdkregion.h: 
6146         * gdk/gdkrectangle.c: Inline docs, use g_assert(), avoid 
6147         extra allocation for rectangular regions.
6148
6149 Thu Dec 22 18:53:14 2005  Tim Janik  <timj@gtk.org>
6150
6151         * gtk/gtkobject.[hc]: renamed GUnowned to GInitiallyUnowned.
6152
6153 Thu Dec 22 17:55:11 2005  Tim Janik  <timj@gtk.org>
6154
6155         * gtk/gtkobject.h: parent type fixups in structure declarations.
6156
6157 Thu Dec 22 16:01:27 2005  Tim Janik  <timj@imendio.com>
6158
6159         * gtk/gtkobject.c: derive GtkObject from GUnowned,
6160         so it initially has a floating reference count.
6161         gtk_object_class_init(): installa floating flag handler with
6162         libgobject, so for GtkObjects the flag is stored as GTK_FLOATING
6163         in the ->flags member.
6164
6165         * tests/floatingtest.c: test floating flag uses.
6166
6167 2005-12-21  Matthias Clasen  <mclasen@redhat.com>
6168
6169         * gdk/gdkregion-generic.c: Use the slice allocator
6170         for regions. Still todo: avoid extra allocations for
6171         the single-rectangle case.
6172
6173         * gtk/gtksettings.c (gtk_settings_class_init): Update
6174         class_n_properties after installing color-hash, since
6175         other classes install settings, too.
6176
6177         * gtk/gtkctree.c: 
6178         * gtk/gtkclist.c: Fix some mistakes in the conversion
6179         from mem chunks to slice allocator.
6180
6181         * gtk/gtkiconview.c (adjust_wrap_width): Adjust the 
6182         wrap-width also if an explicit item width is set.  
6183         (#322475, Alex Graveley)
6184         
6185 2005-12-20  Matthias Clasen  <mclasen@redhat.com>
6186
6187         * gtk/gtkiconview.c (gtk_icon_view_button_press): Reset 
6188         pressed_button to -1 after handling a double click, so that
6189         motion events occurring between here and the release event
6190         don't trigger DND.  (#324588, Dave Andreoli)
6191
6192 2005-12-19  Matthias Clasen  <mclasen@redhat.com>
6193
6194         * gtk/gtkcellrenderer.c: 
6195         * gtk/gtkselection.c: 
6196         * gtk/gtkcalendar.c: 
6197         * gtk/gtkitemfactory.c: 
6198         * gdk/gtkcombo.c: 
6199         * gdk/gdkpixbuf-render.c: Documentation updates
6200
6201         * gtk/gtktreemodel.c: 
6202         * gtk/gtkplug.c: 
6203         * gtk/gtkwindow.c: Documentation fixes.
6204
6205 2005-12-19  Michael Natterer  <mitch@imendio.com>
6206
6207         * gtk/gtkentry.c: implement boolean property "truncate-multiline"
6208         which, when enabled, truncates multi-line pastes or drops to their
6209         first line. Fixes bug #322252.
6210
6211         * gtk/gtkfilechooserentry.c (gtk_file_chooser_entry_init): enable
6212         truncate-multiline here.
6213
6214 2005-12-17  Matthias Clasen  <mclasen@redhat.com>
6215
6216         * gtk/gtksettings.c (get_color_hash): Don't crash if
6217         there is no color scheme.  (#324429, Diego Gonzalez)
6218
6219 2005-12-16  Matthias Clasen  <mclasen@redhat.com>
6220
6221         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
6222         * gtk/gtkimmodule.c (gtk_im_module_load): 
6223         * gtk/gtkthemes.c (gtk_theme_engine_load): 
6224         * gtk/gtkmodules.c (find_module): Use G_MODULE_BIND_LAZY when
6225         opening modules.
6226
6227         * gtk/gtksettings.[hc]: Rework the way the color scheme setting
6228         is inherited. Now the overriding is done on a per-color basis,
6229         rather than for the setting as a whole. This has the effect
6230         that themes can declare defaults for all the symbolic colors they
6231         use by specifying a value for the gtk-color-scheme setting in 
6232         their rc file, while still allowing the XSetting to override
6233         "standard" symbolic colors. The hash table is now available
6234         through the color-hash property.
6235         
6236         * gtk/gtkrc.c: Use the new color-hash property.
6237         
6238 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
6239
6240         * gtk/gtkcontainer.c (_gtk_container_focus_sort): Skip unrealized
6241         children when doing focus sorting.  (#323995, Dan Winship)
6242
6243 2005-12-14  Rodney Dawes  <dobey@novell.com>
6244
6245         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon):
6246         Default to "drive-harddisk" and then fall back to gnome-dev-harddisk
6247         (get_icon_for_mime_type): Look up the mime type icons according to the
6248         Icon Naming Specification and then fall back to the gnome-mime- prefix
6249         for the mime type icons
6250
6251         Fixes #323655
6252         
6253 2005-12-14  Matthias Clasen  <mclasen@redhat.com>
6254
6255         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Warn if the icon
6256         cannot be loaded.  (#323504, Kjartan Maraas)
6257
6258         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add docs 
6259         for the row-activated signal.  (#324044, Davyd Madeley)
6260
6261 2005-12-14  Michael Natterer  <mitch@imendio.com>
6262
6263         * tests/test-images/valid_jpeg_progressive_test: new test image.
6264
6265 Tue Dec 13 09:47:20 2005  Tim Janik  <timj@gtk.org>
6266
6267         * README.in: added a link to the floating reference docs in the
6268         2.10 release NEWS section.
6269
6270 2005-12-12  Matthias Clasen  <mclasen@redhat.com>
6271
6272         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_index): 
6273         Speed this function up, using the fact that visibility is 
6274         constant across segments. (#321548, Paolo Borelli)
6275
6276         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
6277         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Speed up
6278         stepping backwards.  (#320638, Larry Ewing, Paolo Borelli)
6279
6280         * gtk/gtkicontheme.c (ensure_valid_themes): Only broadcast
6281         _GTK_LOAD_ICONTHEMES if we detect a real theme change, not
6282         upon initial theme load.  (#323876, Peter Lund)
6283
6284         * gtk/gtkstatusicon.c (gtk_status_icon_class_init): Register
6285         the size-changed signal correctly.  (#323848, Murray Cumming)
6286
6287         * gtk/gtkmarshalers.list: Add necessary marshaller.
6288
6289         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): Don't
6290         fall thru to the wrong window types.  (#323843)
6291
6292         Make the gtk-color-scheme setting work.
6293         
6294         * gtk/gtksettings.h: 
6295         * gtk/gtksettings.c (_gtk_settings_get_color_hash): Add a getter
6296         that takes care of initializing the color hash if it is not 
6297         already there.  
6298
6299         * gtk/gtkrc.c (gtk_rc_color_scheme_changed, gtk_rc_context_get): 
6300         And use it here.        
6301
6302 2005-12-10  Matthias Clasen  <mclasen@redhat.com>
6303
6304         * gdk/gdk.c (gdk_parse_args): Warn if parsing fails,
6305         not if it succeeds. 
6306
6307 2005-12-09  Matthias Clasen  <mclasen@redhat.com>
6308
6309         * gtk/gtkselection.c (gtk_selection_data_get_uris): Don't
6310         leak list[0].  (#323629, Markku Vire)
6311
6312         * gtk/gtktextbuffer.c (paste_from_buffer): Unref the buffer
6313         when freeing the RequestData.  (#323577)
6314
6315 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
6316
6317         * demos/gtk-demo/iconview_edit.c (set_cell_color): Don't
6318         leak text.
6319
6320         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
6321         variable name clash.  (#323475, Ross Burton)
6322
6323 2005-12-07  Ross Burton  <ross@burtonini.com>
6324
6325         * docs/reference/gtk/tmpl/gtkenums.sgml:
6326         * gtk/gtktoolbutton.c:
6327         If the toolbar mode is ICONS and there is no icon set then show
6328         the label, and vice versa (#322019)
6329
6330 2005-12-07  Matthias Clasen  <mclasen@redhat.com>
6331
6332         * gtk/gtktoolbutton.c (clone_image_menu_size): Fix a 
6333         variable name clash.  (#323475, Ross Burton)
6334
6335         * gtk/gtktreeview.c (gtk_tree_view_key_press): Use the correct
6336         window when synthesizing the key event.  (#323077,
6337         Sadrul Habib Chowdhury)
6338         
6339         (gtk_tree_view_search_key_press_event): Also listen for
6340         GDK_ISO_Left_Tab.  (#323077, Sadrul Habib Chowdhury)
6341
6342         * gtk/gtktextview.c (gtk_text_view_preedit_changed_handler): 
6343         Only scroll if we have focus.  (#316310, Paolo Borelli)
6344
6345         * gtk/gtkfilesystemunix.c (cb_fill_in_mime_type): Fix a C99ism,
6346         spotted by Crispin Flowerday.
6347
6348 2005-12-06  Behdad Esfahbod  <behdad@gnome.org>
6349
6350         * gtk/gtksettings.c (settings_update_font_options): Turn metrics
6351         hinting on (part of #307196)
6352
6353 2005-12-06  Matthias Clasen  <mclasen@redhat.com>
6354
6355         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_reset): Don't
6356         commit from reset, it upstets GtkTextView.
6357
6358         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Be more
6359         careful when turning blinking on and off.
6360         (gtk_text_view_focus_out_event): Make the cursor really invisible
6361         when the focus goes away.  (#323087, Sadrul Habib Chowdhury)
6362         (cursor_blinks): Check the gtk-cursor-blink setting first.
6363
6364         * gtk/gtktreeview.c (gtk_tree_view_key_press): Fix refcounting
6365         issues with new_event and its window.
6366
6367         * gtk/gtkmenu.c (gtk_menu_attach_to_widget): Accept NULL
6368         as a detach func.  (#323386, Jorn Baayen)
6369
6370         * gtk/gtkcalendar.c: Avoid conflict with win32 headers in
6371         the libdate routines.  (#323045, Kazuki Iwamoto)
6372
6373         * gdk/gdk.c (gdk_parse_args): 
6374         * gtk/gtkmain.c (gtk_parse_args): Don't ignore errors
6375         from g_option_context_parse(). 
6376
6377 Tue Dec  6 11:37:59 2005  Tim Janik  <timj@gtk.org>
6378
6379         * gdk/gdkevents.c (gdk_event_new): fix missing hash table 
6380         initialization.
6381
6382 Tue Dec  6 10:32:17 2005  Tim Janik  <timj@gtk.org>
6383
6384         * gtk/gtkstatusbar.c: ported memchunk uses to g_slice, so the code
6385         compiles again.
6386
6387 2005-12-05  Federico Mena Quintero  <federico@ximian.com>
6388
6389         * gtk/gtkfilechooserdefault.c (trap_activate_cb): "event->state &
6390         modifiers", not "event->state && modifiers".  Patch by Sadrul
6391         Habib Chowdhury <imadil@gmail.com>.  Fixes bug #323073.
6392
6393 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
6394
6395         * gtk/gtkwidget.c: 
6396         * gtk/gtkuimanager.c: 
6397         * gtk/gtktreedatalist.c: 
6398         * gtk/gtktext.c: 
6399         * gtk/gtkmain.c: 
6400         * gtk/gtkitemfactory.c: 
6401         * gtk/gtkseparator.[hc]:
6402         * gtk/gtkclist.[hc]: 
6403         * gtk/gtkctree.c:
6404         * gtk/gtkgc.c: Use g_slice instead of mem chunks.
6405
6406 2005-12-05  Michael Natterer  <mitch@imendio.com>
6407
6408         * gdk/x11/gdkevents-x11.c: map the new GtkSettings properties
6409         "timeout-initial", "timeout-repeat", "color-scheme" and
6410         "enable-animations" to X settings.
6411
6412 2005-12-05  Matthias Clasen  <mclasen@redhat.com>
6413
6414         * gdk/gdkevents.c: 
6415         * gdk/gdkcolor.c: Use g_slice instead of mem chunks.
6416
6417         * gtk/gtktreeview.c (gtk_tree_view_key_press): Free new_event
6418         after sending it to the search entry.  (#323209, Crispin Flowerday)
6419
6420         * README.in: Add a note about GTK_FLOATING.
6421
6422         * gtk/gtkobject.h (GTK_OBJECT_FLOATING): Use g_object_is_floating.
6423
6424 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
6425
6426         * gtk/gtktoolbutton.c (clone_image_menu_size): Don't leak
6427         a pixbuf.  (#323024, Paolo Borelli)
6428
6429 2005-12-02  Matthias Clasen  <mclasen@redhat.com>
6430
6431         * gtk/gtkfilesystemunix.c (get_icon_for_mime_type): Don't crash
6432         if mime_type is NULL.  (#322998, Sadrul Habib Chowdhury)
6433
6434 2005-12-02  Michael Natterer  <mitch@imendio.com>
6435
6436         * gtk/gtkmenu.c: applied modified patch from maemo-gtk which
6437         adds a "horizontal-padding" style property. Fixes bug #323036.
6438
6439 2005-12-01  Michael Natterer  <mitch@imendio.com>
6440
6441         Merged modified patch from maemo-gtk that allows to disable
6442         toolbar animations. Addresses bug #142582.
6443
6444         * gtk/gtksettings.c: added boolean property "gtk-enable-animations".
6445         (patch from Christian Neumair)
6446
6447         * gtk/gtktoolbar.c: don't animate toolbar changes if the settings
6448         property is FALSE. Replaced the individual "notify::foo"
6449         connections to GtkSettings by a single "notify" callback and
6450         dispatch internally.
6451
6452 2005-12-01  Michael Natterer  <mitch@imendio.com>
6453
6454         * gtk/gtkmenu.c (gtk_menu_class_init): removed redundant
6455         assignment of widget_class->motion_notify_event
6456
6457 2005-11-29  Matthias Clasen  <mclasen@redhat.com>
6458
6459         * gtk/gtktoggleaction.c (gtk_toggle_action_class_init): Add 
6460         an active property.  (#322673, Jorn Baayen)
6461
6462         Properly handle model changes in GtkTreeSelection: (#322569,
6463         Milosz Derezynski)
6464         
6465         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach): 
6466         Get a reference to the model, and stop the iteration if the model
6467         of the treeview is changed on the way.
6468
6469         * gtk/gtktreeprivate.h: 
6470         * gtk/gtktreeselection.c (_gtk_tree_selection_emit_changed): New 
6471         private function to emit the GtkTreeSelection::changed signal.
6472
6473         * gtk/gtktreeview.c (gtk_tree_view_set_model): Call 
6474         _gtk_tree_selection_emit_changed() when the model changes.
6475
6476 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
6477
6478         Fixes the critical warnings from bug #317999, thus fixing the bug
6479         completely:
6480
6481         * gtk/gtkfilechooserdefault.c
6482         (gtk_file_chooser_default_get_paths): In SELECT_FOLDER mode,
6483         use _gtk_file_chooser_get_current_folder_path() instead of fetching the
6484         impl->current_folder directly.  The latter may be null if we are
6485         in RELOAD_NONE state.
6486
6487 2005-11-28  Federico Mena Quintero  <federico@ximian.com>
6488
6489         Fix bug #321560, based on a patch by Bogdan Nicula (bogdanni@hotmail.com):
6490
6491         * gtk/gtkfilechooserdefault.c (up_folder_handler): Don't add the
6492         current_folder to the pending select paths here; the path bar will
6493         give it to us now.
6494         (path_bar_clicked): Add the child_path to the pending select paths
6495         here.
6496         (show_and_select_paths): Don't filter out folders.
6497         (show_and_select_paths): Don't take separate arguments for
6498         only_one_path and multiple paths.
6499
6500         * tests/autotestfilechooser.c (test_folder_switch_and_filters):
6501         New test about preserving the filters when we change folders.
6502
6503 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
6504
6505         * gtk/gtkscale.c (_gtk_scale_format_value): Insert an LRM, to prevent
6506         -20 to come out as 20- in RTL locales.  (#322571, Tze'ela Hebron)
6507
6508         * gtk/gtkaction.c (gtk_action_sync_button_stock_id) 
6509         (connect_proxy): Buttons use the label property for stock ids.  (#322565,
6510         Milosz Derezynski)
6511
6512         * gtk/gtkiconview.c (update_text_cell, update_pixbuf_cell): Correctly
6513         handle the cell list and indices into it.  (#321856)
6514
6515 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
6516
6517         * gtk/gtktooltips.c (gtk_tooltips_timeout): Set timer_tag to 0 when
6518         the timeout is done.  (#322291, Jean-Yves Lefort)
6519
6520 2005-11-28  Matthias Clasen  <mclasen@redhat.com>
6521
6522         * gtk/gtkfilechooserdefault.c (shortcuts_key_press_event_cb): Make
6523         F2 work for renaming bookmarks.  (#320822, Jaap A. Haitsma, patch
6524         by Paolo Borelli)
6525
6526 2005-11-28  Tor Lillqvist  <tml@novell.com>
6527
6528         * gdk/win32/gdkwindow-win32.c (gdk_window_set_urgency_hint):
6529         Implement the conditional use of FlashWindowEx() properly for MSVC
6530         compilations. The code was confusingly assuming that if compiled
6531         with a "new" compiler, it will only be run on "new" Windows
6532         versions. We want it to run on "old" versions, too, even if
6533         compiled with a "new" compiler. There are two orthogonal issues:
6534         whether the compiler defines the necessary API in its headers, and
6535         whether it is present at run-time. (#318077)
6536
6537         * gtk/gtkcalendar.c (gtk_calendar_init): Use GetLocaleInfo() on
6538         Windows to get the localized weekday and month names. strftime()
6539         in the Microsoft C library returns strings in the default codepage
6540         for the locale of the process, not the system codepage. Thus
6541         g_locale_to_utf8() isn't useable on the return value from
6542         strftime(). (#322603)
6543
6544 2005-11-27  Matthias Clasen  <mclasen@redhat.com>
6545
6546         * gtk/gtkmessagedialog.c (gtk_message_dialog_new_with_markup): 
6547         Fix an example.  (#322493, Elie De Brauwer)
6548         
6549         Fix two memory handling problems in GtkTreeView: (#322350, 
6550         Søren Sandmann)
6551         
6552         * gtk/gtktreeview.c (gtk_tree_view_destroy) 
6553         (gtk_tree_view_set_model): Remove all references to nodes in
6554         the old model.
6555         (gtk_tree_view_real_collapse_row): Unmark expanded_collapsed_node
6556         before removing the children.
6557
6558         * gtk/gtkcolorbutton.c (gtk_color_button_init): Don't leak a 
6559         PangoLayout here.  (#322505, Paolo Borelli)
6560
6561 2005-11-27  Tor Lillqvist  <tml@novell.com>
6562
6563         Once again rework Win32 window decoration code. Doesn't break
6564         #104514. The dialogs in gtk-demo now have the same decorations and
6565         behaviour as on X11. Tried to fix #322516 but it seems very hard
6566         to make the trivial sample program there behave as expected. OTOH,
6567         simply moving the gtk_window_decorate() call in the #322516 sample
6568         program after the call to gtk_widget_show() helps...
6569             
6570         * gdk/win32/gdkwindow-win32.c (set_or_clear_style_bits): Revert to
6571         the correct semantics. Each call to gdk_window_set_decorations()
6572         which calls this function is supposed to affect all decorations.
6573
6574         (decorate_based_on_hints): New function, looks at both geometry
6575         hints and type hint and sets window decorations based on
6576         that. Consolidate code from gdk_window_set_geometry_hints() and
6577         gdk_window_set_type_hint() here.
6578
6579         (gdk_window_set_geometry_hints, gdk_window_set_type_hint): Call
6580         decorate_based_on_hints().
6581
6582 2005-11-25  Dom Lachowicz <cinamod@hotmail.com>
6583
6584         * modules/engines/ms-windows/*.[ch]: Merge with gtk-wimp's CVS.
6585         Includes improved menu icon spacing, [+]/[-] expander drawing,
6586         status-bar gippie drawing, and notebook tab drawing.
6587         
6588 2005-11-24  Michael Natterer  <mitch@imendio.com>
6589
6590         * gtk/gtktoolbar.h (struct _GtkToolbar): changed two private guint
6591         that used to hold signal handler IDs to two guint of padding.
6592
6593         * gtk/gtktoolbar.c (struct _GtkToolbarPrivate): added them as
6594         gulong here.
6595
6596         (gtk_toolbar_screen_changed): changed accordingly.
6597
6598 Wed Nov 23 18:55:47 2005  Tim Janik  <timj@imendio.com>
6599
6600         * gtk/gtkobject.[hc]: deprecated floating/sink API and implemented it
6601         in terms of the GObject floating/sink API.
6602
6603         * gtk/gtkaboutdialog.c:
6604         * gtk/gtkaction.c:
6605         * gtk/gtkcellview.c:
6606         * gtk/gtkclist.c:
6607         * gtk/gtkcolorsel.c:
6608         * gtk/gtkcombobox.c:
6609         * gtk/gtkfilechooserdefault.c:
6610         * gtk/gtkiconview.c:
6611         * gtk/gtkinvisible.c:
6612         * gtk/gtkitemfactory.c:
6613         * gtk/gtklayout.c:
6614         * gtk/gtkmenu.c:
6615         * gtk/gtkmenutoolbutton.c:
6616         * gtk/gtknotebook.c:
6617         * gtk/gtkprogress.c:
6618         * gtk/gtkrange.c:
6619         * gtk/gtkspinbutton.c:
6620         * gtk/gtkstatusicon.c:
6621         * gtk/gtktext.c:
6622         * gtk/gtktextview.c:
6623         * gtk/gtktoolbar.c:
6624         * gtk/gtktoolbutton.c:
6625         * gtk/gtktoolitem.c:
6626         * gtk/gtktreeitem.c:
6627         * gtk/gtktreeview.c:
6628         * gtk/gtktreeviewcolumn.c:
6629         * gtk/gtkuimanager.c:
6630         * gtk/gtkviewport.c:
6631         * gtk/gtkwidget.c:
6632         * gtk/gtkwindow.c:
6633         ported to use GObject's g_object_ref_sink().
6634
6635         * gtk/gtkcolorsel.c:
6636         * gtk/gtkfilechooserdefault.c:
6637         * gtk/gtkaboutdialog.c:
6638         fixed compiler warnings.
6639
6640 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
6641
6642         * gtk/gtksettings.c (gtk_settings_class_init): Add some docs
6643         about gtk-color-scheme.
6644
6645 2005-11-23  Behdad Esfahbod  <behdad@gnome.org>
6646
6647         * configure.in (enable_explicit_deps): Fix typo when checking
6648         libtool config deplibs_check_method. Moreover, enable explicit
6649         deps if we get anything other than pass_all from libtool. (part of
6650         #318750)
6651
6652 2005-11-23  Matthias Clasen  <mclasen@redhat.com>
6653
6654         * gtk/updateiconcache.c (write_csource): Don't create a big
6655         string, since Visual C++ doesn't like strings longer than 64k. 
6656         (#322238, Kazuki IWAMOTO
6657
6658         * gtk/gtkentry.c: Include gtkimcontextsimple.h  (#322235,
6659         Kazuki IWAMOTO)
6660
6661 2005-11-23  Michael Natterer  <mitch@imendio.com>
6662
6663         * gtk/gtkrc.c (gtk_rc_reset_widgets): don't leak all toplevel
6664         windows on other screens (correctly remove all temporary
6665         references).
6666
6667 2005-11-23  Michael Natterer  <mitch@imendio.com>
6668
6669         Added symbolic themable colors. Patch is a merged version of
6670         proposals from Matthias and maemo-gtk. Fixes bug #114355.
6671
6672         * configure.in: require glib >= 2.9.1 for refcountable hashtables.
6673
6674         * gtk/gtksettings.c: added property "color-scheme" which is a
6675         string defining colors like "foreground:black\nbackground:grey".
6676         Automatically provide a name->GdkColor hash table mapping for the
6677         color scheme.
6678
6679         * gtk/gtkrc.[ch]: added list of color hashes that works like the
6680         list of icon factories. Append the color scheme hash from
6681         GtkSettings if it exists. Extended gtkrc syntax to allow defining
6682         and referencing of logical colors. Also allow to modulate colors
6683         in gtkrc by using arbitrary expressions of mix(), shade(),
6684         lighter() and darker(). Added internal function
6685         _gtk_rc_style_get_color_hashes().
6686
6687         * gtk/gtkstyle.[ch]: keep a private list of color hashes around.
6688         Get the list from _gtk_rc_style_get_color_hashes(). Export
6689         internal function _gtk_style_shade() (used by above color
6690         expressions). Added public API gtk_style_lookup_color() which
6691         looks up a logical color by name.
6692
6693         * gtk/gtk.symbols: add gtk_style_lookup_color
6694
6695         * tests/testgtkrc: use symbolic colors for making
6696         the scrollbars red.
6697
6698 2005-11-22  Michael Natterer  <mitch@imendio.com>
6699
6700         Made button-press timeouts which work like key repeat timeouts
6701         configurable. Addresses bug #142582:
6702
6703         * gtk/gtksettings.c: added properties "gtk-timeout-initial" and
6704         "gtk-timeout-repeat" which defalt to 200/20 (ms).
6705
6706         Use the values from GtkSettings instead of hardcoding them
6707         (the repeat value is either taken as-is for fast repeat or
6708         multiplied by 5 for slow repeat). Changed all places to use these
6709         two standard initial/repeat timings:
6710
6711         * gtk/gtkcalendar.c (unchanged 200/20)
6712         * gtk/gtknotebook.c (unchanged 200/100)
6713         * gtk/gtkpathbar.c (changed from 300/150 to 200/100)
6714         * gtk/gtkrange.c (changed from 250/100 to 200/100)
6715         * gtk/gtkspinbutton.c (unchanged 200/20)
6716
6717 2005-11-21  Anders Carlsson  <andersca@imendio.com>
6718
6719         * configure.in:
6720         * gtk/Makefile.am:
6721         * gdk/Makefile.am:
6722         * gdk/quartz/*:
6723         Add quartz backend.
6724         
6725         * docs/tools/Makefile.am:
6726         Only build docshooter when the X11 backend is used.
6727         
6728         * gtk/gtkplug-stub.c:
6729         Include gtkplug.h here.
6730         
6731         * gtk/gtksocket-stub.c:
6732         Include gtksocket.h here.
6733         
6734 2005-11-21  Matthias Clasen  <mclasen@redhat.com>
6735
6736         * gtk/gtkinputdialog.c: Convert GtkInputDialog to 
6737         g_type_class_add_private.
6738
6739         * gtk/gtksocket.c: Convert GtkSocket to g_type_class_add_private.
6740
6741         * gtk/gtkmenu.c: Convert GtkMenu to g_type_class_add_private.
6742
6743         * gtk/gtk.symbols:
6744         * gtk/gtkcombobox.[hc]: Add a tearoff-title property,
6745         with getter and setter.  (#316482, Olexiy Avramchenko)
6746
6747         * tests/testcombo.c (main): Test gtk_combo_box_set_title
6748
6749         * gtk/gtkpathbar.c: Merge remaining fixes from the 2.8 branch,
6750         pointed out by Michael Natterer.
6751
6752         Fix for bug #321542, Benedikt Meurer:
6753         
6754         * gtk/gtkcombobox.c (gtk_combo_box_set_active_internal):
6755         Emit notify::active.
6756         
6757         (gtk_combo_box_child_show, gtk_combo_box_child_hide): Use
6758         g_signal_emit, not g_signal_emit_by_name.
6759
6760 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
6761
6762         Fix crashes in connection with pathbar scrolling (#321560,
6763         Bogdan Nicula)
6764         
6765         * gtk/gtkpathbar.c (gtk_path_bar_update_slider_buttons): 
6766         Stop scrolling when desensitising slider buttons.
6767         (gtk_path_bar_scroll_timeout, gtk_path_bar_slider_button_press): 
6768         And use it here.  
6769
6770         * gtk/gtkpathbar.h (struct _GtkPathBar): Add a separate
6771         scrolling_down flag.
6772
6773 2005-11-18  Matthias Clasen  <mclasen@redhat.com>
6774
6775         * gtk/gtkpathbar.c (button_clicked_cb): Fix a C99ism.
6776         (#321777, Jens Granseuer)
6777
6778         * gtk/gtkaction.c (disconnect_proxy): Disconnect the
6779         sync callback for the visibility property.  (#321761,
6780         Philip Langdale)
6781
6782         Turn off input methods in invisible entries, since
6783         they are confusing.  (#317002, James Su)
6784         
6785         * gtk/gtkentry.c (gtk_entry_set_visibility): Toggle input
6786         methods if visibility changes.
6787         (popup_targets_received): Don't show the input method
6788         menu if the entry is invisible.  
6789
6790 2005-11-17  Matthias Clasen  <mclasen@redhat.com>
6791
6792         * README.in: Add a note about range arrow sensitivity.
6793
6794         * perf/treeview.c: const correctness fixes
6795         found by Arjan van de Ven and gcc.
6796
6797 2005-11-16  Michael Natterer  <mitch@imendio.com>
6798
6799         * gtk/gtkimage.c (animation_timeout): call
6800         gtk_window_process_updates() so the animation keeps running even
6801         if the main loop is busy with sources that eat a lot of cpu with
6802         high priority. Fixes bug #321444.
6803
6804         (gtk_image_new_from_animation): document the fact that the
6805         animation will stop running if the main loop is busy with sources
6806         that have priorities higher than G_PRIORITY_DEFAULT.
6807
6808         * tests/testimage.c: added test case that shows an animation even
6809         though a cpu-eating idle function is running.
6810
6811 2005-11-16  Michael Natterer  <mitch@imendio.com>
6812
6813         * gdk/x11/gdkevents-x11.c (_gdk_events_uninit): new internal
6814         function which destroys the display's event source. Also removes
6815         the source from the global display_sources list and unrefs it.
6816
6817         * gdk/x11/gdkprivate-x11.h: declare the function.
6818
6819         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_dispose): call it
6820         instead of half-destroying the source here.
6821
6822 2005-11-15  Matthias Clasen  <mclasen@redhat.com>
6823
6824         * gtk/gtktreestore.c (gtk_tree_store_move): Fix a memory
6825         leak.  (#321032, Peter Zelezny)
6826
6827 2005-11-15  Michael Natterer  <mitch@imendio.com>
6828
6829         * gdk/x11/gdkdisplay-x11.c (gdk_display_x11_finalize): destroy
6830         display->xid_ht as late as possible (right before XCloseDisplay)
6831         because it still needs to be around when the display's screens are
6832         finalized. (#85715)
6833
6834 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
6835
6836         * gtk/gtkselection.c (gtk_selection_data_set_uris): Don't
6837         leak result.  (#321441, Tommi Komulainen)
6838
6839 2005-11-14  Matthias Clasen  <mclasen@redhat.com>
6840
6841         * gtk/gtkicontheme.c (gtk_icon_theme_get_icon_sizes):
6842         Don't crash if there is no builtin icon.
6843
6844 2005-11-14  Michael Natterer  <mitch@imendio.com>
6845
6846         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_set_property):
6847         removed redundant calls to g_object_notify().
6848
6849 2005-11-13  Matthias Clasen  <mclasen@redhat.com>
6850
6851         * gdk/gdkcolor.c (gdk_color_parse): Documentation 
6852         improvements.  (#321338)
6853
6854         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Make
6855         limit an inclusive boundary.  (#321299)
6856
6857 2005-11-12  Michael Natterer  <mitch@imendio.com>
6858
6859         * gtk/Makefile.am: fixed icon rules so gtkbuiltincache.h is only
6860         rebuilt if needed.
6861
6862 2005-11-12  Dom Lachowicz <cinamod@hotmail.com>
6863
6864         * modules/engines/ms-windows/msw_style.c: Bug #313627. Make win32 
6865         theme's handling of toolbars, handleboxes, and menubars more in-line
6866         with Microsoft's IE style.
6867         * modules/engines/ms-windows/*.c: Indentation cleanups
6868         
6869 2005-11-12  Matthias Clasen  <mclasen@redhat.com>
6870
6871         Make builtin icons work in gtk_window_set_icon_name() 
6872         (#321046, Maxim Udushlivy)
6873
6874         * gtk/gtkicontheme.c (insert_theme): Always insert the default
6875         theme.
6876         (ensure_valid_themes): Call _gtk_icon_theme_ensure_builtin_cache()
6877         from here.
6878         (theme_lookup_icon, find_builtin_icon): ...and not from here.
6879         (gtk_icon_theme_lookup_icon): Remove an unncessary assert.
6880         (gtk_icon_theme_get_icon_sizes): Also check builtin icons.
6881
6882 2005-11-12  Tor Lillqvist  <tml@novell.com>
6883
6884         * gtk/gtkfilesystemwin32.c (filename_get_info): Don't hide
6885         dotfiles, no such convention on Win32. Just hide files with the
6886         hidden attribute. (#314627)
6887
6888 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
6889
6890         * gtk/gtkfilechooserdefault.c (shortcuts_insert_path): Do not
6891         check whether the path is a folder.  It is useful to bookmark
6892         files as well (e.g. todo.txt), and this will also help
6893         performance.
6894         (shortcuts_add_bookmark_from_path): Likewise.
6895         (shortcuts_activate_iter): Change folders or select files, as
6896         appropriate.
6897
6898 2005-11-11  Federico Mena Quintero  <federico@ximian.com>
6899
6900         * tests/autotestfilechooser.c (main): Use
6901         g_log_set_default_handler() instead of explicitly setting a
6902         handler for each domain.
6903
6904         * gtk/gtkfilechooserdefault.c (shortcuts_add_volumes): Only get
6905         the base path of the volume if it is mounted.
6906
6907 2005-11-11  Michael Natterer  <mitch@imendio.com>
6908
6909         Added per-stepper API for GtkRange's stepper sensitivity as
6910         discussed in bug #321056:
6911
6912         * gtk/gtkenums.h: added GtkSensitivityType which can be
6913         { AUTO, ON, OFF }.
6914
6915         * gtk/gtkrange.[ch]: added properties "lower-stepper-sensitivity"
6916         and "upper-stepper-sensitivity" and public getters/setters for
6917         them. Changed stepper drawing to honor the new properties.
6918
6919         * gtk/gtk.symbols: added the new symbols.
6920
6921 2005-11-10  Matthias Clasen  <mclasen@redhat.com>
6922
6923         * gtk/gtkcombobox.c: Add show-popup and hide-popup signals and
6924         emit them when the popup is shown or hidden.  (#162531, Tommi
6925         Komulainen)
6926
6927         * tests/testcombo.c: Add an example of popuplating a combobox
6928         on click.
6929
6930         * gtk/gtktreeview.c (gtk_tree_view_motion_resize_column): Another
6931         erroneous semicolon.
6932
6933         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get): Remove an erroneous
6934         semicolon. 
6935
6936         Don't corrupt odd keymaps (#316638, Kean Johnston)
6937         
6938         * gdk/x11/gdkkeys-x11.c (set_symbol): Auxiliary function to
6939         handle frobbing keymaps with odd numbers of syms/code.
6940         
6941         * gdk/x11/gdkkeys-x11.c (update_keymaps): Use set_symbol() to 
6942         frob the keymap.
6943
6944         Improve navigation to parent folders.  (#318444, Andrei Yurkevich)
6945         
6946         * gtk/gtkpathbar.[hc]: Add a child_path argument to
6947         the path_clicked signal.
6948         * gtk/gtkfilechooserdefault.c (path_bar_clicked): Select the
6949         child_path, if it is provided.
6950         * gtk/marshalers.list (path_bar_clicked): Add the necessary
6951         glue.
6952
6953         * gtk/gtkmenu.c: Fix some compiler warnings. (#321141,
6954         Kjartan Maraas)
6955         
6956         * gtk/gtk.symbols: 
6957         * gtk/gtktreeview.h: 
6958         * gtk/gtktreeview.c: Implement a getter for headers-clickable.
6959         (#163851, Richard Hult)
6960
6961 2005-11-10  Michael Natterer  <mitch@imendio.com>
6962
6963         Applied patch from maemo-gtk that addresses many issues wrt
6964         display migration and display closing (bug #85715).
6965
6966         * gdk/gdkdisplay.c (gdk_display_dispose): don't just set the
6967         default display to NULL when it's closed. Instead set the most
6968         recently opened display as new default (if one exists).
6969
6970         * gdk/gdkpango.c (on_renderer_display_closed): fixed signature
6971         of this callback.
6972
6973         * gdk/gdkscreen.c (gdk_screen_dispose): check if the GCs still
6974         exist before unrefing them.
6975
6976         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): if the screen
6977         is closed, allow destruction of the root window.
6978
6979         * gdk/x11/gdkdisplay-x11.c: moved some stuff from finalize() to
6980         dispose(), free stuff that was leaked before.
6981
6982         * gdk/x11/gdkevents-x11.c (_gdk_x11_events_uninit_screen): check if
6983         the xsettings_client still exists before destroying it.
6984
6985         * gdk/x11/gdkkeys-x11.c: added finalization and free the allocated
6986         X resources.
6987
6988         * gdk/x11/gdkpixmap-x11.c: moved stuff from finalize() to new
6989         dispose() implementation.
6990
6991         * gdk/x11/gdkscreen-x11.c: moved stuff from finalize() to
6992         dispose() and check if it still exists before unrefing it. Set
6993         their pointers to NULL/None *after* upchaining in dispose(),
6994         because X11 implementations of members of the parent class still
6995         need them for their own destruction.
6996
6997         * gdk/x11/gdkvisual-x11.c: removed finalize() implementation which
6998         was g_error()ing when finalizing a visual.
6999
7000         * gtk/gtkclipboard.c (gtk_clipboard_finalize): don't use
7001         get_clipboard_widget() because it would create the widget if it
7002         doesn't exist. Use g_object_get_data() directly instead.
7003
7004         * gtk/gtktextdisplay.c (on_renderer_display_closed): fixed signature
7005         of this callback.
7006
7007 2005-11-10  Simos Xenitellis  <simos@gnome.org>
7008
7009         * configure.in: Added Tatar (tt) to ALL_LINGUAS.
7010
7011 Wed Nov  9 16:29:42 2005  Tim Janik  <timj@imendio.com>
7012
7013         * gtk/gtkrange.c: patch from maemo-gtk that changes GtkRange
7014         to render its arrows insensitive when the adjustment is in
7015         its min or max position. this makes range arrow behaviour 
7016         consistent with spin button behaviour. (#321056)
7017
7018 2005-11-09  Tor Lillqvist  <tml@novell.com>
7019
7020         * gdk/gdkinternals.h
7021         * gdk/gdk.c (gdk_debug_keys[]): Add new GDK_DEBUG_DRAW flag to
7022         the GdkDebugFlag enum.
7023
7024         * gdk/win32/gdkdrawable-win32.c: Use DRAW to trigger GDK_NOTEs in
7025         this file instead of MISC. Now asking for MISC will give mainly
7026         window manipulation debugging output with the Win32 backend.
7027
7028 2005-11-09  Tor Lillqvist  <tml@novell.com>
7029
7030         * gdk/win32/gdkwindow-win32.c: Remove unnecessary includes.
7031
7032         (_gdk_win32_get_adjusted_client_rect): Remove this two-line
7033         function which was used only in one place.
7034
7035         (get_outer_rect): Use _gdk_win32_adjust_client_rect().
7036
7037         (gdk_window_set_geometry_hints): If we have identical minimum and
7038         maximum size hints, remove the resize and maximize
7039         decorations/functions. (#104514)
7040
7041         If we have a maximum size hint, remove the maximize
7042         decoration/function but ensure the resize decoration/function is
7043         available. Otherwise ensure both resize and maximize
7044         decorations/functions are there.
7045
7046         (set_or_clear_style_bits): Factored out common code from
7047         gdk_window_set_decorations() and gdk_window_set_functions(). 
7048
7049         Hack the window style setting once more: Only touch the window
7050         style bits corresponding to the GdkWMDecoration or GdkWMFunction
7051         parameter bitmasks. Hopefully this finally is the correct thing to
7052         do. We used to clear all other bits than those that were being
7053         set, or set all other bits than those that were being cleared.
7054
7055         Take into account that adding or removing decorations leaves the
7056         window's outer size unchanged, i.e., the client area's size and
7057         position change. This is apparently not what we want, so change
7058         also the window's (outer) position and size appropriately so that
7059         the client area's position and size stay constant.
7060
7061         gtk-demo's color selector dialog is now non-resizable like on X11
7062         (I tested with metacity in GNOME). Torn off menus are shrinkable
7063         vertically but have a maximum size, and are not maximizable or
7064         minimizable, like on X11.
7065
7066         (gdk_window_set_decorations, gdk_window_set_functions): Let
7067         set_or_clear_decorations() do most of the job.
7068
7069         * gdk/win32/gdkprivate-win32.h: Remove declaration of
7070         _gdk_win32_get_adjusted_client_rect().
7071
7072 2005-11-09  Tor Lillqvist  <tml@novell.com>
7073
7074         * gdk/win32/gdkwindow-win32.h (struct _GdkWindowImplWin32)
7075         * gdk/win32/gdkwindow-win32.c (gdk_window_impl_win32_init,
7076         gdk_window_get_type_hint, gdk_window_get_type_hint): Store the
7077         type hint. Implement gdk_window_get_type_hint() by just returning
7078         the hint stored.
7079
7080 2005-11-09  Tor Lillqvist  <tml@novell.com>
7081
7082         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
7083         Remove code that has been permanently ifdeffed out for two years.
7084
7085 2005-11-08  Matthias Clasen  <mclasen@redhat.com>
7086
7087         * gdk/gdkgc.c (gdk_gc_finalize): Unref tile and stipple when
7088         finalizing a gc.  (#320789, Nickolay V. Shmyrev)
7089
7090         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Ignore
7091         icons if they would make the request large enough to cause
7092         Xlib to loose the connection.  (#320909, Claudio Saavedra)
7093
7094 2005-11-08  Michael Natterer  <mitch@imendio.com>
7095
7096         * gdk/gdk.symbols
7097         * gdk/gdkwindow.h
7098         * gdk/x11/gdkwindow-x11.c: added gdk_window_get_type_hint() (patch
7099         extracted from maemo-gtk). Fixes bug #320872.
7100
7101 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
7102
7103         * gtk/gtkfilechooserdefault.c (shortcuts_reorder): Don't
7104         looks the bookmark label when reordering.  (#320720, Jeremy Cook)
7105
7106         * gtk/gtkpathbar.[hc]: Set focus-on-click to FALSE for all buttons.
7107         Don't grab focus when a slider button is pressed, instead, use
7108         a bit in the pathbar struct to determine whether to scroll up
7109         or down.  (#314486, Carlos Garnacho)
7110
7111         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): 
7112         Don't popup the completions if the focus has already been
7113         moved somewhere else.  (#319914, Christian Persch)
7114
7115         * gtk/gtktoolitem.c (_gtk_tool_item_toolbar_reconfigured): 
7116         Raise the drag_window after reconfiguring the 
7117         toolbar.  (#320803, Christian Persch)
7118
7119         * gtk/gtk.symbols: 
7120         * gtk/gtkfilechooserbutton.h: 
7121         * gtk/gtkfilechooserbutton.c: Add a focus-on-click property
7122         with setter and getter.  (#318945, Christian Persch)
7123         
7124 Mon Nov  7 16:15:16 2005  Tim Janik  <timj@imendio.com>
7125
7126         * configure.in: fixed missing $X_CFLAGS setup in case x11.pc is present.
7127
7128 2005-11-07  Matthias Clasen  <mclasen@redhat.com>
7129
7130         * configure.in: Adjust to the stock icon changes.
7131         
7132 2005-11-07  Tor Lillqvist  <tml@novell.com>
7133
7134         * gdk/win32/gdkcursor-win32.c (pixbuf_to_hbitmaps_normal):
7135         Correct the calculation of maskstride. (#320152, Peter Zelezny)
7136         
7137 2005-11-06  Michael Natterer  <mitch@imendio.com>
7138
7139         * gtk/Makefile.am (icons): fixed rule to actually create the
7140         symlinks, erroring out if anything goes wrong.
7141
7142 2005-11-06  Tor Lillqvist  <tml@novell.com>
7143
7144         * gtk/updateiconcache.c (build_cache): Can't rename a file if the
7145         target exists on Win32. First rename the target temporarily, then
7146         if the renaming of the source to target fails, restore the
7147         original name for the target.
7148
7149         * gtk/Makefile.am: Use EXEEXT in the dependency on gtk-update-icon-cache.
7150
7151 2005-11-06  Tor Lillqvist  <tml@novell.com>
7152
7153         (pixbuf_to_hbitmaps_alpha_winxp): Use an 1-bit mask bitmap,
7154         like pixbuf_to_hbitmaps_normal().
7155         (_gdk_win32_pixbuf_to_hicon_supports_alpha): Check
7156         G_WIN32_IS_NT_BASED() first, so we can pretend being on Win9x by
7157         setting the G_WIN32_PRETEND_WIN9X environment variable.
7158         
7159 2005-11-06  Tor Lillqvist  <tml@novell.com>
7160
7161         Make icon masks work on Win98 (#320152, Peter Zelezny)
7162
7163         * gdk/win32/gdkcursor-win32.c (create_color_bitmap): Take also a
7164         parameter for the depth of the bitmap, so that this function can
7165         be used to create 1-bit bitmaps, too.
7166         (pixbuf_to_hbitmaps_normal): Create an 1-bit bitmap for the mask,
7167         and initialize it properly.
7168
7169 2005-11-04  Matthias Clasen  <mclasen@redhat.com>
7170
7171         Store builtin stock icons in an icon cache, instead of
7172         populating a hash table with pixbufs at startup, to save both
7173         memory and startup time.
7174
7175         * gtk/stock-icons/*: Reorganize the icons in a directory structure
7176         suitable for gtk-update-icon-cache, and rename them to match the
7177         stock ids.
7178
7179         * gtk/gtkiconcache.[hc]: Support non-mmapped icon caches, and
7180         add _gtk_icon_cache_has_icon_in_directory().
7181
7182         * gtk/updateiconcache.c: Support a --source <VARIABLE> argument
7183         to store the contents of the icon cache in a C header.
7184
7185         * gtk/gtkbuiltincache.h: Generated private header which contains 
7186         the icon cache for the builtin icons.
7187
7188         * gtk/gtkicontheme.c: Create a GtkIconCache for the builtin
7189         icons, and use that in addition to the hash table whenever
7190         builtin icons are searched.
7191
7192         * gtk/gtkiconfactory.c: Add GTK_ICON_SOURCE_STATIC_ICON_NAME and
7193         use it for static stock ids. 
7194         (get_default_icons): Don't add the builtin
7195         icons to the icon theme, just register the stock ids.
7196         (render_fallback_image): Take the fallback image out of the
7197         builtin icon cache.
7198         
7199         * gtk/Makefile.am: Remove stock-icons from SUBDIRS and add 
7200         the necessary machinery to rebuild gtkbuiltincache.h.
7201
7202 2005-11-04  Michael Natterer  <mitch@imendio.com>
7203
7204         * gtk/gtkrc.c (gtk_rc_reparse_all_for_settings): applied patch
7205         from maemo-gtk that changes the mtime check for rc files from
7206         '>' to '!=', otherwise theme changes go unnoticed when turning
7207         back the clock (Tommi Komulainen).
7208
7209 2005-11-04  Tor Lillqvist  <tml@novell.com>
7210
7211         * gtk/gtkstatusicon.c (gtk_status_icon_set_tooltip): Plug memory
7212         leak on Win32.
7213
7214 2005-11-03  Tor Lillqvist  <tml@novell.com>
7215
7216         * gdk/win32/gdkcursor-win32.c: As there is only one GdkDisplay in
7217         the Win32 backend, check that GdkDisplay* parameters are equal to
7218         _gdk_display instead of using the unnecessarily general
7219         GDK_IS_DISPLAY().
7220
7221         (pixbuf_to_hbitmaps_alpha_winxp): Rename the variables for the
7222         color bitmap to have "color" in their name, for similarity with
7223         pixbuf_to_hbitmaps_normal(). Create a color bitmap for the mask,
7224         too, instead of creating a b&w bitmap with CreateBitmap(). Set up
7225         the mask bitmap's contents, ones for those pixels in the color
7226         bitmap where the alpha is zero, zero for other pixels. We used to
7227         use an uninitialized mask bitmap! This meant that icons and
7228         cursors created presumably worked more or less by accident.
7229         Totally blank icons with zero alpha everywhere (as used by
7230         gtktrayicon.c) definitely did not work as expected.
7231
7232         * gtk/Makefile.am: Include gtkstatusicon.c on all platforms.
7233
7234         * gtk/gtkstatusicon.c: Implement for Win32. Use code from
7235         gtktrayicon-win32.c as applicable. (gtktrayicon-win32.c is not
7236         necessary and can be removed from CVS. It has never been mentioned
7237         in gtk/Makefile.am.) No tray icon widget, GtkImage or GtkTooltips
7238         are used on Win32. One label widget is used (but never shown) as
7239         gtk_widget_render_icon() needs a widget.
7240
7241         Ifdefs used as necessary in several places. It might be cleaner to
7242         split out the backend-specific parts to separate files, or at
7243         least collect them into separate blocks in the file.
7244
7245         (wndproc): New function. Window procedure to monitor mouse events
7246         in the system tray icon. Call gtk_status_icon_button_press() as
7247         needed.
7248         (create_tray_observer): New function. Creates a hidden window that
7249         only serves as a tray icon message observer.
7250
7251         * tests/teststatusicon.c (icon_activated): Position the dialog
7252         with GTK_WIN_POS_CENTER.
7253         (do_quit): New function, hide and unref the GtkStatusIcon, and
7254         call gtk_main_quit().
7255         (popup_menu): Add a Quit menu item that calls do_quit().
7256         
7257 2005-11-02  Tor Lillqvist  <tml@novell.com>
7258
7259         * gdk/win32/gdkcolor-win32.c
7260         * gdk/win32/gdkscreen-win32.c
7261         * gdk/win32/gdkwindow-win32.c: Whitespace consistency
7262         fixes. Remove superfluous test for GdkWindow* parameters being
7263         non-NULL. Testing GDK_IS_WINDOW() is enough. As there is only one
7264         GdkScreen and one GdkDisplay in the Win32 backend, use those
7265         variables instead of the getter functions. For GdkDisplay* and
7266         GdkScreen* parameters, check that they are equal to the
7267         corresponding singleton variables instead of the more general
7268         GDK_IS_DISPLAY() or GDK_IS_SCREEN().
7269
7270 2005-11-02  Matthias Clasen  <mclasen@redhat.com>
7271
7272         * gtk/gtktextview.c: Remove some g_return_if_fail() from
7273         static functions, replace some others by g_assert().
7274         
7275         * gtk/gtktextview.c (selection_motion_event_handler) 
7276         (gtk_text_view_start_selection_drag): Keep track of the original
7277         selection boundaries during a drag selection, in order to correctly
7278         decide when to extend or shrink the selection.  (#320167,
7279         reported by Arvind S N, patch by Paolo Borelli)
7280
7281         * gtk/gtktextbtree.c (_gtk_text_line_char_to_byte_offsets): 
7282         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): Replace
7283         manual offset calculations by g_utf8_offset_to_pointer().
7284         (#320360, Paolo Borelli)
7285
7286 Tue Nov  1 16:18:24 2005  Tim Janik  <timj@imendio.com>
7287
7288         * gtk/gtkrbtree.[hc]: get rid of GAllocator usage, allocate and free 
7289         nodes via the g_slice_*() API.
7290         _gtk_rbtree_new(): fixed wrong node allocation via g_new().
7291
7292 2005-11-01  Tor Lillqvist  <tml@novell.com>
7293
7294         * gdk/win32/gdkprivate-win32.h
7295         * gdk/win32/gdkglobals-win32.c
7296         * gdk/win32/gdkmain-win32.c (_gdk_windowing_init): Add more
7297         pre-interned GdkAtoms and pre-registered clipboard formats. Sort
7298         their declarations, definitions and assignments into a more
7299         logical and consistent order.
7300
7301         * gdk/win32/gdkmain-win32.c (_gdk_win32_cf_to_string): Include the
7302         CF_ prefix for the predefined clipboard format names. Put quotes
7303         around registered format names to distinguish them.
7304         
7305         * gdk/win32/gdkproperty-win32.c (gdk_property_change): Return
7306         immediately with a warning if the property type is STRING, TEXT,
7307         COMPOUND_TEXT or SAVE_TARGETS, as these are X11-specific that we
7308         should never pretend to handle on Win32. Handle only UTF8_STRING
7309         here, other formats with delayed rendering. Use \uc1 instead of
7310         \uc0 when generating Rich Text Format for easier testability on
7311         XP, where WordPad misinterprets \uc0 encoded characters. Add more
7312         GDK_NOTE debugging output for Clipboard operations.
7313
7314         * gdk/win32/gdkselection-win32.c: Debugging printout improvements.
7315         (gdk_selection_convert): Don't pretent to handle STRING, just
7316         UTF8_STRING. Streamline error handling, don't unnecessarily have a
7317         GError which then isn't used for anything anyway if it gets set.
7318         (gdk_win32_selection_add_targets): Skip also STRING, TEXT,
7319         COMPOUND_TEXT and SAVE_TARGETS in addition to UTF8_STRING.
7320
7321         * config.h.win32.in: Sync with what configure produces.
7322
7323         * configure.in: Don't look for X_PACKAGES unless building for
7324         x11. (#313986, John Ehresman)
7325
7326 2005-10-28  Erdal Ronahi  <erdal.ronahi@gmail.com>
7327
7328         * configure.in: Added ku (Kurdish) to ALL_LINGUAS
7329                         Wondered why there was no ku there before??
7330
7331 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
7332
7333         * gtk/gtkentrycompletion.c (_gtk_entry_completion_popup): Add the popup
7334         window to the toplevels window group.  (#319912, Christian Persch)
7335
7336 2005-10-28  Kristian Rietveld  <kris@gtk.org>
7337
7338         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_row_deleted): fix
7339         stupid thinko.
7340
7341 2005-10-28  Matthias Clasen  <mclasen@redhat.com>
7342
7343         * gtk/gtkdnd.c (gtk_drag_get_cursor): Fix the anchor of the default
7344         drag cursors.  (#319200, Federico Mena Quintero)
7345
7346         * gtk/gtktreeview.c (gtk_tree_view_search_key_press_event): Handle
7347         Shift-G to go to the previous match, like firefox.  (#320061, Christian 
7348         Neumair)
7349
7350         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_build_level): Fix a
7351         C99ism.  (#320000, Kazuki Iwamoto)
7352
7353         * gtk/gtkaboutdialog.c (gtk_about_dialog_init): Add the little 
7354         stars.  (#319985, Bastien Nocera)
7355
7356         * gtk/gtktreeview.c (gtk_tree_view_search_entry_flush_timeout): Return
7357         FALSE, so we don't flush repeatedly.  (#319151, Alexander Larsson)
7358
7359 2005-10-26  Michael Natterer  <mitch@imendio.com>
7360
7361         Fix bug #319974:
7362
7363         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_set_property):
7364         make sure that setting any of pixbuf/stock-id/icon-name resets the
7365         others because they are mutually exclusive, and that unsetting any
7366         of them only resets the pixbuf and nothing else. Also added
7367         some missing g_object_notify().
7368
7369         (gtk_cell_renderer_pixbuf_get_property): simplified calls to
7370         g_value_set_object().
7371
7372         (gtk_cell_renderer_pixbuf_create_stock_pixbuf)
7373         (gtk_cell_renderer_pixbuf_create_named_icon_pixbuf): added
7374         g_object_notify ("pixbuf").
7375
7376 2005-10-27  Matthias Clasen  <mclasen@redhat.com>
7377
7378         * gtk/gtktreeview.c (gtk_tree_view_button_press): Be more 
7379         careful about initializing cell_area.  (#319382, Tommi
7380         Komulainen)
7381
7382         * gtk/gtkcombobox.c (gtk_combo_box_key_press): Don't eat
7383         Ctrl-PageUp/PageDown.  (#318670, Christian Neumair)
7384
7385         * demos/gtk-demo/clipboard.c (paste_received): Only set the
7386         text if it is not NULL.  (#319930, Thomas Klausner)
7387
7388         * gtk/gtkselection.c (gtk_selection_data_get_pixbuf): Close the
7389         loader before trying to get the pixbuf.  (#319930, Thomas Klausner)
7390
7391 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
7392
7393         * gtk/gtkfilesystem.c (gtk_file_system_module_load): 
7394         * gtk/gtkthemes.c (gtk_theme_engine_load): 
7395         * gtk/gtkimmodule.c (gtk_im_module_load): Use G_MODULE_BIND_LAZY
7396         when dlopening modules.  (#319557, Laszlo Peter)
7397
7398 2005-10-26  Matthias Clasen  <mclasen@redhat.com>
7399
7400         * gtk/gtktextbtree.c (gtk_text_btree_resolve_bidi): Only use text
7401         segments when determining text direction.  (#319065, Tommi Komulainen)
7402
7403         * gtk/gtktreeview.c (gtk_tree_view_destroy): Don't crash
7404         on duplicate destroy.  (#318953, Gustavo Carneiro)
7405
7406         * gtk/gtkfilechooserbutton.c (gtk_file_chooser_button_new_with_dialog): 
7407         Point out that destroy-with-parent is a bad idea for the dialog
7408         passed to this function.  (#318943, Christian Persch)
7409
7410         * */Makefile.am: use $(GLIB_MKENUMS) instead of 
7411         glib-mkenums.  (#318582, Damien Carbery)
7412
7413         * gtk/gtktreemodel.c (gtk_tree_model_rows_reordered): Clarify
7414         docs.  (#317682, Christian Neumair)
7415
7416         * gdk/x11/gdkdnd-x11.c: Remove an extra const which doesn't
7417         seem to affect the placement of the data in the readonly 
7418         section, and causes problems with some compilers.  (#317844)
7419
7420 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
7421
7422         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
7423         Fix some issues with background drawing in RTL.  (#318781,
7424         Eric Cazeaux)
7425
7426         * tests/Makefile.am:
7427         * tests/testentrycompletion.c: Apply a patch by Christian
7428         Persch to add property editors.
7429
7430         * gtk/gtkstatusicon.c: Emit activate on single-click,
7431         not on double-click, change proposed by Milosz Derezynski.
7432
7433 2005-10-25  Kristian Rietveld  <kris@gtk.org>
7434
7435         Fixes #311955, reported by Markku Vire; and a lot more.
7436
7437         * gtk/gtktreemodelfilter.c: Made this thing work correctly.
7438         Levels can now have invisible nodes cached, functions have been
7439         rewritten/refactored to take this into account; also the logic in
7440         some functions has been corrected.
7441         
7442         Each referenced node now references all visible children or a single
7443         invisible child, in order to be able to monitor all changes in the
7444         child model required for correct operation.
7445
7446         When a virtual root is set, all nodes on the virtual root level are
7447         referenced.
7448
7449         At last, a bunch of random bug fixes and comment updates.
7450
7451 2005-10-25  Matthias Clasen  <mclasen@redhat.com>
7452
7453         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Add some
7454         more docs.  (#319722, Paolo Borelli)
7455
7456         * gdk/x11/gdkxftdefaults.c (init_xft_settings): Make the 
7457         initialization of screen_x11->xft_rgba more explicit.  (#319627,
7458         Bogdan Nicula)
7459
7460         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Fix whitespace
7461         in a blurb.  (#319499, Francisco Javier F. Serrador)
7462
7463 2005-10-24  Matthias Clasen  <mclasen@redhat.com>
7464
7465         Add settings to hide the input method and Unicode control character
7466         submenus in the context menus of GtkEntry and GtkTextView.  
7467         
7468         * gdk/x11/gdkevents-x11.c: Map GTK+ settings to X settings.
7469         
7470         * gtk/gtksettings.c (gtk_settings_class_init): Declare GTK+ settings here.
7471
7472         * gtk/gtktextview.c (popup_targets_received): 
7473         * gtk/gtkentry.c (popup_targets_received): Use the settings here.
7474
7475 2005-10-24  Kristian Rietveld  <kris@gtk.org>
7476
7477         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): emitting
7478         row-has-child-toggled when the level is not in the cache does not
7479         make sense.  (This bug probably crept in during the early stages
7480         of GtkTreeModelSort when there wasn't a correct row-has-child-toggled
7481         implementation yet),
7482         (gtk_tree_model_sort_real_unref_node): only get the child iter
7483         when we will actually also use it.
7484
7485 2005-10-22  Michael Natterer  <mitch@imendio.com>
7486
7487         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): check for the
7488         widget being realized, in addition to being visible, to avoid
7489         running into precondition check in gtk_tree_view_get_cell_area().
7490         (approved by Kris).
7491
7492 2005-10-22  Dom Lachowicz <cinamod@hotmail.com>
7493
7494         * modules/engines/ms-windows/msw_style.c (setup_msw_rc_style): 
7495         Experimentally, scrollbar steppers can shrink to 8 pixels on 
7496         Win32. Reflect that in the theme.
7497         * modules/engines/ms-windows/Theme/gtk-2.0/gtkrc: Experimentally,
7498         there is a 1-pixel border between a scrollbar and its child
7499         in ScrolledWindows on Win32. Reflect that in the theme.
7500         
7501 2005-10-20  Matthias Clasen  <mclasen@redhat.com>
7502
7503         * gtk/gtklabel.c (gtk_label_create_window): Use GDK_WINDOW_CHILD
7504         for the selection window.  (#318806, Alex Larsson)
7505
7506 2005-10-18  Federico Mena Quintero  <federico@ximian.com>
7507
7508         Fixes bug #317999:
7509
7510         * tests/autotestfilechooser.c
7511         (test_button_folder_states_for_action): Test that we have either
7512         $cwd or the explicitly-set folder.
7513         (test_reload_sequence): Likewise.
7514
7515         * gtk/gtkfilechooserdefault.c
7516         (gtk_file_chooser_default_get_current_folder): If our reload_state
7517         is RELOAD_EMPTY, return a GtkFilePath corresponding to $cwd.
7518
7519 2005-10-14  Tor Lillqvist  <tml@novell.com>
7520
7521         * gdk/win32/gdkdisplay-win32.c: Remove the clipboard viewer code.
7522         It didn't really do anything useful, and was just confusing and
7523         incomplete. Comments claimed we don't do delayed rendering, but in
7524         fact we do, for images. (The delayed rendering code has other
7525         problems, though, see #168173.) The clipboard viewer code was
7526         probably even buggy (the WM_CHANGECBCHAIN handled didn't propagate
7527         the message when necessary). It was just test code, it said so in
7528         a comment. Add something similar back later if necessary.
7529
7530         (_win32_on_clipboard_change,
7531         _gdk_win32_register_clipboard_notification): Remove.
7532
7533         (gdk_display_supports_selection_notification,
7534         gdk_display_request_selection_notification): Always just return
7535         FALSE. We didn't generate any GDK_OWNER_CHANGE events anywhere.
7536
7537 2005-10-13  Tor Lillqvist  <tml@novell.com>
7538
7539         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't treat
7540         Alt-Enter specially. It does not have any special meaning and
7541         should be passed on to the application. (#318378, Tim Evans)
7542
7543 2005-10-13  Tor Lillqvist  <tml@novell.com>
7544
7545         Set visual depth to 24 for 32 bits-per-pixel devices on
7546         Win32. This allows gdk_drawable_real_draw_pixbuf() to use the
7547         optimized composite_0888() function rather than the slower image
7548         dithering functions to draw pixbufs (#313993, John Ehresman)
7549
7550         * gdk/win32/gdkimage-win32.c (_gdk_win32_new_image): Use
7551         _gdk_windowing_get_bits_for_depth() to initialize
7552         GdkImage::bits_per_pixel.
7553         (_gdk_windowing_get_bits_for_depth): Return 32 bits for depth 24.
7554
7555         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use
7556         _gdk_windowing_get_bits_for_depth() to initialize
7557         BITMAPINFOHEADER::biBitCount.
7558
7559         * gdk/win32/gdkvisual-win32.c (_gdk_visual_init): Set
7560         GdkVisual::depth to 24 even if GetDeviceCaps(BITSPIXEL) returns
7561         32.
7562
7563 2005-10-12  Stefan Kost  <ensonic@users.sf.net>
7564
7565         * demos/gtk-demo/appwindow.c: (about_cb):
7566           use PACKAGE_VERSION,bump year (#318654)
7567
7568 2005-10-11  Matthias Clasen  <mclasen@redhat.com>
7569
7570         * gtk/gtktextbtree.c (_gtk_text_btree_delete): Try to match an off 
7571         toggle here with the matching on toggle if it immediately follows. 
7572         This is a common case, and handling it here prevents quadratic blowup 
7573         in cleanup_line() below.  (#317125)
7574
7575         * gtk/gtktextsegment.h: 
7576         * gtk/gtktextsegment.c (_gtk_char_segment_new_from_two_strings): Pass
7577         the character counts into this function instead of computing them
7578         again.
7579
7580 2005-10-10  Tommi Komulainen  <tommi.komulainen@iki.fi>
7581
7582         * gtk/gtkfilechooser.h (GtkFileChooserError): Add ALREADY_EXISTS error
7583         code.
7584         * gtk/gtkfilechooserdefault.c
7585         (gtk_file_chooser_default_add_shortcut_folder): Return an error code
7586         when the shortcut already exists in the sidebar.  (#147521)
7587
7588 2005-10-09  Matthias Clasen  <mclasen@redhat.com>
7589
7590         * tests/testcombo.c: Demonstrate how to use custom widgets in
7591         a GtkComboBox.  
7592
7593 2005-10-07  Federico Mena Quintero  <federico@ximian.com>
7594
7595         Fixes bug #317999:
7596
7597         * tests/autotestfilechooser.c (test_reload_sequence): Ensure that
7598         the the result of gtk_file_chooser_get_folder() is NULL or
7599         non-NULL at the right times.  Log the tests.
7600         (test_button_folder_states): New test for the initial states of
7601         the current folder in GtkFileChooserButton.
7602         (main): Test that the number of warnings/errors/critical errors is
7603         zero.
7604
7605         * gtk/gtkfilechooser.c (gtk_file_chooser_get_current_folder):
7606         Clarify the documentation on when this can return NULL.
7607         (gtk_file_chooser_get_current_folder_uri): Likewise.
7608
7609         * gtk/gtkfilechooserbutton.c (struct
7610         _GtkFileChooserButtonPrivate): Added a folder_has_been_set flag;
7611         we use it to keep track of whether a folder has been set.
7612         (gtk_file_chooser_button_map):  Implement.  If no folder has been
7613         loaded before, we at least try to load $cwd here.
7614         (gtk_file_chooser_button_constructor): If the construct-time
7615         dialog already has a folder set, turn on our folder_has_been_set
7616         flag.
7617         (dialog_current_folder_changed_cb): Turn on our
7618         folder_has_been_set flag.
7619
7620 2005-10-07  Michael Natterer  <mitch@gimp.org>
7621
7622         * gtk/gtkfilechooserdefault.c: remove some explicit #defines of
7623         PROFILE_FILE_CHOOSER because they break compilation after the
7624         removal of <unistd.h>.
7625
7626 2005-10-07   Matthias Clasen  <mclasen@redhat.com>
7627
7628         * gtk/gtkfilechooserdefault.c: Properly fix the unistd.h include
7629         by moving it out of the profiling ifdef.
7630
7631         * gtk/gtkfilechooserdefault.c: Remove a redundant (and
7632         unconditional) include of unistd.h  (#318211, Kazuki Iwamoto)
7633
7634         * gtk/gtktexttag.c (gtk_text_attributes_ref): Use
7635         g_return_val_if_fail(), not g_return_if_fail().  (#318412,
7636         Kazuki Iwamoto)
7637
7638 2005-10-06  Matthias Clasen  <mclasen@redhat.com> 
7639                 
7640         * gtk/gtk.symbols:
7641         * gtk/gtktextbuffer.h:
7642         * gtk/gtktextbuffer.c: Add a readonly has-selection property
7643         with a getter.  (#318161, Paolo Borelli)
7644
7645 2005-10-05  Matthias Clasen  <mclasen@redhat.com>
7646
7647         * README.in: Start collecting release notes for 2.10.
7648
7649         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Readd the memory
7650         leak fix, since the assertion failures were traced to 
7651         an xchat bug.  (#314696)
7652         
7653         * gtk/gtkstyle.c (gtk_style_detach):
7654         (gtk_style_attach):  Documentation improvements.
7655         (gtk_style_detach): Assert that the attach_count is > 0.
7656
7657 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
7658
7659         * gtk/gtkfilechooserdefault.c (switch_to_shortcut): Take a
7660         shortcut position, not a ShortcutsIndex, to make the function more
7661         generic.
7662         (home_folder_handler): Pass the resolved index to
7663         switch_to_shortcut(), rather than just SHORTCUTS_HOME.
7664         (desktop_folder_handler): Likewise for SHORTCUTS_DESKTOP.
7665         (gtk_file_chooser_default_class_init): Add a "quick-bookmark"
7666         binding signal, and bind it to Alt-1, Alt-2. ..., Alt-0.  These
7667         make the respective key switch to the first, second, ..., tenth
7668         bookmark.
7669         (quick_bookmark_handler): Implement.
7670
7671 2005-10-04  Federico Mena Quintero  <federico@ximian.com>
7672
7673         * gtk/gtkpathbar.c (get_dir_name): Don't special-case Home and
7674         Desktop; just use their real names on the file system for the
7675         user-visible names.
7676
7677         * gtk/gtkfilechooserdefault.c
7678         (gtk_file_chooser_default_class_init): Add a "desktop-folder"
7679         binding signal, and bind it to M-d by default.
7680         (desktop_folder_handler): Implement the default handler.
7681         (home_folder_handler): Use a helper function.
7682         (switch_to_shortcut): New helper function.
7683         (shortcuts_append_home): Don't special-case the name of "Home";
7684         just use the folder name.
7685
7686 2005-10-04  Tor Lillqvist  <tml@novell.com>
7687
7688         * gtk/gtkcalendar.c (gtk_calendar_init): Make it compile without
7689         HAVE__NL_TIME_FIRST_WEEKDAY. (#317910, Mathias Hasselmann)
7690
7691 2005-10-04  Matthias Clasen  <mclasen@redhat.com>
7692
7693         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Revert the change
7694         from yesterday, since it leads to assertion failures.  (#317879,
7695         Sebastian Bacher)
7696
7697 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
7698
7699         * gtk/gtkcalendar.c (gtk_calendar_init): Call 
7700         calendar_compute_days() after setting priv->week_start.
7701
7702 2005-10-03  Matthias Clasen  <mclasen@redhat.com>
7703
7704         * gtk/gtkrc.c (gtk_rc_clear_realized_style): Unref the style when
7705         removing it from the hash table.  (#314696, Benjamin Berg)
7706
7707 2005-10-01  Tor Lillqvist  <tml@novell.com>
7708
7709         * gdk/win32/gdkdrawable-win32.c (blit_from_pixmap): In case
7710         BitBlt() fails with ERROR_INVALID_HANDLE, the most probable cause
7711         is that the the desktop isn't visible because the session has been
7712         switched, the screen is locked, or a terminal server session
7713         disconnected, so no error message necessary. (#137796)
7714
7715         It is of course remotely possible that BitBlt() failing with
7716         ERROR_INVALID_HANDLE might also be caused by some other
7717         problem. We could strive for perfection and track whether the
7718         desktop is visible by using WTSRegisterSessionNotification() and
7719         handling WM_WTSESSION_CHANGE. I think that's overdoing it just for
7720         this issue, though. If we would track desktop visibility, we
7721         should then avoid even trying to update the display at all while
7722         the desktop isn't visible.
7723
7724 2005-09-30  Matthias Clasen  <mclasen@redhat.com>
7725
7726         * gtk/gtkcalendar.c (gtk_calendar_init): Another attempt
7727         to correct the calculations for the first week day. We may
7728         just have to remove this code if too many locales turn out 
7729         to have broken data. 
7730
7731         * gtk/gtkimage.c (gtk_image_expose): Don't leak pixbuf in
7732         some cases.  (#317611, Tommi Komulainen)
7733
7734         * gtk/gtksocket-x11.c (_gtk_socket_windowing_size_request):
7735         Prevent overflow when storing size hints in an unsigned
7736         short variable. Tracked down by Ray Strode and Søren Sandmann.
7737
7738 2005-09-29  Matthias Clasen  <mclasen@redhat.com>
7739
7740         * gtk/gtkbutton.c (gtk_button_set_image): Check arguments.  (#317491,
7741         Paolo Borelli)
7742
7743         * gtk/gtkpaned.c (gtk_paned_grab_notify): Stop drags when being
7744         grab shadowed.  (#317332)
7745
7746 2005-09-29  Tor Lillqvist  <tml@novell.com>
7747
7748         * gtk-zip.sh.in: DLLs are always in bin nowadays, no need to test.
7749
7750 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
7751
7752         * tests/autotestfilechooser.c (test_reload_sequence): Oops, return
7753         if the unmap test fails.
7754         (test_reload_sequence): Use gtk_widget_show_now() instead of
7755         gtk_widget_show() for the dialog.
7756         Thanks to Tim Janik for noticing these.
7757
7758 2005-09-28  Federico Mena Quintero  <federico@ximian.com>
7759
7760         * tests/testcellrenderertext.c: New file with a set of tests for
7761         GtkCellRendererText.  The idea is to run a text renderer through
7762         most of its interesting property values to see that it works
7763         correctly.
7764
7765         * tests/Makefile.am: Added testcellrenderertext.
7766
7767         * gtk/gtkfilechooserdefault.c (load_set_model): Mark the
7768         entry/exit of this function for profiling.
7769         (gtk_file_chooser_default_style_set): Mark the start/end of the
7770         calls to the parent class and the the signal emission for profiling.
7771
7772 2005-09-29  Tor Lillqvist  <tml@novell.com>
7773
7774         * gtk/gtkmain.c (_gtk_get_localedir): The locale directory is
7775         passed to bindtextdomain() which isn't UTF-8-aware, so convert to
7776         system codepage using g_win32_locale_filename_from_utf8().
7777         (#317457, Kazuki Iwamoto)
7778
7779 2005-09-28  Matthias Clasen  <mclasen@redhat.com>
7780
7781         * gtk/gtkselection.c (_gtk_selection_request): Free mult_atoms 
7782         here. (#317039, Paolo Borelli)
7783
7784         * gtk/gtktexttag.h: 
7785         * gtk/gtktexttag.c (gtk_text_attributes_ref): Return the attributes
7786         to make this function work as boxed copy function.  (#317455,
7787         Gustavo Carneiro)
7788
7789         * gtk/gtkclipboard.c (request_image_received_func): Don't unref
7790         NULL.  (#316828, Tor Lillqvist)
7791
7792 2005-09-28  Tor Lillqvist  <tml@novell.com>
7793
7794         * modules/input/imime.c: Include <config.h>. (#317444, Kazuki
7795         Iwamoto)
7796
7797 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
7798
7799         Don't reload the current folder unnecessarily on ::map().
7800
7801         * gtk/gtkfilechooserprivate.h (ReloadState): New enum to represent
7802         the reloading state.
7803         (struct _GtkFileChooserDefault): Added a "reload_state" field.
7804
7805         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init):
7806         Initialize impl->reload_state.
7807         (gtk_file_chooser_default_map): Check the impl->reload_state; load
7808         a default folder if no folder has been set, or reload the current
7809         one only if we had been unmapped first.
7810         (gtk_file_chooser_default_update_current_folder): Set the
7811         reload_state to RELOAD_HAS_FOLDER.
7812         (gtk_file_chooser_default_unmap): Implement, and set the
7813         reload_state to RELOAD_WAS_UNMAPPED.
7814         (shortcuts_model_create): Don't call shortcuts_add_bookmarks()
7815         here; they'll get (re)loaded on ::map() anyway.
7816
7817         * gtk/gtkfilechooserwidget.c
7818         (gtk_file_chooser_widget_constructor): Don't set a default folder here.
7819
7820         * tests/autotestfilechooser.c (test_action_widgets): Don't take in
7821         a dialog; build it ourselves.
7822         (test_reload): New test to ensure that we don't load the default
7823         folder more than once, and that we reload it when
7824         unmapping/remapping.
7825         (get_impl_from_dialog): New utility function.
7826         (test_widgets_for_current_action): Use get_impl_from_dialog().
7827
7828 2005-09-27  Federico Mena Quintero  <federico@ximian.com>
7829
7830         * gtk/gtkfilechooserdefault.c
7831         (gtk_file_chooser_default_constructor): Mark the entry/exit of
7832         this function for profiling.
7833         (check_icon_theme): Likewise.
7834         (change_icon_theme): Likewise.
7835         (settings_notify_cb): Likewise.
7836         (gtk_file_chooser_default_screen_changed): Likewise.
7837         (update_chooser_entry): If the selection is empty, clear the file
7838         name entry only if we are in CREATE_FOLDER mode.  In SAVE mode,
7839         nothing will be selected when the user starts typeahead in the
7840         treeview, and we don't want to clear the file name entry in that
7841         case --- the user could be typing-ahead to look for a folder name.
7842         Fixes bug #308332, patch by Jürg Billeter.
7843
7844 2005-09-27  Matthias Clasen  <mclasen@redhat.com>
7845
7846         * gtk/gtkentrycompletion.c (_gtk_entry_completion_resize_popup):
7847         Pop below the entry if there's more free space below the entry
7848         than above.  (#316948, Tommi Komulainen)
7849
7850 2005-09-26  Federico Mena Quintero  <federico@ximian.com>
7851
7852         Do not create the save mode-specific widgets in the open modes, so
7853         that we don't carry their baggage around.
7854
7855         * gtk/gtkfilechooserdefault.c
7856         (gtk_file_chooser_default_constructor): Don't create the
7857         save_widgets here.
7858         (save_widgets_create): Set the impl->save_widgets directly here,
7859         instead of passing the widgets back to the caller.  Also, pack
7860         them into the impl's box.
7861         (update_appearance): Create or destroy the save widgets as
7862         appropriate.  Set the action of the save_file_name_entry here.
7863         (shortcuts_add_current_folder): Set the active item in the
7864         save_folder_combo only if it exists.
7865         (gtk_file_chooser_default_set_property): Don't set the action of
7866         the save_file_name_entry here.
7867         (gtk_file_chooser_default_update_current_folder): Set the base
7868         folder of the save_file_name_entry only if the entry exists.
7869         (shortcuts_drag_data_received_cb): Cast the selection_data->data
7870         to (const char *) since that's what shortcuts_drop_uris() expects.
7871         (file_list_drag_data_received_cb): Likewise, for
7872         g_uri_list_extract_uris().
7873
7874 2005-09-26  Tor Lillqvist  <tml@novell.com>
7875
7876         * gdk/win32/gdkwindow-win32.c (gdk_window_shape_combine_mask): Set
7877         the shaped flag here, too. (#316871)
7878         (gdk_window_shape_combine_region): Currently unimplemented, so
7879         don't do anything to the shaped flag here.
7880
7881 2005-09-26  Matthias Clasen  <mclasen@redhat.com>
7882
7883         Fix #316871, reported by Dan Winship:
7884         
7885         * gdk/gdkwindow.h (struct _GdkWindowObject): Add a shaped flag.
7886
7887         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_mask) 
7888         (gdk_window_shape_combine_region): Set it here.
7889
7890         * gdk/gdkwindow.c (gdk_window_invalidate_maybe_recurse): Don't
7891         remove the child area for shaped windows.
7892
7893 2005-09-23  Matthias Clasen  <mclasen@redhat.com>
7894
7895         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_finalize):
7896         Don't leak expander pixbufs.  (#316946, Tommi Komulainen)
7897
7898 2005-09-22  Michael Natterer  <mitch@imendio.com>
7899
7900         Renamed GtkCellRendererKeys to GtkCellRendererAccel to be
7901         consistent with GTK+ terminology:
7902
7903         * gtk/gtkcellrendererkeys.[ch]
7904         * tests/testkeys.c: removed...
7905
7906         * gtk/gtkcellrendereraccel.[ch]
7907         * tests/testaccel.c: ...and added.
7908
7909         * gtk/Makefile.am
7910         * gtk/gtk.h
7911         * gtk/gtk.symbols
7912         * tests/Makefile.am: changed accordingly.
7913
7914 2005-09-22  Matthias Clasen  <mclasen@redhat.com>
7915
7916         * gtk/gtkwidget.c (gtk_widget_class_init): Fix the documentation
7917         for the grab-broken-event signal, noticed by Damon Chaplin.
7918
7919 2005-09-21  Tor Lillqvist  <tml@novell.com>
7920
7921         * gdk/win32/gdkselection-win32.c (gdk_selection_convert,
7922         gdk_text_property_to_text_list_for_display,
7923         gdk_text_property_to_utf8_list_for_display,
7924         gdk_win32_selection_add_targets,
7925         _gdk_win32_selection_convert_to_dib): Free return value from
7926         gdk_atom_name().
7927         (gdk_text_property_to_text_list_for_display): Drop GError variable
7928         that isn't actually used after being set.
7929
7930 2005-09-20  Johan Dahlin  <jdahlin@async.com.br>
7931
7932         * gtk/gtkentry.c (gtk_entry_set_completion): Mention NULL in 
7933         documentation.
7934
7935 2005-09-20  Tor Lillqvist  <tml@novell.com>
7936
7937         * gdk/win32/gdkselection-win32.c
7938         (gdk_selection_owner_get_for_display): Do return the correct owner
7939         for CLIPBOARD (i.e., the owner of the Windows Clipboard, if it is
7940         a window GDK knows about). The reason to return NULL seems to have
7941         gone when in the fix for bug #163702 the artificial
7942         GDK_SELECTION_CLEAR event generation was removed from
7943         gdk_selection_send_notify_for_display(). Fixes bug #316552.
7944
7945 2005-09-20  Matthias Clasen  <mclasen@redhat.com>
7946
7947         Avoid unnecessary XkbGetState() calls and XkbStateNotify
7948         events.  (#151555, Søren Sandmann)
7949
7950         * gdk/x11/gdkdisplay-x11.c (gdk_display_open): Use 
7951         XkbSelectEventDetails() to select XkbStateNotify events
7952         for only the state we care about.
7953
7954         * gdk/x11/gdkprivate-x11.h:
7955         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_state_changed): Pass
7956         the event into the function and update the keymap state from
7957         the state information contained in the event. Adjust all callers.
7958         
7959 2005-09-19  Matthias Clasen  <mclasen@redhat.com>
7960
7961         * gtk/gtkiconview.c: Use g_list_nth_data() instead of g_list_nth()->data
7962         in multiple places to avoid segfaults if the index is out of range.  
7963         (#316422, Guillaume Cottenceau)
7964         (gtk_icon_view_set_drag_dest_item): 
7965         (gtk_icon_view_scroll_to_path): Fix a typo in the docs.  (#316419,
7966         #316424, Guillaume Cottenceau)
7967
7968 2005-09-18  Hans Breuer  <hans@breuer.org>
7969
7970         * gtk/gtktrayicon-win32.c : now handling events by hard-coded 
7971         g_signal_emit_by_name() - will break when gtkstatusicon.c changes.
7972
7973 2005-09-18  Hans Breuer  <hans@breuer.org>
7974
7975         * gdk/gdk.symbols gdk/win32/gdkwin32.h gdk/win32/gdkcursorwin32.c : export
7976         _gdk_win32_pixbuf_to_hicon() as gdk_win32_pixbuf_to_hicon_libgtk_only()
7977         * gtk/gtktrayicon-win32.c : a lot of debug spew but it has started to show
7978         the icon and is blinking with teststatusicon. More to come ...
7979
7980 2005-09-18  Hans Breuer  <hans@breuer.org>
7981
7982         * gtk/makefile.msc.in : fix typo for GTK_VER; define HAVE_CONFIG_H
7983         cause gtkprogressbar.c has #include <config.h> conditionally; less
7984         noise from generated gtk.def
7985         * gtk/stock-icons/makefile.msc gdk/makefile.msc tests/makefile.msc : updated
7986         
7987         * gtk/gtktrayicon-win32.c : dummy implmentation to make gtk compile.
7988         For me it works as well as the *NIX implemenation, that is not at all.
7989
7990         * gdk/win32/gdkproperty-win32.c : implement gdk_atom_intern_static_string()
7991
7992         * gdk/win32/gdkwindow-win32.c(gdk_window_set_urgency_hint) : only use
7993         only use (WINVER >= 0x0500) when available from the SDK. Otherwise fall
7994         back to true dynamic linking of FlashWindowEx. Makes gtk+ work on NT4.0
7995         again - if compiled properly.
7996
7997         * tests/teststatusicon.c : don't use GNOME icons for testing, but icons
7998         already coming with Gtk+. Makes it compile on win32.
7999
8000 2005-09-18  Guilherme de S. Pastore  <gpastore@cvs.gnome.org>
8001
8002         * README.cvs-commits: fixed some tiny typos
8003
8004 2005-09-16  Tor Lillqvist  <tml@novell.com>
8005
8006         * modules/engines/ms-windows/msw_style.c (draw_extension,
8007         draw_box_gap): Check whether the widget actually is a GtkNotebook
8008         before treating it as such. Drop some unneeded local variables,
8009         use parameter with same information instead. (#316412)
8010
8011 2005-09-15  Federico Mena Quintero  <federico@ximian.com>
8012
8013         * tests/autotestfilechooser.c: Start a set of automated tests for
8014         the file chooser.  The only test in there right now doesn't pass
8015         yet.  It specifies the intended behavior of the first optimization
8016         of a series which I'll do on the file chooser (see
8017         http://primates.ximian.com/~federico/news-2005-09.html#14 for the
8018         details of this optimization).
8019
8020         * tests/Makefile.am: Added autotestfilechooser.c.
8021
8022         * gtk/gtkfilechooserprivate.h (struct
8023         _GtkFileChooserDialogPrivate): Move all the file chooser's private
8024         structures to here, so that they can be accessed by
8025         tests/autotestfilechooser.c:  _GtkFileChooserDialogPrivate,
8026         _GtkFileChooserWidgetPrivate, LoadState, _GtkFileChooserDefault.
8027
8028         * gtk/gtkfilechooserdialog.c: See above.
8029
8030         * gtk/gtkfilechooserwidget.c: See above.
8031
8032         * gtk/gtkfilechooserdefault.c: See above.
8033
8034 Thu Sep 15 15:27:55 2005  Tim Janik  <timj@imendio.com>
8035
8036         * gtk/gtkwindow.c: 
8037         gtk_window_map_event(): new function to work around lost unmap requests.
8038         fixes bug #316180.
8039
8040 2005-09-14  Federico Mena Quintero  <federico@ximian.com>
8041
8042         * gtk/gtkfilechooserdefault.c (gtk_file_chooser_default_init): Add
8043         an easy-to-find profiling marker when starting to create a file
8044         chooser.
8045         (browse_files_model_finished_loading_cb): Likewise, for when the
8046         chooser is finished loading.
8047
8048 2005-09-14  Tristan Van Berkom <tvb@cvs.gnome.org>
8049
8050         * gtk/gtkcolorbutton.c: Check "color" argument in 
8051         gtk_color_button_set_color ()
8052
8053 2005-09-14  Matthias Clasen  <mclasen@redhat.com>
8054
8055         * gtk/gtklabel.c (gtk_label_get_type): 
8056         * gtk/gtkbutton.c (gtk_button_get_type): 
8057         * gtk/gtkwindow.c (gtk_window_group_get_type): No point in 
8058         using a mem chunk for window groups, buttons, labels.
8059
8060         * gtk/updateiconcache.c (foreach_remove_func): Fix
8061         a use-after-free bug.  (#316256, Alexander Nedotsukov)
8062
8063 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
8064
8065         * gtk/*.c: Various cleanups.  (#315360, Kjartan Maraas)
8066
8067         * gdk/*.c: Various cleanups.  (#315359, Kjartan Maraas)
8068         
8069 2005-09-13  Matthias Clasen  <mclasen@redhat.com>
8070
8071         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
8072         Let GDK_Return pass through in some more cases.
8073
8074         * gtk/gtkentry.c (gtk_entry_key_press): Reset the im context before
8075         activating the entry. 
8076
8077         * gtk/gtkiconview.c (gtk_icon_view_class_init):
8078         (gtk_icon_view_get_dest_item_at_pos):  Fix typos in the 
8079         docs.  (#316008, #316027, #316121, Guillaume Cottenceau)
8080
8081         * gtk/gtkfilechooser.c (gtk_file_chooser_class_init): Add some docs.
8082         (#316001, Guillaume Cottenceau)
8083
8084         * gtk/gtkdnd.c (gtk_drag_set_icon_name): Fix a copy-and-paste
8085         mistake in the docs.  (#315993, Guillaume Cottenceau)
8086
8087         * tests/testentrycompletion.c (create_simple_completion_model): Add
8088         some strings containing multibyte characters.
8089
8090         * gtk/gtkentrycompletion.c (gtk_entry_completion_real_insert_prefix): 
8091         Fix prefix insertion for multibyte characters.  (#316095,
8092         Tommi Komulainen)
8093
8094         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): 
8095         * gtk/gtkiconview.c (gtk_icon_view_create_drag_icon): Silently
8096         return NULL if the widget is not realized.  (#316023,
8097         Guillaume Cottenceau)
8098
8099 2005-09-11  Matthias Clasen  <mclasen@redhat.com>
8100
8101         * gdk/gdk.symbols: 
8102         * gdk/gdkproperty.h: 
8103         * gdk/x11/gdkproperty-x11.c (gdk_atom_intern_static_string): 
8104         New function to avoid pointless strdups when creating atoms
8105         from static strings.  
8106
8107         * gdk/x11/*.c:
8108         * gtk/*.c:  Use gdk_atom_intern_static_string() where 
8109         appropriate.
8110
8111 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8112
8113         * gtk/gtkcellrendererkeys.h: 
8114         * gtk/gtkcellrendererkeys.c: Add a cell renderer for displaying
8115         and editing accelerators, a port of EggCellRendererKeys .
8116
8117         * gtk/gtk.symbols:
8118         * gtk/gtk.h:
8119         * gtk/Makefile.am: Add the keys cell renderer.
8120
8121         * tests/Makefile.am: 
8122         * tests/testkeys.c: Test GtkCellRendererKeys
8123
8124 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8125
8126         Make it possible to determine if a key event is for a
8127         modifier key:
8128         
8129         * gdk/x11/gdkprivate-x11.h: 
8130         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_key_is_modifier): 
8131         New function to determine if a keycode is mapped to a modifier.
8132         (get_xkb): Get the modmap.
8133
8134         * gdk/x11/gdkevents-x11.c (translate_key_event): Set the 
8135         is_modifier bit by calling _gdk_keymap_key_is_modifier().
8136
8137         * gdk/gdkevents.h (struct _GdkEventKey): Add an is_modifier
8138         bit.
8139
8140 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8141
8142         * gdk/gdkpixbuf-drawable.c (convert_real_slow): Remove an 
8143         unused variable, noticed by Kjartan Maraas.
8144
8145 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8146
8147         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_event): 
8148         Make drag reordering work properly for columns other than the
8149         first.  (#315054, Dan Winship)
8150         
8151         * gtk/gtkfontsel.c (gtk_font_selection_set_font_name): Handle 
8152         invalid fontnames better. (#136926, Michael R. Walton)
8153         
8154         Stop cursor blinking in non-editable regions of a text view.
8155         (#311508, Torbjörn Andersson)
8156         
8157         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): 
8158         (cursor_blinks): Take editability into account when deciding
8159         whether the cursor blinks.
8160         (gtk_text_view_button_release_event): 
8161         (gtk_text_view_move_cursor_internal): Update cursor blinking here.
8162
8163         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_start_editing): 
8164         Use connect_after to connect to the focus_out event. This
8165         ensures that the entry has already stopped blinking by the time
8166         we emit the edited signal.  (#315229, Thomas Leonard)
8167
8168         * tests/testgtk.c: Use GDK_MOD1_MASK, not GDK_ALT_MASK.
8169
8170         * gtk/gtkwindow.c (gtk_window_parse_geometry): Don't set
8171         unsigned ints to -1.  (#315481, Kjartan Maraas)
8172
8173         * gtk/gtkcalendar.c (gtk_calendar_init): first_weekday is relative
8174         to week_1stday, not to Sunday. Gotta love the ISO 14652 guys...
8175         (#314473, Stanislav Brabec)
8176
8177 2005-09-09  Matthias Clasen  <mclasen@redhat.com>
8178
8179         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Document
8180         memory handling.  (#314975, Torsten Schoenfeld)
8181
8182         * gtk/gtkiconview.c (gtk_icon_view_class_init): 
8183         * gtk/gtkfilesel.c (gtk_file_selection_class_init): 
8184         * gtk/gtkcombobox.c (gtk_combo_box_class_init): 
8185         * gtk/gtklabel.c (gtk_label_class_init): 
8186         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init): 
8187         Stylistic improvements and clarifications for some blurbs. 
8188         (#315520, Clytie Siddall)
8189
8190 2005-09-09  Tor Lillqvist  <tml@novell.com>
8191
8192         * gdk/win32/gdkdisplay-win32.c (gdk_display_get_name): Cache the
8193         display name. There is only one GdkDisplay on Win32, and
8194         constructing the display name isn't entirely trivial, so cacheing
8195         is probably worth it. For instance GIMP calls this function a lot.
8196         (gdk_display_open): Call gdk_display_get_name() to prime the
8197         cached name.
8198         (gdk_display_get_n_screens, gdk_display_get_screen,
8199         gdk_display_get_default_screen): Verify parameter correctness like
8200         the X11 backend does.
8201
8202         * gdk/win32/gdkscreen-win32.c (gdk_screen_make_display_name):
8203         Return a freshly allocated string, as the API specifies. Fixes a
8204         heap corruption problem that caused random errors and crashes in
8205         GIMP, for instance.
8206
8207 2005-09-07  Matthias Clasen  <mclasen@redhat.com>
8208
8209         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): 
8210         Make C-u commit and restart hex input if we are already in a
8211         hex sequence.
8212
8213 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
8214
8215         * gdk/x11/gdkkeys-x11.c (update_modmap): Make the modmap reflexive.
8216         (_gdk_keymap_add_virtual_modifiers): Don't add both Alt and Meta
8217         if they are mapped to the same modifier.
8218
8219         * gtk/Makefile.am: Rename gtkstatusicon-x11.c and gtktrayicon.c
8220         to gtkstatusicon.c and gtktrayicon-x11.c
8221
8222         * gtk/gtkaccelgroup.c: Include Super, Hyper and Meta in the
8223         default accel mod mask.
8224
8225         * gtk/gtkaccelgroup.c (gtk_accelerator_parse): 
8226         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
8227         Don't use GDK_ALT_MASK.
8228
8229         * gdk/gdktypes.h: No need to introduce GDK_ALT_MASK
8230
8231 2005-09-06  Matthias Clasen  <mclasen@redhat.com>
8232
8233         Add support for extra virtual modifiers:  (#85780, Owen Taylor)
8234         
8235         * tests/testgtk.c (create_key_lookup): Add tests for extra virtual
8236         modifiers.
8237
8238         * gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Try to match both against
8239         Mod2 - Mod5 and against Super, Hyper, Meta.
8240
8241         * gtk/gtkaccellabel.c (_gtk_accel_label_class_get_accelerator_label): 
8242         * gtk/gtkaccelgroup.c (gtk_accelerator_parse) 
8243         (gtk_accelerator_name): Support Super, Hyper Meta and Mod2 - Mod5.
8244
8245         * gdk/x11/gdkkeys-x11.c (struct _GdkKeymapX11): Add a 
8246         modmap to maintain the information which X modifiers map to
8247         virtual modifiers.
8248         (get_xkb): Set up the modmap from the XKB tables.
8249         (update_keymaps): Set up the modmap from the information returned
8250         by XGetModifierMapping in the non-XKB case.
8251
8252         * gdk/x11/gdkprivate-x11.h: 
8253         * gdk/x11/gdkkeys-x11.c (_gdk_keymap_add_virtual_modifiers): New 
8254         function to set the virtual modifiers in the state.
8255
8256         * gdk/x11/gdkevents-x11.c (translate_key_event): Call 
8257         _gdk_keymap_add_virtual_modifiers here.
8258
8259         * gdk/gdktypes.h (GdkModifierType): Add bits for virtual Super, 
8260         Hyper and Meta modifiers. Also add GDK_ALT_MASK as an alias
8261         for GDK_MOD1_MASK.
8262
8263 2005-09-05  Matthias Clasen  <mclasen@redhat.com>
8264
8265         * gtk/gtkaction.c (connect_proxy): Set the label of a button
8266         if it has no child.  (#315253, John Finlay)
8267
8268 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
8269
8270         * gtkimcontextsimple.h: Add a modifiers_dropped bit
8271
8272 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
8273
8274         * gtk/gtkentry.c (gtk_entry_destroy): Disconnect idle handlers
8275         on destroy to avoid problems when they are called on a destroyed
8276         widget.  (#315135, John Cupitt)
8277         
8278         * gtk/gtkentry.c (gtk_entry_class_init):
8279         * gtk/gtktextview.c (gtk_text_view_class_init): Add bindings
8280         for Ctrl-Shift-A to unselect all.  (#309301, Kathy Fernandes)
8281
8282         * gtk/gtkimcontextsimple.c: Rework the Unicode hex input
8283         code. Now we only steal a single key combination, Ctrl-Shift-U,
8284         instead of sixteen. 
8285         A hex Unicode sequence must be started with Ctrl-Shift-U, followed
8286         by a sequence of hex digits entered with Ctrl-Shift still held.
8287         Releasing one of the modifiers or pressing space while the modifiers
8288         are still held commits the character. It is possible to erase
8289         digits using backspace.
8290         As an extension to the above, we also allow to start the sequence
8291         with Ctrl-Shift-U, then release the modifiers before typing any
8292         digits, and enter the digits without modifiers.
8293         (#82011, Owen Taylor)
8294         
8295 2005-09-02  Matthias Clasen  <mclasen@redhat.com>
8296
8297         * gtk/gtkmain.c (gtk_get_event_widget): If the window is destroyed,
8298         we still need to deliver the destroy event.  (#314980, Chris Lahey)
8299
8300         * gtk/gtktextview.c (gtk_text_view_key_press_event): Reset 
8301         im context before committing \n or \t.
8302
8303 2005-09-02  Alexander Larsson  <alexl@redhat.com>
8304
8305         * gtk/gtkfilechooserdefault.c: (shortcuts_add_volumes),
8306         (shortcuts_activate_volume):
8307         Handle base_path being null in the rest of the cases (#310270)
8308
8309 2005-09-02  Tor Lillqvist  <tml@novell.com>
8310
8311         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Keep track of
8312         cursor position also in root window coordinates. Prune out
8313         superfluous WM_MOUSEMOVE events even earlier, based on root window
8314         coordinates. Windows sends WM_MOUSEMOVE messages after a new
8315         window has ben mapped below the cursor even if the mouse doesn't
8316         move. We used to generate GDK_MOTION_NOTIFY in these cases. This
8317         confused at least gtk_menu_motion_notify(). (#314995)
8318
8319         * gtk/gtkintl.h: No need to include config.h here. It caused
8320         warnings about GTK_LOCALEDIR being redefined on Win32 when
8321         compiling files where gtkintl.h is included after gtkprivate.h
8322         (which #undefines and re-#defines GTK_LOCALEDIR on Win32).
8323
8324         * gtk/gtkplug.c: Include config.h.
8325
8326 2005-09-01  Matthias Clasen  <mclasen@redhat.com>
8327
8328         * gtk/gtkfilesystemunix.c: Pass statbufs down to 
8329         xdg_mime_get_mime_type_for_file() where possible, to avoid
8330         useless re-stating.  
8331         
8332         * gtk/gtkaction.c (gtk_action_get_accel_closure): Fix doc
8333         typo.  (#314921, Guillaume Cottenceau)
8334
8335         * gdk/*.c: Intern some more strings.
8336         * gtk/gtkintl.h: 
8337         * gtk/*.c: Define an I_() macro and use it instead of the 
8338         bulky g_intern_static_string().
8339
8340 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
8341
8342         * gtk/gtkbindings.c (binding_signal_new): Intern the signal name
8343         instead of copying it.
8344
8345         * gtk/gtktypeutils.c (gtk_identifier_get_type): Some more string interning.
8346
8347         * gtk/*.c: Also intern static strings passed to 
8348         g_object_set_data().
8349
8350         * gdk/Makefile.am: 
8351         * gtk/Makefile.am: Intern type names in code generated by 
8352         glib-mkenums, too.
8353
8354         * gtk/*.c: 
8355         * gdk/x11/*.c: 
8356         * gdk/*.c: Intern type names before registering the type to avoid 
8357         unnecessary copies.
8358
8359         * configure.in: Require GLib 2.9.0
8360
8361 2005-08-31  Matthias Clasen  <mclasen@redhat.com>
8362
8363         * gtk/gtktoolbar.c: Undeprecate gtk_toolbar_set_icon_size(),
8364         and add icon-size and icon-size-set properties.  (#314172)      
8365
8366         * gtk/gtkwindow.c (gtk_window_set_transient_for): Inherit window
8367         groups across transient parents.  (#312918, Christian Persch)
8368
8369         * gtk/gtktreemodel.c: Some documentation fixes.  (#314882,
8370         Guillaume Cottenceau)
8371
8372         * gtk/gtktextiter.c (gtk_text_iter_backward_visible_cursor_positions): 
8373         Fix a typo in the docs.  (#314878, Guillaume Cottenceau)
8374
8375 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
8376
8377         * gtk/gtkentry.c (gtk_entry_class_init): Add key bindings to
8378         make C-/ select all and C-\ unselect all.  (#309301,
8379         Kathy Fernandez)
8380
8381         * gtk/gtkimcontextsimple.c: Change the compose sequence for
8382         soft hyphen to be multi_key-minus-minus-space, and add
8383         compose sequences multi_key-minus-minus-period and 
8384         multi_key-minus-minus-minus for en dash and em dash.
8385         (#172653, Christian Lohmaier)
8386
8387         * gtk/gtkentry.c (gtk_entry_draw_frame): Fix some unused
8388         code.  (#313946, Christian Persch)
8389
8390         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Another
8391         fix for the default value of the "ui" property.
8392
8393 2005-08-30  Matthias Clasen  <mclasen@redhat.com>
8394
8395         * gtk/gtk.symbols: 
8396         * gtk/gtkselection.h:
8397         * gtk/gtkselection.c: Add functions which look for text, image
8398         or uri targets in an array of atoms.   (#314089, Mark Wielaard)
8399
8400         * gtk/gtk.symbols: 
8401         * gtk/gtkselection.h:
8402         * gtk/gtkselection.c (gtk_selection_data_targets_include_uri): 
8403         Add a function to check wether targets include uri.  
8404         (#314092, Mark Wielaard)
8405         
8406         * gtk/gtk.symbols: 
8407         * gtk/gtkwindow.h: 
8408         * gtk/gtkwindow.c: Add a deletable property with getter
8409         and setter, to control the close button in the window 
8410         frame.  (#59718, Havoc Pennington)
8411
8412 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
8413
8414         * gtk/gtkrc.key.emacs: Add C-n/C-p/C-f/C-b as alternatives
8415         to the arrow keys for menu navigation.  (#162825, Carl Worth)
8416
8417         * gtk/gtkentry.c, gtk/gtktextview.c: More typo fixes
8418
8419         * gtk/gtksocket-x11.c, gtk/gtkstatusicon-x11.c: Fix typos.
8420
8421         * gtk/gtkstatusicon-x11.c (gtk_status_icon_new_from_stock): 
8422         * gtk/gtkimage.c (gtk_image_new_from_stock): Don't
8423         refer to nonexisting stock ids.
8424
8425         * gtk/gtktextview.c (popup_targets_received): 
8426         * gtk/gtkentry.c (popup_targets_received): Construct
8427         the "Select All" menuitem from stock.
8428
8429         * gtk/stock-icons/stock_select_all_{16,24}.png:
8430         * gtk/stock-icons/Makefile.am: 
8431         * gtk/gtkiconfactory.c:
8432         * gtk/gtkstock.h: 
8433         * gtk/gtkstock.c: Add a "Select All" stock item.  (#78545,
8434         Calum Benson)
8435
8436         * gtk/gtktrayicon.c: Add a pointer to the spec.
8437
8438         * gtk/gtkstatusicon-x11.c: Add docs.
8439
8440         * gtk/gtkstatusicon.h: Fix a typo.
8441
8442         Add a cross-platform "tray icon" API, by
8443         porting EggStatusIcon/EggTrayIcon (#105101)
8444         
8445         * gtk/gtkstatusicon.h: A GtkStatusIcon is an object which
8446         displays an icon in a notification area.
8447
8448         * gtk/gtkstatusicon-x11.c: GtkStatusIcon implementation for
8449         X11, using GtkTrayIcon.
8450
8451         * gtk/gtktrayicon.h: 
8452         * gtk/gtktrayicon.c: An implementation of the freedesktop.org
8453         system tray specification, not public API.
8454
8455         * gtk/gtk.symbols: Add new exported functions.
8456
8457         * gtk/gtk.h: Include gtkstatusicon.h.
8458
8459         * gtk/Makefile.am: Add new files.
8460
8461         * tests/Makefile.am:
8462         * tests/teststatusicon.c: Test for GtkStatusIcon.
8463
8464 2005-08-29  Christopher Aillon  <caillon@redhat.com>
8465
8466         * gtk/gtkstock.c: Add builtin GtkStockItems for GTK_STOCK_CONNECT
8467         and GTK_STOCK_DISCONNECT
8468         
8469 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
8470
8471         * gtk/gtksocket-x11.c (_gtk_socket_windowing_embed_notify): 
8472         Use XFixesChangeSaveSet if available.  (#314682)
8473
8474         * gtk/gtkmenu.c (gtk_menu_grab_notify):  Only cancel if the menu
8475         was active.  (#314298, Christian Persch, analysis by Mark McLoughlin)
8476
8477 2005-08-29  Matthias Clasen  <mclasen@redhat.com>
8478
8479         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): Remove an
8480         accidentally leftover duplicate pixbuf creation.  (#314700,
8481         Kjartan Maraas)
8482
8483         * gtk/gtksettings.c (settings_update_cursor_theme): Don't 
8484         leak the cursor theme name.  (#314693, Kjartan Maraas)
8485
8486         * gdk/x11/gdkasync.c (_gdk_x11_get_window_child_info): Free 
8487         state.children in all cases.  (#313862, Kjartan Maraas)
8488
8489 2005-08-28  Matthias Clasen  <mclasen@redhat.com>
8490
8491         * po/POTFILES.in, po-properties/POTFILES.in:
8492         Add gdk/gdkscreen.c
8493
8494 2005-08-27  Matthias Clasen  <mclasen@redhat.com>
8495
8496         * gtk/gtkuimanager.c (gtk_ui_manager_class_init): Fix the default
8497         value of the ui property. (#314532, Yong Wang)
8498
8499         * gdk/x11/gdkproperty-x11.c (gdk_property_get): Don't warn
8500         when G_MAXLONG is passed as length.  
8501
8502 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
8503
8504         * gtk/updateiconcache.c: Add a separate --ignore-theme-index option
8505         to avoid overloading --force.  (JP Rosevaar)
8506
8507 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
8508
8509         * configure.in: Bump version to 2.9.0
8510
8511         * gdk/gdk.symbols: 
8512         * gdk/gdkscreen.h: 
8513         * gdk/gdkscreen.c: Make the GdkScreen font options api
8514         public, and add properties GdkScreen::font-options and
8515         GdkScreen::resolution.  (#314004)
8516
8517         * gdk/gdkpango.c:
8518         * gtk/gtksettings.c:
8519         * gtk/gtkwidget.c: Adjust all callers.
8520         
8521         * gdk/gdkintl.h: Simplify and use glib/gi18n-lib.h.
8522         * gdk/gdkpango.c: Include gdkintl.h, not gtkintl.h.
8523         * gdk/gdkscreen.c: Include gdkintl.h.
8524
8525         * gtk/gtkicontheme.c (theme_lookup_icon): Avoid an uninitialized
8526         variable warning, pointed out by Colin Walters. (#314585)
8527
8528 2005-08-26  Tor Lillqvist  <tml@novell.com>
8529
8530         * gtk/gtkfilesystemwin32.c: Remove some ifdeffed out debugging
8531         printouts.
8532         (gtk_file_system_win32_parse): Don't mishandle UNC paths. (#314519)
8533
8534 2005-08-26  Matthias Clasen  <mclasen@redhat.com>
8535
8536         * gtk/gtkcalendar.c (gtk_calendar_init): Fix the calculation
8537         of week_start.  (#314473, JP Rosevaar)
8538
8539 2005-08-25  Thomas Fitzsimmons  <fitzsim@redhat.com>
8540
8541         * gtk/gtkfilesystemmodel.c (idle_finished_loading_cb): Acquire GDK
8542         lock.  (#314533, Thomas Fitzsimmons)
8543
8544 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
8545
8546         * gtk/gtktoolbar.c (_gtk_toolbar_elide_underscores): Handle
8547         NULL gracefully.  (#314523, Ed Catmur)
8548
8549 2005-08-25  Owen Taylor  <otaylor@redhat.com>
8550
8551         * gdk/x11/gdkcursor-x11.c (gdk_x11_display_set_cursor_theme): 
8552         Handle theme == NULL.
8553
8554 2005-08-25  Matthias Clasen  <mclasen@redhat.com>
8555
8556         * gtk/gtkmenutoolbutton.c (menu_position_func): Take widget
8557         y offset into account when positioning the popup.  (#314470,
8558         Christian Persch)
8559
8560 2005-08-25  Owen Taylor  <otaylor@redhat.com>
8561
8562         * gdk/gdkscreen.c (gdk_screen_get_type): Use gdk_screen_init
8563         as instance_init, not base_init! (#314452, Fix from Frederic
8564         Crozat, reported by Joe Marcus Clarke). Trivial cleanup: use -1.
8565         rather than 1 for a negative flag value.
8566
8567 2005-08-24  Owen Taylor  <otaylor@redhat.com>
8568
8569         * gdk/gdkpango.c (draw_error_underline): Add a note about
8570         cut-and-paste between here and Pango.
8571
8572 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
8573
8574         * === Released 2.8.2 ===
8575
8576         * gtk/gtkclipboard.c (request_image_received_func): Use the correct
8577         callback for image/gif, and also try image/bmp.  (#314086,  Mark 
8578         Wielaard)
8579
8580         * gtk/gtkfilesystemunix.c (gtk_file_system_unix_volume_render_icon): 
8581         Use gnome-dev-harddisk for volumes, not gnome-fs-blockdev.  (#314382,
8582         Sebastien Bacher)
8583         
8584         * NEWS: Updates
8585
8586         * gtk/gtksettings.c (gtk_settings_get_for_screen): Make sure font
8587         and cursor settings get propagated down to the screen initially.
8588         Pointed out by Frederic Crozat.
8589
8590         * gtk/gtkicontheme.c (ensure_valid_themes): Don't try to send a client
8591         message if the screen is NULL. Noticed by Kjartan Maraas.
8592
8593 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
8594
8595         * Bump version
8596
8597         * === Released 2.8.1 ===
8598
8599         * NEWS: Updates
8600         
8601 2005-08-24  Matthias Clasen  <mclasen@redhat.com>
8602
8603         * gtk/gtktreemodelfilter.c (gtk_tree_model_filter_visible): Protect
8604         against lazy filterers which return values other than TRUE or
8605         FALSE from their visible func.  (#314335)
8606
8607 2005-08-23  Owen Taylor  <otaylor@redhat.com>
8608
8609         Fix for #314004, reported by Michael Reinsch:
8610
8611         * gdk/gdk.symbols:
8612         * gdk/gdkscreen.[ch]: Add gdk_screen_get/set_font_options_libgtk_only()
8613         Add gdk_screen_get/set_resolution_libgtk_only()
8614
8615         * gdk/gdkpango.c (gdk_pango_context_get_for_screen): Set
8616         the options for the screen on the newly created context.
8617
8618         * gtk/gtksettings.c (settings_update_font_options/dpi) gtkwidget.c: 
8619         Move font options and dpi code from gtkwidget.c to gtksettings.c, set
8620         the font options on the screen.
8621
8622         * gtk/gtkwidget.c (gtk_widget_update_pango_context): Just get
8623         the font options from the screen and set them on the context.
8624
8625 2005-08-23  Kristian Rietveld  <kris@gtk.org>
8626
8627         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): don't
8628         bother inserting new rows in a level with a zero refcount and
8629         immediately free the level. (Fixes #312350, reported by Markku Vire).
8630
8631 2005-08-23  Matthias Clasen  <mclasen@redhat.com>
8632
8633         * gtk/updateiconcache.c: Complain when there is no index.theme file
8634         in the specified directory, unless --force is used. Also add an
8635         --index-only option to create caches without image data.
8636
8637         * gtk/gtkfilechooserdefault.c (shortcuts_append_desktop): Fix a
8638         C99ism.  (#314262, Robert Jeff Mitchell)
8639         
8640 2005-08-22  Manish Singh  <yosh@gimp.org>
8641
8642         * gtk/gtkicontheme.h: add declaration for _gtk_icon_theme_check_reload.
8643
8644         * gtk/gtkwindow.c: remove declaration of gtk_window_read_rcfiles.
8645
8646 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
8647
8648         * gtk/gtkwindow.c (gtk_window_client_event): 
8649         * gtk/gtkicontheme.c (ensure_valid_themes) 
8650         (_gtk_icon_theme_check_reload): Implement a clientmessage based
8651         scheme for makeing sure that all GTK+ applications notice if an
8652         icon theme has been updated. This should prevent multiple versions
8653         of an icon theme cache to be mapped in memory at the same time,
8654         which can cause excessive memory consumption.  (#313156, Chris 
8655         Lahey)
8656
8657 2005-08-22  Matthias Clasen  <mclasen@redhat.com>
8658
8659         * gtk/gtkicontheme.c (gtk_icon_theme_load_icon): Add a note
8660         regarding icon theme changes.
8661
8662         * gtk/gtkiconcache.c (_gtk_icon_cache_get_icon): When returning
8663         pixbufs which are backed by the mmapped memory of an icon cache,
8664         increase the refcount of the icon cache, so that the memory is not
8665         munmapped away underneath the pixbuf upon icon theme changes.  
8666         (#314170, Kjartan Maraas)
8667
8668         * docs/tools/Makefile.am (LDADDS): Add GTK_DEP_LIBS, in order 
8669         to link against Xext.  (#314062)
8670
8671         * gtk/gtkhsv.c (paint_triangle): One more fix to prevent buffer
8672         overruns.  (#314081, Hans Breuer)
8673
8674 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
8675
8676         * gtk/gtkentry.c (gtk_entry_get_layout): Clarify that the
8677         returned layout must not be modified.
8678
8679 Sat Aug 20 16:12:14 2005  Jonathan Blandford  <jrb@redhat.com>
8680
8681         * gtk/gtktreeview.c (gtk_tree_view_set_model): clear
8682         scroll_to_path if the model changes.
8683
8684         * gtk/gtkiconview.c: (gtk_icon_view_destroy),
8685         (gtk_icon_view_size_allocate), (gtk_icon_view_set_cursor),
8686         (gtk_icon_view_scroll_to_path): Handle scrolling to a path before
8687         we're realized, #312798
8688         (gtk_icon_view_set_model): clear scroll_to_path if the model
8689         changes.
8690
8691 2005-08-20  Matthias Clasen  <mclasen@redhat.com>
8692
8693         * gtk/gtkrange.c (gtk_range_adjustment_changed) 
8694         (gtk_range_adjustment_value_changed):  Don't queue a draw
8695         if the layout has not changed.  (#313991, Benjamin Berg)
8696
8697 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
8698
8699         * gtk/gtktreeitem.c: Remove duplicate lines.  (#313344,
8700         Benoit Carpentier)
8701
8702         * modules/engines/ms-windows/msw_style.c (setup_system_styles): 
8703         Fix a typo. 
8704
8705         * gtk/gtkfilechooserbutton.c (change_icon_theme) 
8706         (model_add_special, model_add_special, model_add_volumes):
8707         Handle pixbuf being NULL without warnings. Also, don't
8708         leak pixbuf references when the icon theme is changed.
8709
8710         * gtk/gtkmain.c (gtk_get_event_widget): Don't access
8711         the user data on destroyed windows, since at best
8712         it can be a stale pointer.  (#313953, Robin Green)      
8713
8714 2005-08-19  Matthias Clasen  <mclasen@redhat.com>
8715
8716         * gtk/gtkhsv.c (paint_triangle): Avoid a buffer overrun.  
8717         (#313900, Sebastien Bacher)
8718
8719         * gtk/gtktreeview.c (gtk_tree_view_get_visible_range): Return
8720         FALSE if the tree is empty.  (#313891, Guillaume Cottenceau)
8721
8722         * gdk/x11/gdkdnd-x11.c (_gdk_drag_get_protocol_for_display) 
8723         (xdnd_read_actions, get_client_window_at_coords_recurse): 
8724         Free data returned from XGetWindowProperty. 
8725
8726         * gdk/x11/gdkevents-x11.c (fetch_net_wm_check_window) 
8727         Free data returned from XGetWindowProperty.  (313867, Kjartan
8728         Maraas)
8729         
8730         * gdk/x11/gdkdnd-x11.c (get_client_window_at_coords_recurse): Free
8731         children in all cases.  (#313862, Kjartan Maraas)
8732
8733         * gtk/gtkicontheme.c (theme_lookup_icon): Store GtkIconData structs 
8734         in the per-directory hash, even if they come from the icon cache. 
8735         We tried to avoid that before, but as a result leaked icon data
8736         structs.  (#313852, Kjartan Maraas)
8737
8738 2005-08-18  Matthias Clasen  <mclasen@redhat.com>
8739
8740         * gtk/gtkmenutoolbutton.c (gtk_menu_tool_button_destroy): Disconnect
8741         signal handlers on destroy, not on finalize.  (#313759, Brett Atoms)
8742
8743 2005-08-15  Owen Taylor  <otaylor@redhat.com>
8744
8745         * configure.in: Add -lXext to GDK_EXTRA_LIBS in absence of pkg-config
8746         files for x11/xext. (Jonas Bonn)
8747
8748 2005-08-15  Tor Lillqvist  <tml@novell.com>
8749
8750         * gtk/gtkicontheme.c (theme_lookup_icon): Put debugging printout
8751         inside GTK_NOTE.
8752
8753 2005-08-15  Owen Taylor  <otaylor@redhat.com>
8754
8755         * configure.in: Fix have_base_pc / have_base_x_pc typo.
8756
8757         * gdk/x11/gdkdrawable-x11.c gtk/gtksettings.c: Remove panoxft.h includes.
8758         (#313417, James Andrewartha)
8759
8760         * configure.in: Add fontconfig to X_PACKAGES, since we use it for
8761         FcNameConstant(). (More of #313417)
8762
8763 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
8764
8765         * gtk/gtkfilechooserdefault.c: When using gtk_dialog_run() for
8766         modal dialogs, make sure to inherit the window group from 
8767         the parent, since we don't inherit window groups across
8768         transient parents currently.  (#312918, Christian Persch)
8769
8770         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): 
8771         * gtk/gtkdialog.c (gtk_dialog_run): Slight update to the docs. 
8772
8773         * gtk/gtkiconview.c (gtk_icon_view_select_path) 
8774         (gtk_icon_view_scroll_to_path): Handle paths of depth 0
8775         gracefully.  (#312796, Jonathan Blandford)
8776
8777         * tests/testtoolbar.c: Add some more tests for menu placement.
8778
8779         * gtk/gtkmenutoolbutton.c (menu_position_func): 
8780         * gtk/gtktoolbar.c (menu_position_func): Improve positioning
8781         of toolbutton menus and of the overflow menu.  (#312937, 
8782         #153870, Christian Persch, Paolo Borelli)
8783
8784 2005-08-15  Tor Lillqvist  <tml@novell.com>
8785
8786         * gtk/updateiconcache.c: Use g_path_get_dirname() instead of
8787         the nonportable <libgen.h> and dirname().
8788
8789 2005-08-15  Matthias Clasen  <mclasen@redhat.com>
8790
8791         * gtk/gtksizegroup.c: Use object data to mark widgets and
8792         groups as visited, so that we avoid constant extra list
8793         traversals. Also allocate quarks in class_init.  (#311618,
8794         Michael Natterer)
8795
8796         * gtk/gtkicontheme.c (gtk_icon_theme_lookup_icon): Correct the 
8797         download location for the hicolor icon theme. (#313475, Olexiy 
8798         Avramchenko)
8799
8800         * gtk/gtkicontheme.c: Remove debug spew. 
8801
8802 2005-08-15  Owen Taylor  <otaylor@redhat.com>
8803
8804         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_set_back_pixmap): 
8805         * gdk/win32/gdkwindow-win32.c (gdk_window_set_back_pixmap): 
8806         * gdk/x11/gdkwindow-x11.c (gdk_window_set_back_pixmap):
8807         Handle pixmap == NULL when checking for a colormap.
8808         (Allin Cottrell).
8809
8810 2005-08-14  Matthias Clasen  <mclasen@redhat.com>
8811
8812         * gtk/updateiconcache.c: Store only one copy of the pixel data
8813         for symlinked icons. To achieve this, maintain a hashtable 
8814         mapping pathnames to pixel data, and share the pixel data for
8815         all symlinks resolving to the same pathname. When writing out
8816         the image data, write out the pixel data only the first time
8817         it is met, and store the offset pointing to the first copy
8818         for use in all later cases.
8819         This reduces the size of the Bluecurve icon cache from 40
8820         to 13MB. (#312972)
8821