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