ChangeLog 38.6 KB
Newer Older
1
2
3
4
5
Fri Apr 26 10:34:15 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): Add
	missing gdkscreen/display-x11.h files.

6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Thu Apr 25 16:51:40 2002  Owen Taylor  <otaylor@redhat.com>

	Start of integration of Erwann Chenede's multihead work
	from the gtk-multihead branch.

	* gdk/gdkdisplay.[ch] gdk/gdkscreen.[ch]
	gdk/x11/gdkdisplay-x11.[ch] gdk/x11/gdkscreen-x11.[ch]
	New classes representing a set of screens with attached
	input devices and a single contiguous area, respectively.

	* gdk/gdk.[ch] gdk/gdkinternals.h gdk/x11/gdkmain-x11.c:
	gdk/x11/gdkprivate-x11.h: Make the initialization interface
	simple _gdk_windowing_init() and do the rest in
	gdk_open_display() calls.

	* gdk/gdk.[ch]: Add gdk_parse_args() which can be used
	to do the display-independent part of initialization
	instead of gdk_init_[check].

	* gdk/gdkcursor.h gdk/gdkfont.h gdk/gdkkeys.h gdk/gdkpixmap.h
	gdk/gdkproperty.h gdk/gdkselection.h gdk/gdkwindow.h:
	Add multihead variants (_for_display(), for_screen()) of functions
	getting information specific to a particular screen screen or
	display.

	* gdk/gdkscreen.[ch]: Add gdk_screen__* variants of functions
	like gdk_rgb_get_colormap() that used to get/list global
	objects.

	* gdk/x11/gdkx.h: Add functions for converting GdkScreen
	and GdkDisplay into the X equivalents.

	* gdk/x11/gdkwindow-x11.c: Removed gdk_window_xid_at_coords() 
	not in the headers and unused.

	* configure.in gdk/x11/{gxid.c,gxid_lib.[ch],gdkinput-gxi.c}:
	Remove gxid support ... has not been tested for a long time...
	"xfree" support is more	portable to non XFree86.

	* gdk/**.h: Add a GDK_MULTIHEAD_SAFE define that can be
	used to turn off functions that are inherently non-multihead
	safe.

	* gdk/**.c: add GDK_NOTE(multihead, ...) calls when functions
	are used in non-multihead-safe ways.

	* gdk/*.c gdk/x11/*.c: Changes to make the internals of GDK
	multihead safe.

Kristian Rietveld's avatar
Kristian Rietveld committed
55
56
57
58
59
60
Thu Apr 25 23:49:01 2002  Kristian Rietveld  <kris@gtk.org>

	Fixes #74206.

	* gtk/gtktreeprivate.h: add _gtk_tree_view_column_count_special_cells

Kristian Rietveld's avatar
Kristian Rietveld committed
61
	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_has_editable_cell),
Kristian Rietveld's avatar
Kristian Rietveld committed
62
63
64
65
66
67
	(_gtk_tree_view_column_get_editable_cell): remove a space which made
	the code look ugly
	(_gtk_tree_view_column_count_special_cells): new function,
	(gtk_tree_view_column_cell_process_action): if there's only one
	activatable cell, the whole column will activate that renderer.

68
69
70
71
72
Thu Apr 25 23:36:55 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_search_iter): make the search
	dialog not scroll horizontally (prolly fixes #74806).

73
74
75
76
77
2002-04-25  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkrange.c (gtk_range_calc_layout): Avoid a possible
	division by zero.  (#77820)

78
79
80
81
82
83
Thu Apr 25 20:24:37 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenuitem.c (gtk_menu_item_size_allocate): use the child's
	requisition.height, not allocation.height, as width of submenu
	indicator. (#75948)

84
85
86
87
88
Thu Apr 25 00:26:34 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_reset_default_sort_func):
	resort if we're already in 'unsorted' state, and update the docs

Matthias Clasen's avatar
Matthias Clasen committed
89
90
91
92
93
2002-04-24  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktreeview.c (gtk_tree_view_stop_editing): Remove doc
	comment markers on freeform comments.

94
95
96
97
98
99
Wed Apr 24 17:34:16 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_stop_editing): temporarily set
	->priv->edited_column to NULL. Pleas read the comment in this
	function for an explanation (fixes #79632).

Matthias Clasen's avatar
Matthias Clasen committed
100
101
102
103
104
2002-04-23  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextview.c (gtk_text_view_buffer_to_window_coords): 
	(gtk_text_view_window_to_buffer_coords): Improve docs.  (#62359)

105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
Tue Apr 23 18:35:34 2002  Kristian Rietveld  <kris@gtk.org>

	This commit adds a cell_background property for cell renderers. With
	this property you can make your TreeView look incredibly ugly.

	* gtk/gtkcellrenderer.c: add cell_background, cell_background_gdk and
	cell_background_set properties,
	(set_cell_bg_color): new function,
	(gtk_cell_renderer_get_property), (gtk_cell_renderer_set_property):
	support for new properties,
	(gtk_cell_renderer_render): render a background when set.

	* gtk/gtkcellrenderer.h: add cell_background_set and cell_background
	fields.

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_process_action):
	when rendering, pass in just the background_area of the cell and not
	the background_area of the entire column.

124
125
126
2002-04-22  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkentry.c (gtk_entry_drag_data_get): Use 
Anders Carlsson's avatar
Anders Carlsson committed
127
128
	gtk_entry_get_public_chars. 
	Fixes #79532 (Reported by Ovidiu Gheorghioiu).
129

130
131
132
133
134
135
136
137
138
139
140
141
142
143
Mon Apr 22 19:24:29 2002  Kristian Rietveld  <kris@gtk.org>

	This commit adds stock icon functionality to GtkCellRendererPixbuf
	which is totally cool.

	* gtk/gtkcellrendererpixbuf.h: add some fields

	* gtk/gtkcellrendererpixbuf.c: add finalize method, add some
	properties, add some stock icon rendering code.

	* demos/gtk-demo/stock_browser.c: modified to use the stock
	icon stuff in the cellrendererpixbuf instead of its own stock icon
	rendering code.

144
145
146
147
148
149
150
151
152
2002-04-21  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
	Save x and y in window_private.

	* gtk/gtkplug.c (_gtk_plug_add_to_socket):
	Move plug window outside the visible area to avoid flashing until
	the first size_allocate.

153
154
155
156
157
158
159
160
161
162
163
164
2002-04-21  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtktextiter.c (gtk_text_iter_forward_search): More verbose
	description of match_start and match_end return values.  (#57929)

	* gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
	* gtk/gtktreeview.c (_gtk_tree_view_column_autosize): Remove doc
	comment markers on freeform comments.

	* gtk/gtktreemodelsort.c
	(gtk_tree_model_sort_convert_path_to_child_path): Doc fixes. (#68404)

165
166
167
168
Sat Apr 20 21:15:11 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenuitem.c: add "selected_shadow_type" style property

169
170
171
172
173
174
175
176
Sat Apr 20 12:07:14 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_modify_color_component): Accept
	NULL for color to mean "unmodify"

	* gtk/gtkwidget.c (gtk_widget_modify_font): Accept NULL for
	font_desc to mean "unmodify".

177
178
179
180
181
182
183
184
Sat Apr 20 16:49:26 2002  Kristian Rietveld  <kris@gtk.org>

	* gdk/x11/gdkpixmap-x11.c (gdk_pixmap_new): replace GDK_IS_WINDOW
	with GDK_IS_DRAWABLE in the assert, only check GDK_WINDOW_DESTROYED
	if window is a GdkWindow,
	(gdk_bitmap_create_from_data): ditto,
	(gdk_pixmap_create_from_data): ditto

185
186
Fri Apr 19 23:38:16 2002  Kristian Rietveld  <kris@gtk.org>

Kristian Rietveld's avatar
Kristian Rietveld committed
187
188
	Fixes #50310.

189
190
191
192
193
194
195
196
197
198
199
	* gtk/gtktreeprivate.h: add _gtk_tree_view_column_autosize

	* gtk/gtktreeview.c: privately export _gtk_tree_view_column_autosize,
	and add a small note about that function,
	(gtk_tree_view_button_press): check for double click and
	"not having an autosize" column before autosizing the column,
	
	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_min_width):
	call _gtk_tree_view_column_autosize to update autosized column width
	(gtk_tree_view_column_set_max_width): ditto

200
201
202
203
204
205
206
207
208
209
2002-04-20  Matthias Clasen  <maclas@gmx.de>

	* TODO, TODO.xml, README.nanox, docs/Changes-1.2.txt,
	docs/Changes-2.0.txt, docs/gtk-config.txt, docs/debugging.txt,
	gdk/TODO: Remove some files whose content is either obsolete or
	has been moved elsewhere.

	* Makefile.am, gtk+.spec.in, docs/Makefile.am: Remove references
	to these files.
	
210
211
212
213
214
Fri Apr 19 21:31:04 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_row_changed): cancel editing
	if tree_view->priv->edited_column != NULL (fixes #76066)

215
216
217
218
219
220
221
222
Fri Apr 19 21:06:39 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_size_allocate): subtract
	TREE_VIEW_HEADER_HEIGHT from allocation->height to get the real
	size for the tree (fixes #72729),
	(gtk_tree_view_real_start_editing): correct cell_area->y for
	scrolling due to gtk_tree_view_real_set_cursor (fixes #75687)

223
224
225
226
227
228
229
230
231
232
Fri Apr 19 16:30:09 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeprivate.h, gtk/gtktreeview.c: rename
	last_single_clicked{,_2} to last_button_press{,_2}, as the latter
	is a more sane name.

	* gtk/gtktreeview.c (gtk_tree_view_button_press): use ->priv->anchor
	instead of ->priv->cursor, check for the anchor at another place, as
	you can go in edit mode without	having an anchor.

233
234
235
236
237
238
239
240
241
242
243
244
2002-04-18  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkitemfactory.c:
	* gtk/gtkiconfactory.c:
	* gtk/gtkwidget.c:
	* gtk/gtkstyle.c:
	* gtk/gtkrc.c:
	* gtk/gtktreeviewcolumn.c:
	* gtk/gtkdialog.c:
	* gtk/gtktreemodel.c: s/<!>/<!-- -->/g throughout the
	documentation to bring the produced Docbook closer to XML.

245
246
247
248
249
250
251
252
253
254
255
256
257
258
2002-04-18  Tor Lillqvist  <tml@iki.fi>

	* gdk-pixbuf/Makefile.am (uninstall-libtool-import-lib)
	* gdk/Makefile.am (uninstall-libtool-import-lib): Fix typo,
	thanks to David Sterba for noticing.

	* gtk/gtkmain.h
	* gtk/gtkmain.c (gtk_init_abi_check, gtk_init_check_abi_check): In
	GTK+ 2.0 the GtkWindow struct actually is the same size in gcc on
	Win32 whether compiled with -fnative-struct or not. Unfortunately
	this wan't noticed until now. So, from now on, check some other
	struct, too, for which the use of -fnative-struct still
	matters. GtkBox is one such.

259
260
261
262
263
264
Thu Apr 18 00:23:31 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelsort.c
	(gtk_tree_model_sort_convert_path_to_child_path): so this function
	was completely broken. Fix it and improve readability.

Anders Carlsson's avatar
Anders Carlsson committed
265
266
267
268
269
2002-04-17  Anders Carlsson  <andersca@gnu.org>

	* tests/testtreeedit.c (button_press_event): Add a small
	test case.

Kristian Rietveld's avatar
Kristian Rietveld committed
270
271
272
273
Wed Apr 17 00:21:36 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreestore.c (gtk_tree_store_insert_before): fix docs

274
275
276
277
278
279
280
281
Tue Apr 16 17:28:21 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): check
	->priv->cursor and ->priv->anchor rowrefs before removing
	node->children from the rbtree. Also check the
	->priv->last_single_clicked and ->priv->last_single_clicked_2 rowrefs
	(I think I really need to rename those two someday).

282
283
284
285
286
287
288
289
Tue Apr 16 07:53:49 2002  Tim Janik  <timj@gtk.org>

	* gtk/gtkmenu.c (gtk_menu_key_press): don't install/change accelerators
	from locked accel groups.

	* gtk/gtkwidget.c (_gtk_widget_get_accel_path): export whether the
	accel path is from a locked accel group.

290
291
292
293
294
295
296
Mon Apr 15 15:41:56 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcontainer.c (gtk_container_focus): include internal
	children when doing focus.
	(gtk_container_get_all_children): new static function to include
	internal children when making a list of them.

297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
Sun Apr 14 16:56:59 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeprivate.h: add _gtk_tree_view_column_get_editable_cell and
	_gtk_tree_view_column_get_neighbor_sizes

	* gtk/gtktreeviewcolumn.c (struct _GtkTreeViewColumnCellInfo): add
	real_width field,
	(_gtk_tree_view_column_get_editable_cell): implement,
	(gtk_tree_view_column_cell_process_action): fill info->real_width
	(_gtk_tree_view_column_get_neighbor_sizes): implement

	* gtk/gtktreeview.c (gtk_tree_view_button_press): make the "editable
	widget" show up with the same size as the actual cell, so it doesnt
	cover the complete column if there are any other cells in that column.

Abigail Brady's avatar
Abigail Brady committed
312
313
314
315
2002-04-14  Abigail Brady  <morwen@evilmagic.org>

	* gtk/gtkfilesel.c: Fix typo in message.

316
317
318
319
320
321
2002-04-13  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): create
	the target pixbuf AFTER filling in width/height, so that 
	passing in -1 for width/height will work.
	
Kristian Rietveld's avatar
Kristian Rietveld committed
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
Sat Apr 13 22:49:45 2002  Kristian Rietveld  <kris@gtk.org>

	Fixes #75510

	* gtk/gtktreeselection.c (gtk_tree_selection_get_selected): make this
	function work correctly and more sane

	* gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): remove
	node->children from rbtree before emitting GtkTreeSelection::changed

Sat Apr 13 17:15:12 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_init): dont set
	the mode to GTK_CELL_RENDERER_MODE_EDITABLE by default,
	(gtk_cell_renderer_text_class_init): for some reason our default for
	editable was TRUE, of course this is FALSE.
	(gtk_cell_renderer_text_set_property): update mode when editable
	has been changed.

341
342
343
344
345
2002-04-12  jacob berkman  <jacob@ximian.com>

	* gdk/x11/xsettings-client.c (fetch_card8): fix cut-n-paste bug
	which breaks big-endian machines (fixes #73585)

346
347
348
349
350
351
2002-04-12  Havoc Pennington  <hp@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_real_remove): relocate the
	remove_weak_pointer to just before we free the page, to be sure 
	it doesn't get re-added. #75282

352
353
354
355
356
357
358
359
360
Fri Apr 12 18:32:46 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_real_set_cursor): add
	clamp_node argument
	(toplevel): update usages of gtk_tree_view_real_set_cursor,
	(gtk_tree_view_focus_to_cursor): don't let
	gtk_tree_view_real_set_cursor clamp the node, so you won't get
	unexpected scrolling

361
362
363
364
365
366
367
2002-04-11  Michael Meeks  <michael@ximian.com>

	* gtk/gtklabel.c
	(gtk_label_parse_uline, gtk_label_set_text),
	(gtk_label_set_text_with_mnemonic): add freeze / thaws
	to stop deluge of 'notify' signals.

368
369
370
371
372
373
374
375
376
377
Sat Apr  6 06:57:00 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenushell.[ch] gtk/gtkmenuitem.c: Export
	private _gtk_menu_shell_activate() to encapsulate
	cut-and-paste code.

	* gtk/gtkmenubar.c: Select the first item on the menu bar
	for F10	rather than acting as if the user pressed <Alt>F
	to select the file manager.

378
379
380
381
382
383
384
385
386
387
388
389
Tue Apr  9 19:01:28 2002  Owen Taylor  <otaylor@redhat.com>

        Fix problems with HandleBox and focusing - #78232

	* gtk/gtkwidget.c (gtk_widget_translate_coordinates): Handle
	GtkHandleBox / GnomeDock style window heirarchy / widget
	heirarchy disconnects. :-(. 

	* gtk/gtkcontainer.c: Handle failures from
	gtk_widget_translate_coordinates (Focusing is not right, but at
	least it doesn't go into infinite loops.)

390
391
392
393
394
395
396
397
Tue Apr  9 18:34:58 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcontainer.c (_gtk_container_queue_resize): Always
	set the ALLOC_NEEDED and REQUEST_NEEDED flags up the hierarchy,
	even if we aren't currently in a resize container... we need
	this to properly handle size changes to widgets that are
	being moved from one heirarchy to another. (#78226)

Kristian Rietveld's avatar
Kristian Rietveld committed
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
Tue Apr  9 21:41:24 2002  Kristian Rietveld  <kris@gtk.org>

	Fixes #78110

	* gtk/gtktreeselection.c (_gtk_tree_selection_internal_select_node):
	add override_browse_mode argument and implement,
	(gtk_tree_selection_unselect_path): always unselect the path,
	(toplevel): update uses of _gtk_tree_selection_internal_select_node

	* gtk/gtktreeview.c: update uses of
	_gtk_tree_selection_internal_select_node

	* gtk/gtktreeprivate.h (_gtk_tree_selection_internal_select_node):
	update prototype

Tue Apr  9 21:39:44 2002  Kristian Rietveld  <kris@gtk.org>

	Fixes #77862

	* gtk/gtktreeprivate.h: add _gtk_tree_view_column_has_editable_cell

	* gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_has_editable_cell):
	new function

	* gtk/gtktreeview.c (gtk_tree_view_button_press): send cell event
	on first click when cell isn't editable

Tue Apr  9 21:37:31 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreedatalist.c (_gtk_tree_data_list_check_type): add some
	types which were missing and useful to use (fixes #77870)

Anders Carlsson's avatar
Anders Carlsson committed
430
431
432
433
2002-04-09  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkfilesel.c (open_new_dir): Initialize error to NULL.

Manish Singh's avatar
Manish Singh committed
434
435
436
437
2002-04-08  Manish Singh  <yosh@gimp.org>

	* tests/testgtk.c: really revert testgtk.c

438
439
440
441
442
443
444
445
Mon Apr  8 20:28:54 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeselection.c (gtk_tree_selection_select_path),
	(gtk_tree_selection_unselect_path),
	(gtk_tree_selection_path_is_selected): check the return value of
	_gtk_tree_view_find_node and return if it's TRUE. This makes those
	functions work somewhat saner on non-expanded trees.

446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
Fri Apr  5 18:28:56 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeselection.c (gtk_tree_selection_set_mode): free
	anchor row reference after unselecting the selection (fixes #76272)

Fri Apr  5 18:27:48 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_real_expand_row): only return
	when we don't have to open all children (fixes #75736)

Fri Apr  5 18:24:24 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear): unref
	cellrenderer after clearing the attributes of the renderer (fixes
	#75592)

462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
Fri Apr  5 05:55:14 2002  Jonathan Blandford  <jrb@gnome.org>

	* gtk/gtktreeview.c (gtk_tree_view_grab_focus): implement.
	  (gtk_tree_view_move_cursor_up_down): check for focus
	  (gtk_tree_view_move_cursor_page_up_down): ditto
	  (gtk_tree_view_move_cursor_left_right): ditto
	  (gtk_tree_view_move_cursor_start_end): ditto
	  (gtk_tree_view_real_select_all): ditto
	  (gtk_tree_view_real_unselect_all): ditto
	  (gtk_tree_view_real_select_cursor_row): ditto	
	  (gtk_tree_view_real_toggle_cursor_row): ditto
	  (gtk_tree_view_real_expand_collapse_cursor_row): ditto
	  (gtk_tree_view_real_select_cursor_parent): ditto
	  (gtk_tree_view_real_start_interactive_search): ditto

	* gtk/gtktreeviewcolumn.c: grab focus

479
480
481
482
483
484
2002-04-05  Alex Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkkeyboard-fb.c (write_string):
	Fix undefined variable typo.
	Patch from Simon Floery <simon.floery@gmx.at>

485
486
487
488
489
490
491
492
Fri Apr  5 01:06:15 2002  Tim Janik  <timj@gtk.org>

	* gdk/x11/gdkwindow-x11.c (set_text_property): fix segfault
	upon NULL return from gdk_utf8_to_string_target().

	* gdk/x11/gdkselection-x11.c (gdk_utf8_to_string_target): fix
	return value comment to mention NULL returns upon EMFILE.

493
494
495
496
497
Thu Apr  4 22:35:42 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* tests/testgtk.c (menu_items): revert accidentally commited
	change to testgtk.c

498
499
500
501
502
Thu Apr  4 22:28:08 2002  Soeren Sandmann  <sandmann@daimi.au.dk>

	* gtk/gtkmenuitem.c (gtk_menu_item_paint): Fix problem with menu
	titles being clipped (#75948)
	
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
2002-04-04  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkrgb.c: Fix some bugs, and introduce a minor feature.

	(gdk_rgb_convert_4_pack): New function, for 16-color (4 bits per
	pixel) static visuals (fixes #858).

	(gdk_rgb_convert_gray4_pack, gdk_rgb_convert_gray4_d_pack): Fix
	same bugs in both functions: Odd start coordinate (partial byte)
	was not handled correctly. Also a partial final byte was not
	handled correctly.

	(gdk_rgb_do_colormaps): Use G_N_ELEMENTS.
	(gdk_rgb_create_info): For pseudocolor visuals, use the 2x2x2
	colorcube only for depths 3 and 4. For static color, use it for
	depths 3..7 like before. (Depth 5..7 pseudocolor probably never
	occurs on X11. It doesn't normally occur on Win32 either, but
	there is experimental code in gdkvisual-win32.c to let the user
	restrict the size of palette used.)
	(gdk_rgb_init): Set gdk_rgb_verbose if the GDK_DEBUG_GDKRGB flag
	is set.
	(gdk_rgb_select_conv): Use gdk_rgb_convert_8 also for depths 5, 6
	and 7 (see above). Use gdk_rgb_convert_4_pack for 4 bits per pixel
	static color.

528
Tue Apr  2 11:10:13 2002  Jonathan Blandford  <jrb@redhat.com>
529

530
531
532
	* gtk/gtkliststore.c (gtk_list_store_set_sort_func): set the
	sort_func correctly, 77030

533
534
535
536
537
538
539
Tue Apr  2 13:44:27 2002  Tim Janik  <timj@gtk.org>

	* configure.in: update version to 2.0.2, binary age 2, interface
	age 2.

	* NEWS: updates for 2.0.2.

540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
Mon Apr  1 22:20:24 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_move_cursor_page_up_down): add
	check for y > tree_view->priv->height (fixes #76974)

Mon Apr  1 22:19:39 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): get
	the stamp changes right this time

Mon Apr  1 22:13:24 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodel.c (gtk_tree_row_reference_free): only
	disconnect the ref callbacks when model == proxy (Thanks go to
	Manuel Clos Crespo for the remote debugging)

Owen Taylor's avatar
Owen Taylor committed
556
557
558
559
560
Sat Mar 30 15:19:24 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelsort.c: revert the latest stamp increment changes,
	as it broke stuff for trees

Owen Taylor's avatar
Owen Taylor committed
561
Fri Mar 29 18:15:12 2002  Owen Taylor  <otaylor@redhat.com>
562

Owen Taylor's avatar
Owen Taylor committed
563
	* ===== Released 2.0.1 ======
564

565
566
567
568
569
570
571
572
Fri Mar 29 18:09:18 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccelgroup.c (gtk_accel_group_query): Call 
	gdk_keyval_to_lower() on the key passed in, since we
	lowercase all other key vals passed in, so querying
	keyvals will otherwise fail if the caller used
	an uppercase accelerators (#76899, Vitaly Tishkov)

573
574
575
576
577
578
579
Fri Mar 29 17:41:21 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmain.c (load_modules): Fix screwup in handling
	of module path that was resulting in freed memory being
	accessed when both GTK_MODULES and a theme were set.
	(#76902, Johan Dahlin)

580
581
582
583
584
Fri Mar 29 17:57:36 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkiconfactory.c (get_default_icons): Fix wrong
	stock id's for ADD/REMOVE. (#76915, Vitaly Tishkov)

585
586
587
588
589
590
591
2002-03-29  Hans Breuer  <hans@breuer.org>

	* gtk/gtkmain.h : fix typo in gtk_init_check macro, which
	caused crashes if argc != 0

	* gtk/stock-icons/makefile.msc : added new icons

592
593
594
595
596
597
Fri Mar 29 20:17:35 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
	remove call to gtk_tree_model_sort_increment_stamp
	(gtk_tree_model_sort_sort_level): always increment the stamp

Owen Taylor's avatar
Updates    
Owen Taylor committed
598
599
600
601
602
603
604
605
606
607
608
609
Fri Mar 29 00:19:41 2002  Owen Taylor  <otaylor@redhat.com>

	* NEWS: Updates

	* configure.in: Version 2.0.1, binary, interface age 1.

	* configure.in (GDK_PIXBUF_VERSION): Up required versions
	of dependencies.

	* gtk/gtkiconfactory.c gtk/stock-icons/Makefile.am:
	Add stock_add/remove_16.

610
611
612
613
614
615
Thu Mar 28 18:38:30 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtk[hv]paned.c (gtk_[hv]paned_size_allocate): 
	Don't show the window unless the widget is mapped.
	(#76742, Dennis Björklund, Soeren Sandmann)

616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
2002-03-29  Hans Breuer  <hans@breuer.org>

	Fixed dashed line issues (#74441) to an IMO reasonable extend. 
	That is: use PS_USERSTYLE on WinNT (the next GDI limit appears
	to be with lines width > 50); Render horizontal and vertical
	dashed lines on Win9x 'by hand'. Dotted selection rectangles 
	and Dia look nice ...

	* gdk/win32/gdkprivate-win32.h : add pen_dashes pointer and
	num_pen_dashes to _GdkGCWin32
	* gdk/win32/gdkgc-win32.c : initialize pen_dashes and remove
	the guesses from dashes to windoze line styles.
	(predraw_set_forground) : always ExtCreatePen (PS_SOLID) on
	Win9x, which does not support PS_USERSTYLE.
	* gdk/win32/gdkdrawable-win32.c : new functions render_line_
	<horizontal|vertical>. Use them if not running on NT in
	gdk_win32_draw_<rectangle|segments|lines> ()

	* gdk/win32/gdkkeys-win32.c (gdk_keyval_name) : return NULL
	for keyval == 0 to avoid to have zeros in all menu entries 
	without accelerator.

Jakub Steiner's avatar
Jakub Steiner committed
638
639
640
641
642
643
644
645
2002-03-29  Jakub Steiner <jimmac@ximian.com>

	* gtk/stock-icons/stock_add_24.png:
	* gtk/stock-icons/stock_add_16.png:
	* gtk/stock-icons/stock_remove_24.png:
	* gtk/stock-icons/stock_remove_16.png: use a simple '+' and '-',
	  works better. the old box was too clumsy

646
647
648
649
650
651
Thu Mar 28 21:11:04 2002  Tim Janik  <timj@gtk.org>

	* gtk/gtkfilesel.c (open_new_dir): when encountering non-UTF-8 file
	names, alert the user with g_message() instead of g_warning() and
	put out the actual conversion error.

652
653
654
655
656
2002-03-28  Dave Camp  <dave@ximian.com>

	* gtk/gtktreeview.c (install_scroll_sync_handler): Don't install
	the handler if the widget isn't realized.

657
658
659
660
661
662
663
2002-03-28  Jakub Steiner <jimmac@ximian.com>

	* gtk/stock-icons/stock_font*:
	* gtk/stock-icons/stock_align*:
	* gtk/stock-icons/stock_text*: better solution to the dark theme
	  problem. Also looks more pretty IMHO

664
665
666
667
668
2002-03-27  Matthias Clasen  <maclas@gmx.de>

	* configure.in: Try to find libpng via pkg-config first,
	since libpng-1.2.2 will come with a .pc file.

669
670
671
672
673
Wed Mar 27 11:10:39 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_real_remove): Set
	page->last_focus_child to NULL as well as removing the
	weak reference, to deal with reentrancy in set_focus_child().
Owen Taylor's avatar
Owen Taylor committed
674
	(#76634, Dennis Björklund)
675

676
677
2002-03-27  Murray Cumming  <murrayc@usa.net>
 
Murray Cumming's avatar
Murray Cumming committed
678
 	* gtk/gtktreeview.c: Corrected registered return type of
679
680
681
	"move-cursor" signal. Had to add a marshaller to 
 	gtk/gtkmarshalers.list.
	
682
683
684
685
686
687
688
Tue Mar 26 14:46:50 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenu.c (gtk_menu_popup): Shuffle the ordering around
	some more (position before realizing) fixing problems with 
	arrows popping up at the wrong time (#73386), hopefully not
	introducing other problems. (Reported by Ettore Perrazoli, others)

689
690
691
692
693
2002-03-26  Dave Camp  <dave@ximian.com>

	* gtk/gtktreeview.c (gtk_tree_view_button_press): Free the path
	after calling gtk_tree_view_row_activated() rather than before.

694
695
696
2002-03-25  Sven Neumann  <sven@gimp.org>

	* gtk/gtkrc.c (gtk_rc_parse_font_name): free the style's
Sven Neumann's avatar
Sven Neumann committed
697
	font_description before assigning a new one.
698
699
	(gtk_rc_parse_stock): always unref the created icon_set. #76289
	
700
701
702
703
704
2002-03-25  Mark McLoughlin  <mark@skynet.ie>

	* gtk/gtkbindings.c: (gtk_binding_entry_add_signal),
	kill code duplicated in gtk_binding_entry_add_signall.

705
706
707
708
709
710
711
712
713
714
715
Sun Mar 24 10:32:38 2002  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtktreemodel.c (gtk_tree_path_copy): Make path arg const, #75653

	* gtk/gtkfontsel.c (gtk_font_selection_show_available_styles): fix
	a warning

	* gtk/gtktreeview.c (gtk_tree_view_button_press): remove the grab
	when we emit row_activated so that listeners of this signal can
	grab the mouse, #75629

716
717
718
719
720
721
722
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextlayout.c (gtk_text_layout_real_invalidate):
	invalidate the line containing start, even if the [start,end)
	range is empty (just invalidate [start,end], essentially).
	Partially fixes #72374

723
724
725
726
727
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_do_popup): end any selection in
	progress, patch from db@zigo.dhs.org, #74620

728
729
730
731
732
733
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_move_cursor_internal): extend
	selection for pageup/pagedown and ctrl+pageup/pagedown if 
	shift is held. more of #53934

734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
2002-03-23  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c (gtk_text_view_destroy_layout): disconnect 
	layout handlers earlier in the function, to avoid possible
	reentrancy screwups
	(gtk_text_view_invalidate): Don't install idle handlers if 
	layout == NULL, otherwise we get problems during finalization 
	since clearing the buffer invalidates and puts the idle handlers
	back after we destroy the layout. #74660
	(gtk_text_view_ensure_layout): Install the validation handlers
	right after creating the layout.

	* gtk/gtktexttagtable.c (foreach_unref): call
	_gtk_text_buffer_notify_will_remove_tag(), #75126

749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
2002-03-22  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkfont-x11.c (gdk_fontset_load): add more explanatory
	text to the error message about missing charsets, and use
	g_printerr() not g_warning() since this is typically not a
	programming error (we do not export any API to ask whether 
	a font set will have missing charsets so apps realistically can't 
	do anything other than try the gdk_fontset_load())

	* gtk/gtktextview.c (gtk_text_view_key_press_event): return FALSE
	if the text view isn't editable and the user presses Return, 
	so default buttons and such can be activated, #74937

	* gtk/gtktextbuffer.c (paste_from_buffer): don't insert 
	if the insertion point is not editable and the paste 
	is interactive, #74125

	* gtk/gtkwindow.c (gtk_window_move_resize): enhance the #if 0
	debug spew

	* gtk/gtktextbuffer.c (cut_or_copy): only remove the previous 
	cut/copied data right before replacing it, when we know we are
	going to replace it. Fixes #74049

773
774
775
776
777
2002-03-22  Richard Hult  <rhult@codefactory.se>

	* gdk/gdkevents.c (gdk_event_get_root_coords): Fix typo, where x
	value was assigned to both x and y.

778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
Fri Mar 22 11:29:11 2002  Owen Taylor  <otaylor@redhat.com>

	Partial fix for problem where keypad keys acted
	as shift-arrows in an entry rather than arrows (#74327)

	* gtk/gtkkeyhash.c (_gtk_key_hash_lookup): Sort lookup
	results by number of modifiers in the entry. Fixes
	problem where if a key matched both modified and unmodified
	key bindings ... e.g., the distinguishing key binding
	was consumed, then it was random which was used. 

	* gtk/gtkbindings.c (gtk_binding_entries_sort_patterns): 
	Catch the case where there are multiple entries from the
	same bindingset (with different modifiers), and use only
	the first entry, which, with the change in _gtk_key_hash_lookup()
	will be the preferred value.

795
796
797
798
799
800
801
802
803
804
805
806
807
Fri Mar 22 10:56:19 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccelmap.c (gtk_accel_map_save_fd): Fix memory
	leak. (#74400, Morten Welinder.)

	* gtk/gtkaccelmap.c: Properly handle short returns from
	write() calls. (Handling EINTR isn't enough... that only
	handles the case where you were interrupted before you
	wrote a single byte.)
	
	* gdk/linux-fb/gdkmouse-fb.c gdk/linux-fb/gdkkeyboard-fb.c:
	Robustify against short returns from write() calls.

808
809
810
811
812
813
Fri Mar 22 10:12:10 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_paint): Change
	G_BREAKPOINT() to g_assert_not_reached ().
	(#75865, Ashok Venkiteswaran)
	
814
815
816
817
818
819
820
821
2002-03-22  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Don't clear
	all of the pen_style, just the PS_STYLE_MASK. Seems to fix #74441,
	but that is just the special case of one-pixel wide one-pixel
	on-off dotted lines. To fully implement generic X11 style dashed
	lines a major rewrite would be needed.

822
823
824
825
826
2002-03-21  Matthias Clasen  <maclas@gmx.de>

	* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Trivial typo
	fix. (Vitaly Tishkov, #75726)

827
828
829
830
831
832
Thu Mar 21 10:04:05 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_real_get_depth): Remove
	some left over debugging code with a G_BREAKPOINT()
	in it.

833
834
835
836
837
838
839
840
841
842
843
Wed Mar 20 19:33:31 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalendar.c (gtk_calendar_main_button): When
	changing months when the user clicks on a prev-month
	or next-month day, focus and select the new day.
	Ignore double clicks on prev-month, next-month days.
	(Based on suggestions from Andras Salamon, #74173)

	* gtk/gtkcalendar.c: Implement the focused/unfocused
	selected color change.

844
845
846
847
848
849
850
851
852
853
854
855
856
857
2002-03-20  Alex Larsson  <alexl@redhat.com>

	Patches from Carlo E. Prelz <fluido@fluido.as>
	Now gtkfb at least compiles and mostly works. The keyboard
	stuff needs more loving.
	
	* gdk/linux-fb/gdkkeyboard-fb.c (xlate_get_for_keyval,
	xlate_get_for_keycode, raw_get_for_keyval, raw_get_for_keycode):
	At least set the out parameters for these calls.

	* gdk/linux-fb/gdkmain-fb.c:
	(gdk_pointer_grab_info_libgtk_only, gdk_keyboard_grab_info_libgtk_only):
	Implement new functions.
	
858
859
860
861
862
863
864
Wed Mar 20 19:00:03 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_set_text): Short-circuit
	the text to the exact same thing, so we don't 
	unexpectedly change the selection or cursor position.
	(#74290, John Ellis.)

865
866
867
868
869
Thu Mar 21 00:05:14 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_get_background_area),
	(gtk_tree_view_get_cell_area): fix logic (fixes #74235, #73593)

870
871
872
873
874
875
Wed Mar 20 17:11:51 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.c: Patch from Richard Hestilow to fix
	gtk-font-name changes for widgets that get the actual
	default style. (#73709)

876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
Wed Mar 20 22:59:23 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtkrbtree.[ch]: add _gtk_rbtree_set_fixed_height()

	* gtk/gtktreeprivate.h: add fixed_height_check field

	* gtk/gtktreeview.c (gtk_tree_view_init): initialize
	scroll_sync_timer and fixed_height_check
	(do_validate_rows): add fixed_height_check. If all validated rows
	in the first cycle have the same height, then we set that height for
	the entire tree. This is some sort of 'fake' optimization, but helps
	a lot for the common case. We keep validating the entire tree in
	the background though.
	(gtk_tree_view_set_model): reset fixed_height_check

891
892
893
894
895
896
897
898
899
Wed Mar 20 16:36:08 2002  Owen Taylor  <otaylor@redhat.com>

        * gtk/*.c: Patch from Erwann Chenede, #73900 fixing
	a lot of warnings with Forte CC, mostly implicit
	casts between void * and function pointers.
	
	* gdk/gdkevents.c (gdk_event_get_state): GdkEventVisibility's
	state field is not a GdkModifierType. (Also #73900)

900
901
902
903
904
905
Wed Mar 20 12:35:22 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_grab_default): Remove
	leftover notification of has-default. (#75508, Jacob
	Berkman.)

906
907
908
909
910
911
912
913
914
Wed Mar 20 12:27:07 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Allow
	arrow keys as accelerators, as long as some modifier
	is pressed. (#75495)

	* gtk/gtkaccelgroup.c (gtk_accelerator_valid): Fix
	incorrect example in the docs.

915
916
917
918
919
920
Wed Mar 20 12:06:30 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_set_child_visible):
	Fix segfault when widget->parent is NULL. 
	(#75615, Alexey A. Malyshev) 

921
922
923
924
925
926
927
928
929
Wed Mar 20 11:32:07 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c: Improve test to prevent infinite
	loop. (#74952, Thomas Leonard)

	* gtk/gtkmenushell.c (gtk_real_menu_shell_cycle_focus):
	Fix warning when toplevel menu shell isn't a menu
	bar. (Thomas Leonard, #75602)

930
931
932
933
934
Wed Mar 20 11:00:59 2002  Owen Taylor  <otaylor@redhat.com>

        * configure.in: Use $PKG_CONFIG, not pkg-config.
        (LEE Sau Dan, #75572)

935
936
937
938
939
Wed Mar 20 10:55:56 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix assignment
	of time in scroll events. (Sven Neumann, #75574)

940
941
942
943
944
945
946
947
2002-03-20  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c (gdk_drag_find_window): Use
	gdk_window_get_toplevel(), as it is the top-level windows that are
	registered for DND.

	* gdk/win32/gdkwin32.h: Don't include gdkinternals.h.

948
949
950
951
952
2002-03-19  jacob berkman  <jacob@ximian.com>

	* gtk/gtkcombo.c (gtk_combo_find): fix infinite loop when
	gtk_combo_func() returns NULL (bug #75464)

953
954
955
956
957
2002-03-18  jacob berkman  <jacob@ximian.com>

	* gtk/gtkaspectframe.c (gtk_aspect_frame_class_init): set the
	correct min/max values for the ratio property (fixes #75331)

958
959
960
961
962
963
964
965
Mon Mar 18 11:55:03 2002  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimmulticontext.c (gtk_im_multicontext_get_slave):
	Patch from Yao Zhang fixing reference count leak.

	* gtk/gtkentry.c (gtk_entry_key_release): if (entry->editable),
	not if (!entry->editable).

966
967
968
969
970
Mon Mar 18 11:09:17 2002  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_override_redirect): 
	Fix backwards conditional. (#75019, Dan Winship.)

971
972
973
974
975
976
Sun Mar 17 01:11:16 2002  Kristian Rietveld  <kris@gtk.org>

	* gtk/gtktreeview.c (gtk_tree_view_size_request): use
	do_validate_rows instead of validate_rows_handler (fix by
	Mike Pieper, #74126)

977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
Sat Mar 16 23:54:56 2002  Kristian Rietveld  <kris@gtk.org>

	* gdk/x11/gdkwindow-x11.c (gdk_window_set_static_bit_gravity): just
	return when we have an input_only window (fix by Owen Taylor)

	* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add
	scroll_sync_timer

	* gtk/gtktreeview.c (install_scroll_sync_handler): new function,
	(scroll_sync_handler): ditto,
	(gtk_tree_view_unrealize): take scroll_sync_timer into account
	(gtk_tree_view_row_deleted): install scroll_sync_timer instead of
	calling top_row_to_dy/dy_to_top_row directly
	-- this greatly speeds up clearing the model (#73199)

	* gtk/gtktreemodelsort.c
	(gtk_tree_model_sort_convert_path_to_child_path): fix up this function,
	for some reason I really screwed it up (fixes #74663)

996
997
998
999
1000
2002-03-16  Sven Neumann  <sven@gimp.org>

	* configure.in (GDK_PIXBUF_DEP_CFLAGS) (GDK_PIXBUF_XLIB_DEP_CFLAGS) 
	(GDK_DEP_CFLAGS) (GTK_DEP_CFLAGS): include CFLAGS from gthread-2.0
	so that the libs work correctly in a threaded environment.
For faster browsing, not all history is shown. View entire blame