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