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