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