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