ChangeLog.pre-2-6 26.7 KB
Newer Older
Tim Janik's avatar
Tim Janik committed
1
2
3
4
5
6
7
8
9
10
11
12
Tue May 12 02:31:57 1998  Tim Janik  <timj@gtk.org>

	[security audit by Alan Cox]

	* gtk/gtkobject.c (gtk_object_get_arg_type): check for arg_name to not
	exceed maximum assumed size.

	* gtk/gtkmenufactory.c (gtk_menu_factory_create): check that `path' does
	not exceed maximum assumed size.
	(gtk_menu_factory_remove): likewise.
	(gtk_menu_factory_find_recurse): likewise.

13
14
15
16
Mon May 11 23:53:38 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkwidget.c (gtk_widget_queue_resize): queue the idle_sizer with
	GTK_PRIORITY_INTERNAL - 1, so widgets get first resized and then
Tim Janik's avatar
Tim Janik committed
17
	redrawn if that is still neccessary. don't allow queueing of already
18
19
20
	destructed objects.
	(gtk_widget_idle_sizer): proccess the resize queue in a save manner, so
	widgets which are in the queue can be destroyed savely, handle
Tim Janik's avatar
Tim Janik committed
21
	requeueing properly.
22
23
24
	(gtk_widget_idle_draw): proccess the redraw queue in a save manner, so
	widgets which are in the queue can be destroyed/unrealized savely.

Tim Janik's avatar
Tim Janik committed
25
Mon May 11 17:54:44 BST 1998 Tony Gale	<gale@gtk.org>
26
27
28
29

	* gtkfaq.sgml: add question on multi-threading,
	  minor URL cleanups.

Tim Janik's avatar
Tim Janik committed
30
31
32
33
Mon May 11 09:56:45 1998  Tim Janik  <timj@gtk.org>

	* configure.in (cflags_set): preserve automake CFLAGS.

Tim Janik's avatar
Tim Janik committed
34
	* Makefile.am: fully rename the created libraries to libgtk-1.1.la
Tim Janik's avatar
Tim Janik committed
35
	and libgdk-1.1.la. this means we need to change certain portions of
Tim Janik's avatar
Tim Janik committed
36
	the Makefile.am on major/minor version bumps.
Tim Janik's avatar
Tim Janik committed
37
38
39

	* ltmain.sh: the -release option is not required anymore.
	
Tim Janik's avatar
Tim Janik committed
40
41
42
43
	* gtk/gtkobject.h (gtk_trace_referencing): compile time check the type
	of the first argument to be of type GtkObject. unconditionally compile
	this function. removed __GNUC__ dependancy of the gtk_object_ref and
	gtk_object_unref macro wrappers for this function.
Tim Janik's avatar
Tim Janik committed
44

45
46
47
48
49
Mon May 11 02:31:19 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkobject.h:
	* gtk/gtkobject.c:
	(gtk_object_data_try_key):
Tim Janik's avatar
Tim Janik committed
50
51
	(gtk_object_data_force_id): these are now macros substituting the old
	functions. we just use the corresponding g_dataset_* functions for
52
53
	key->id associations. (this is to assure unique key<->id associations).

54
55
56
57
58
59
60
1998-05-10  Stefan Jeske  <stefan@gtk.org>

	* gtk/gtkctree.c (gtk_ctree_is_visible): Changed return value
	to gboolean.

	* docs/gtk.texi (GtkCTree): Started documentation of GtkCTree.

Tim Janik's avatar
Tim Janik committed
61
Sat May	 9 20:11:20 1998  Owen Taylor  <otaylor@gtk.org>
62
63
64
65
66

	* configure.in (LIBS): Try to figure out if this
	is Digital Unix and we need -std1 to get the
	right prototypes.

Tim Janik's avatar
Tim Janik committed
67
Sat May	 9 16:30:33 BST 1998 Tony Gale	<gale@gtk.org>
68
69
70
71

	* docs/gtk_tut_it.sgml: update of Italian tutorial
	  translation from Daniele Canazza <dcanazz@tin.it>

Tim Janik's avatar
Tim Janik committed
72
Sat May	 9 02:34:41 1998  Tim Janik  <timj@gtk.org>
73
74
75

	* gtk/gtkfeatures.h.in: new file used as template for
	* gtk/gtkfeatures.h: new file to define macros indicating newly
Tim Janik's avatar
Tim Janik committed
76
	introduced features, such as GTK_HAVE_SIGNAL_INIT.
77
78

	* gtk/gtksignal.c:
Tim Janik's avatar
Tim Janik committed
79
	(gtk_signal_emitv_by_name):
80
	(gtk_signal_emitv):
Tim Janik's avatar
Tim Janik committed
81
	new functions to emit signals with an already provided parameter set.
82
83
84
85
86
87
88
	(provided by Kenneth Albanowski <kjahds@kjahds.com>).
	(gtk_signal_real_emit): prototype changes, so this functions always
	gets its parameters and signal structure as arguments.
	(gtk_signal_emit): provide the signal structure and parameter list for
	gtk_signal_real_emit.
	(gtk_signal_emit_by_name): likewise.

Tim Janik's avatar
Tim Janik committed
89
Sat May	 9 00:03:12 1998  Tim Janik  <timj@gtk.org>
90
91

	* gtk/gtksignal.c (gtk_signal_handler_unref): reflect the presence of
Tim Janik's avatar
Tim Janik committed
92
	signal connections through unsetting GTK_CONNECTED.
93
	(gtk_signal_handler_insert): reflect the presence of signal connections
Tim Janik's avatar
Tim Janik committed
94
	through setting GTK_CONNECTED.
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
	(gtk_signal_real_emit): only check for handler emissions if the object
	has the GTK_CONNECTED flag set.
	(gtk_signal_handler_pending): don't check for pending handlers if the
	GTK_CONNECTED flag is not set for this object.

	* gtk/gtkobject.h (enum): new flag GTK_CONNECTED to indicate whether
	a GtkObject has signal handler connections.

	* gtk/gtkobject.c (gtk_object_real_destroy): only if GTK_CONNECTED is
	set for this object call gtk_signal_handlers_destroy().
	
	* gtk/gtktypeutils.h (GTK_TYPE_IS_A): deprecated macro, since it caused
	multiple processing of macro args.

	* gtk/gtktypeutils.c:
	* gtk/gtkobject.c:
	* gtk/gtkwidget.c:
	* gtk/gtksignal.c: reverted GTK_TYPE_IS_A back to gtk_type_is_a.

Tim Janik's avatar
Tim Janik committed
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
Fri May  8 21:31:50 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwidget.c (gtk_widget_queue_draw): Free the
	draw-queue when we are done. 

	(gtk_widget_queue_draw/_queu_resize): Always return
	FALSE and avoid having two idles at the same time.
	
Fri May  8 21:04:00 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c: Various fixes to make sure cache
	lines are freed if line_start_cache doesn't point to the
	beginning of the cache.

Thu May  7 09:44:22 1998  Owen Taylor  <otaylor@gtk.org>

	* style_set improvements for GtkText and GtkEntry

132
133
134
135
136
Thu May  7 19:03:50 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtktypeutils.c (gtk_type_unique): asure that the type system has
	been initialized.

137
138
139
140
141
142
143
144
Thu May  7 12:52:45 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkobject.c (gtk_object_set_data_by_id_full): allocate object
	data chunks through a global object data structure list. unlink
	object data before invoking its destroy function.
	(gtk_object_finalize): slight modification to allow usage of object
	data during object finalization.

Tim Janik's avatar
Tim Janik committed
145
146
147
148
149
150
151
152
153
Thu May  7 10:29:24 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtksignal.c (gtk_signal_newv): suport middle dashes ('-') in
	signal names, e.g. "signal-name" is now an alias for "signal_name".
	(gtk_signal_handler_new): allocate handlers through a global handler
	structure list, that's faster than memchunks.
	(gtk_emission_new): allocate emissions through a global emission
	structure list, that's faster than memchunks.

154
155
156
157
158
159
160
161
162
163
164
165
166
Thu May  7 05:14:19 1998  Tim Janik  <timj@gtk.org>

	* gtk-config.in (--libs): postfix -lg* libraries with LT_RELEASE.

	* ltmain.sh: added a new commandline flag -postfix similar to -release,
 	but will immediately change the library name.

	* gdk/Makefile.am:
	* gtk/Makefile.am: specify -postfix and -version-info

	* configure.in: version bump to 1.1.0. added GTK_INTERFACE_AGE and
	GTK_BINARY_AGE. calculate LT_* variables for libtool.

167
168
169
170
171
1998-05-06  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkclist.c (draw_row): Fixed incorrect painting of row
	background (fg_set -> bg_set confusion).

172
173
174
175
176
1998-05-06  Stefan Jeske  <stefan@gtk.org>

	* gtk/testgtk.c (unselect_all): Removed code that caused an
	endless loop.

177
178
179
180
181
182
183
184
185
186
187
Wed May  6 02:16:34 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtksignal.c: reimplemented the signal storage system to use a
	linear array rather than a hash table.
 	be carefull *not* to keep any GtkSignal pointers across invokations
 	of gtk_signal_next_and_invalidate() and therefore gtk_signal_new[v]().
	general code cleanups, made all allocations through memchunks.
	(gtk_signal_lookup): we now do the lookup of signals through a key_id
	for the signal names to avoid multiple hashing of the signal name on
	lookups for the several hirarchy levels of an object.

Tim Janik's avatar
Tim Janik committed
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
Tue May  5 19:49:27 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkpixmap.c: Patches from Gordon Matzigkeit
	to speed things up and remove code duplication.

	Reintegrated buffer overflow patches, and added
	some extra paranoia.
	
Tue May  5 17:04:14 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdk.c (gdk_event_translate): A guint * was
	being passed where X expected a Keysym *, and
	keysyms are long's on Alpha Linux. This was causing
	segfaults in Xlib, apparently because of alignment.
	(Bug located by Juergen Haas <haas@forwiss.uni-passau.de>)
	
Tue May  5 19:11:27 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkdrawingarea.c (gtk_drawing_area_realize): Always
	set GDK_EXPOSURE_MASK for DrawingAreas

Tue May  5 14:32:37 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwidget.[ch]: removed gtk_widge_propagate_default_style
	(superceded by RC file reparsing capabilities)

	* gtk/gtkwindow.c: Add handling for _GDK_READ_RFCILES client
	events. (Shouldn't be sent to the InputOnly leader, which
	it is now by gdk_event_send_clientmessage_toall

	* gtk/testgtk.c: Added extra button to rcfiles test
	to send out _GDK_READ_RCFILES events.
	
Tue May  5 11:03:00 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkselection.c (gtk_selection_clear): Fixed
	reversed conditionals that caused segfault on some
	platforms.

Tue May  5 00:44:47 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkcontainer.c (gtk_container_set_focus_[hv]adjustment):
	cast to GTK_OBJECT for gtk_object_ref.

232
233
234
235
236
237
238
239
Tue May  5 15:33:27 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkmain.c (gtk_init): added gtk_signal_init() to avoid repeatedly
	checking for signal initialization in gtksignal.c.

	* gtk/gtktypeutils.c (TYPE_NODES_BLOCK_SIZE): reseted this to 200 after
	a long debugging period ;)

240
241
242
243
244
1998-05-05  Stefan Jeske  <stefan@gtk.org>

	* gdk/gdkgc.c gdk/gdk.h gtk/gtkctree.c (gdk_gc_set_dashes):
	New function to wrap XSetDashes; modified gtkctree.c to use it.

245
246
247
248
249
1998-05-04  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* configure.in: Added $x_libs in the other_libraries field in the
	check for XShapeCombineMask.

250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
Mon May  4 00:30:11 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtktypeutils.h (GTK_TYPE_IS_A): new macro to speedup
 	gtk_type_is_a().
 	* gtk/gtktypeutils.c: reimplemented the type storage system to use a
	linear array rather than a hash table. it actually speeded up testgtk
	for a *considerable* amount. be carefull *not* to keep any GtkTypeNode
 	pointers across invokations of gtk_type_node_next_and_invalidate() and
 	therefore gtk_type_unique()!

	* gtk/gtkobject.h (GTK_IS_OBJECT_CLASS): new macro to test for the
	inheritance of a class pointer.
	(GTK_OBJECT): modifications for speedups.
	(GTK_IS_OBJECT): likewise.
	(GTK_OBJECT_CLASS): likewise.
	(suggested by owen).

	* gtk/gtkcontainer.h (GTK_IS_CONTAINER_CLASS): new macro.

	* gtk/gtkwidget.h (GTK_IS_WIDGET_CLASS): new macro.

	* gtk/gtk.defs (GtkTooltips): define GtkTooltips as object not as boxed,
	since its derivation changed 4 month ago ;(. showed up with the unique
	type name checking code in gtk_type_unique().

	* random guint->GtkType and macro fixups.

277
278
279
280
281
282
Sat May  2 23:14:34 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkcurve.c (gtk_curve_graph_events): Ignore
	Configure events that would result in a negative
	size.

Owen Taylor's avatar
Owen Taylor committed
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
Sun May  3 14:55:34 1998  Owen Taylor  <otaylor@gtk.org>

	* docs/gtkfaq.sgml (CPPFLAGS): Added a FAQ entry about
	"glibconfig.h" and another about writing another IRC
	client.

Sat May  2 00:14:05 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkpreview.c (gtk_trim_cmap): Make sure the
	parameters to log are doubles. Digital Unix apparently
	is missing the argument in its prototype.

Sun May  3 19:04:46 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtklabel.c (gtk_label_state_changed): Don't
	force a clear until the widget is actually on
	screen.

Sun May  3 21:32:35 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdk.c (gdk_event_translate): Grab with OwnerEvents = False
	to make this consistent with the gtk-1-0 tree.

306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
Sun May  3 13:38:22 1998  Owen Taylor  <otaylor@gtk.org>

	* configure.in acheader.h gdk/gdkwindow.c 
	Check for Shape extension both on the client and server
	side. (And, more importantly, check for the shape extension
	so we may include -lXext even when compiling with --disable-xshm)

	Don't set override_redirect on all shaped windows. It isn't
	necessary.

	* gdk/gdkwindow.c: Set ->colormap to NULL for root 
	and foreign windows. Use this to check if we
	need to get the colormap from X.

Fri May  1 22:32:47 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkbutton.c (gtk_button_paint): Draw the areas
	between the default and the button always in GTK_STATE_NORMAL.

	* gtk/gtkrange.c (gtk_range_style_set): Added a style_set
	callback.

Fri May  1 16:40:57 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkpixmap.c (gdk_pixmap_colormap_create_from_xpmp[_d]):
	  Fix a buffer overflow on pixmaps that claim to have
	  more than 31 characters per pixel.

	  (gdk_pixmap_read_string): Don't wrap around strings longer
 	  than half of address space ;-)

	* gtk/gtk[vh]ruler.c gtk/gtkinputdialog.c: Expand some buffers
	that were used for printing integers.

	* */* (almost):

	Style: All 
	  int foo () { ... }
	changed to
	  int foo (void) { ... }

	Even where there were proper prototypes elsewhere.

	* gdk/gxid.c (handle_claim_device): Some extra checks.
	It isn't safe against being fed bad X id's, but at
	least it should be safe against deleting all your
	files.

354
355
356
Sun May  3 19:45:09 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkadjustment.c (gtk_adjustment_assimilate_value): new function
Owen Taylor's avatar
Owen Taylor committed
357
	to set the adjustments value when there is no current emission.
358
	[ Removed by mutual agreement owt 5/3/1998 ]
359
360
361
362
363
364

	* gtk/gtksignal.c: added new functions to retrive the number of
	existing emissions for a certain signal.
 	(gtk_signal_n_emissions): new function.
	(gtk_signal_n_emissions_by_name): new function.

365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
Sun May  3 16:55:43 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkcontainer.c (gtk_container_set_focus_child): new function to
	set the current focus_child of a container, does proper referencing and
	adjusts the vadjustment/hadjustment associated with the focus widget.

	* gtk/gtkwidget.c (gtk_widget_grab_focus): set the focused child on
	containers via gtk_container_set_focus_child.

	* gtk/gtknotebook.c: modifications to use gtk_container_set_focus_child
 	where appropriate.

	* gtk/gtkcontainer.c (gtk_container_remove): removed unsetting of focus
 	child since not every child removal goes through this function (this
	showed up after gtk_container_set_focus_child() started to reference the
 	focus_child of a container).

	* gtk/gtkwidget.c (gtk_widget_unparent): moved unsetting the focus_child
	of a container from gtk_container_remove into this place.

385
386
387
388
389
390
391
392
Sat May  2 22:33:45 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtksignal.c: added new functions to operate on intermediate
 	function pointers. implemented incremental blocking.
	(gtk_signal_disconnect_by_func): new function.
	(gtk_signal_handler_block_by_func): new function.
	(gtk_signal_handler_unblock_by_func): new function

Owen Taylor's avatar
Owen Taylor committed
393
394
395
396
397
398
Fri May  1 22:45:55 1998  Owen Taylor  <otaylor@gtk.org>

        * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
        Always show the scrollbars when the policy is
        GTK_POLICY_ALWAYS...

399
400
401
402
403
404
405
406
Sat May  2 20:19:03 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkadjustment.c (gtk_adjustment_set_value): only emit
 	"value_changed" if we really passed a new value.
	(gtk_adjustment_changed): new function to emit the "changed" signal.
	(gtk_adjustment_set_value): new function to emit the "value_changed"
	signal.

407
408
409
410
411
412
Fri May  1 12:28:35 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkcombo.c: Further changes to the way the window
	is popped up so that it will be compatible with 
	auto-scrolling in the future.

413
414
415
416
417
418
419
420
421
422
Fri May  1 20:25:29 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkcombo.c (gtk_combo_popup_list): do not just return if
	the combo-list is empty since that will cause the combo to operate
	on a non existing GtkList window.
	(gtk_combo_get_pos): provide the combo list with a usfull default
 	height if empty.
	(gtk_combo_popup_button_press): grab the focus.
	(gtk_combo_activate): grab the focus.

423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
Fri May  1 12:06:43 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkwindow.[ch] (gtk_widget_reset_rc_styles): New
	function to reset the RC styles for a heirarchy

        Clear the window background if necessary in
	gtk_window_style_set.

	* gtk/gtkrc.[ch]: New function gtk_rc_reparse_all() which
	rereads all previously read RC files.

	* gdk/gdkwindow.c gdk/gdk.h: New function gdk_window_get_toplevels().
	(Should it just be called gdk_get_toplevels?)

	* gtk/testgtk.c: New test to reload RC files.

439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
Fri May  1 13:57:36 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkclist.h:
	* gtk/gtkclist.c: prefixed all clist flags with GTK_ to avoid name
 	clashes. redefined GTK_CLIST_SET_FLAGS and GTK_CLIST_UNSET_FLAGS as
	GTK_CLIST_SET_FLAG and GTK_CLIST_UNSET_FLAG to automatically add
	the GTK_ prefix (this solution involved less changes in the
 	gtkclist.c code). added a GTK_CLIST_CONSTRUCTED flag to substitute
	the mem_chunk==NULL test in gtk_clist_construct. merged in changes
	from lars & stefan to support the derivation of GtkCtree.

	* gtkctree.h:
	* gtkctree.c:
	initial import of a tree widget derived from gtkclist, courtesy
	of Lars Hamann <lars@gtk.org> and Stefan Jeske <jeske@gtk.org>,
	it just damn rocks!

Fri May  1 10:05:44 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtklist.c (gtk_list_add): let gtk_list_append_items do the work
	for us.
	(gtk_list_insert_items):
	(gtk_list_remove_items_internal): 
	(gtk_list_clear_items): 
 	remove a possible pointer grab, we might get thrown into a loop
	otherwise.
	(gtk_list_button_press): grab the pointer *before* selecting the child,
	because selection of items may cause the lists children to change,
 	resulting in a grab release.
	(gtk_list_clear_items): use gtk_list_unselect_child() for unselection of
	children.
	(gtk_list_shutdown): remove all children from the list.
	(gtk_real_list_unselect_child): 
	(gtk_real_list_select_child): *always* put our internal structures into
 	sane state *before* signal emisions (i.e. list->selection updates prior
 	to gtk_list_item_[de]select() calls).

	* gtk/gtkcombo.c (gtk_combo_init): adjust the scrollbar if the lists
	focused child walks out of the window.
	removed CAN_FOCUS for the combo arrow's button since it doesn't react
	to keyboard events ("clicked" connection is missing).

Owen Taylor's avatar
Owen Taylor committed
481
482
483
484
485
486
Fri May  1 00:42:25 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkwindow.c (gdk_window_get_colormap): Fix up
	getting colormap for FOREIGN windows to go along with
	Raster's fix for visuals.

487
Merges from gtk-1-0
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
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
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
===================
	
Thu Apr 30 23:32:51 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_allocate):
	Check to catch the case when the viewport fits in either
 	direction or both, instead of flip-flopping infinitely.

	Only show/hide the scrollbars once at the end.

Thu Apr 30 21:56:07 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): 
	Include the scrollbars in the foreach call.
	(gtk-fortier-980405-0.patch; 
 	 Patrice Fortier <Patrice.Fortier@aquarel.fr>). 

	The notebook widget
	really should also include its tabs, but that might cause
	problems for programs if they

Thu Apr 30 21:51:52 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkpixmap.c (gtk_pixmap_set): Only request a
	resize if the size actually changed. 
	(gtk-johannes-980414-0.patch ;	
	 johannes@nada.kth.se (Johannes Keukelaar) )

Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>

	* glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
	  ltmain.sh ltconfig config.sub config.guess:

	Reverted back to libtool-1.2 (plus minor patches) so as not to
	force the issue for everyone else.

Thu Apr 30 10:22:59 1998  Owen Taylor  <otaylor@gtk.org>

	* glib/ltmain.sh glib/ltconfig glib/config.sub glib/config.guess:
	Updated to libtool 1.2a.

	* gtk/gtkclist.c: Draw the in-between lines with style->base
	instead of style->white.
	
Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/gdkprivate.h gdk/gdkwindow.c gdk/gdkpixmap.c: 
	Cache the colormap and children of a window locally
	instead of fetching them from the server when needed.
	Huge performance difference for creating/destroying
	windows.

	* gtk/gtkstyle.c: Find the depth from the cached
	visual, instead of asking the server.

	* gtk.m4: Distribute the new version which tries to
	figure out what went wrong and give helpful error
	messages.

	* ltmain.sh ltconfig config.sub config.sh: 
	Updated to libtool 1.2a

	* gtk/gtktext.c: Fixed a bug where the drawn level
	was being messed up when the text was scrolled
	during a deletion.
	
Thu Apr 30 02:42:11 PDT 1998 Manish Singh <yosh@gimp.org>

	* gtk/gtkfilesel.c: don't die when naughty people remove parts of
	the filesystem under you (fix from Josh)

Thu Apr 30 09:49:14 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_foreach): check
	if the viewport already exists before iterating over it, maybe we
	haven't been constructed yet.

Thu Apr 30 01:51:00 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkbin.c (gtk_bin_add): made this function issue a warning if
	the GtkBin widget already has a child.

	* gtk/gtkbox.c (gtk_box_pack_{start|end}):
 	check that child->parent == NULL;

Tue Apr 28 22:13:54 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkselection.c (gtk_selection_clear): Only return
	FALSE when the clear event is been rejected, not when
	widget has already lost the selection. (Which should
	only happen when we are setting the selection to another
	widget ourself.)
	
Fri Apr 24 19:07:32 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkfixed.c gtk/gtkpaned.c gtk/gtktable.c:

	Removed the "check visibility after gtk_widget_unparent" bug 
	in hopefully the last three places.

Tue Apr 28 15:46:41 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkrc.c (gtk_rc_parse_statement): allow the inclusion of other
	rc-files.

Mon Apr 27 15:11:52 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkwidget.c (gtk_widget_grab_focus): only allow grabbing of focus
	for CAN_FOCUS widgets.

	* gtk/testgtk.c (create_scrolled_windows): feature h/v focus
	adjustments for the table.
	(create_list): feature automatic adjustment of the scrolled window to
	always contain the focused child.
	(create_main_window): keep the focussed button always inside of the
	scrolled windoww.

	* gtk/gtkcontainer.c (gtk_real_container_focus): set the h/v focus
	adjustments, to contain the allocation of the currently focused child.
	(gtk_container_set_focus_hadjustment): new functin to set the
 	horizontal focus adjustment.
	(gtk_container_set_focus_vadjustment): new functin to set the vertical
 	focus adjustment.

	* gtk/gtkadjustment.c (gtk_adjustment_clamp_page): new fucntion to
 	clamp the currents adjustment page into a specific range.

	* random GtkType fixups for gtk_*_get_type() functions.

Fri Apr 24 18:37:16 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktreeitem.c (gtk_tree_item_remove_subtree): 
	Account for the fact that gtk_tree_item_remove_subtree
	will be called recursively. 

	Handle removing a collapsed subtree.

	(From Andy Dustman <adustman@comstar.net>)
	
	* gtk/gtktree.c (gtk_tree_remove_items): Look for the
	root tree when removing items from a non-previously
	mapped tree.

	* gtk/testgtk.c: Added a remove_subtree button.
	
Thu Apr 23 23:44:17 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkobject.c (gtk_object_finalize): Notify all weak references
	before object removing data. This change fixes a bug where 
	removing the last weak references would cause it to be 
	triggered.

Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>

	* gdk/Makefile.am: Removed mostly useless dependency that
	was causing problems for SGI's make, when used with
	the 'make dist' form of GTK+. (Dependency caused dependencies
        to be redone when BUILT_SOURCES changed)

647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
Thu Apr 30 11:18:00 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtkcombo.[ch]: Allow the user to use the popup list
	like a menu.
	
	* gtk/gtkmenuitem.c gtk/gtkitem.c: Moved enter/leave handlers
	to gtkitem.c so dragging can also work in lists.

	* gtk/gtklist.[ch]: Track child enter events and use
	those to allow dragging the selection. 

Thu Apr 30 11:16:06 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c: Try enabling background pixmaps for editable text
	widgets.  There is a bit of flashing, but not too bad. If you
	don't want the flashing, you can always not set a background
	pixmap.

Wed Apr 29 15:46:13 1998  Owen Taylor  <otaylor@gtk.org>

	* gtk/gtktext.c: Fixed a bug where the drawn level
	was being messed up when the text was scrolled
	during a deletion.
	
671
672
673
674
675
676
1998-04-28  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdk/gdk.c (gdk_event_translate): Random debugging fixed this
	bug:  There is no need to set the ExposureMask in the XGrabPointer
	(this caused DnD programs to crash).

677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
Fri Apr 24 01:29:04 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkaccelerator.h (struct _GtkAcceleratorTable): changed ref_count
	field to be of type guint.
	* gtk/gtkaccelerator.c (gtk_accelerator_table_unref): added check for
	ref_count>0;
	(gtk_accelerator_table_install): keep a per object list of accelerator
	tables that refer to this object.
	(gtk_accelerator_table_remove): remove the accelerator table from the
	per object list.
	(gtk_accelerator_table_clean): warn if there are any object references
 	left in an accelerator table upon destruction.
	(gtk_accelerator_tables_delete): new function to delete object
	references from the accelerator tables associated with this object.

	* gtk/gtkwidget.c (gtk_widget_class_init): changed emission of
	GtkWidget::install_accelerator to GTK_RUN_LAST so the installation
	of an accelerator can be prevented by gtk_signal_emit_stop().
	(gtk_widget_real_destroy): call gtk_accelerator_tables_delete (),
	so there are no stale pointers in accelerator tables left.

698
699
700
701
702
1998-04-22  Federico Mena Quintero  <federico@nuclecu.unam.mx>

	* gtk/gtkbin.c (gtk_bin_remove): Remember whether the widget was
	visible before we unparent it.

703
704
705
706
707
708
709
710
711
712
713
Wed Apr 22 04:15:26 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkmain.c (gtk_handle_current_timeouts): prepend the
 	running_timeouts list with the tmp_list link itself, not with a new
	GList structure pointing to our link. that would fill up memory and
	causes the GList.data fields of the running_timeouts list to point to
	GList structures and not GtkTimeoutFunction structures which is a
 	*really* bad thing.
	(gtk_handle_current_idles): likewise (exchange "timout" with "idle" in
	the above entry ;).

714
715
716
717
718
719
720
721
722
723
724
725
726
Sat Apr 18 22:18:12 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtkradiomenuitem.h: 
	* gtk/gtkradiomenuitem.c (gtk_radio_menu_item_set_group): new function
	ala gtk_radio_button_set_group.
	(gtk_radio_menu_item_init): assure that we always have at least a group
	that points to self.

	* gtk/gtkradiobutton.c (gtk_radio_button_set_group): few cleanups and
 	added g_return_if_fail() statements.
	(gtk_radio_button_init): assure that we always have at least a group
	that points to self.

727
728
729
730
Fri Apr 17 03:05:05 1998  Tim Janik  <timj@gtk.org>

	* ChangeLog split up into ChangeLog.pre-1-0 and ChangeLog.

731
732
733
734
735
736
Wed Apr 15 05:13:09 1998  Tim Janik  <timj@gtk.org>

	* gtk/gtklabel.c (gtk_label_size_request): corrected a brace position
	(Damon Chaplin), which i got wrong when applying Damon's patch the last
 	time.

Owen Taylor's avatar
Owen Taylor committed
737
738
739
740
741
742
743
744
Wed Apr 15 20:42:46 1998  Owen Taylor  <otaylor@gtk.org>

        * gtk/gtkpreview.c (gtk_preview_get_visuals): Make sure
        that when we are running with a non-installed colormap,
        in 8-bit pseudo-color, we actually are using the system
        visual. (Fixes *Bad Match* errors on Digital Unix machines
        with multiple 8-bit pseudo-color visuals)

745
746
747
748
749
750
751
752
1998-04-14  Miguel de Icaza  <miguel@nuclecu.unam.mx>

	* gdk/gdkwindow.c (gdk_window_xid_at): Fix the problem introduced
	by whoever thought that randomly changing ints to unsigned int
	without reviewing the code was a good idea.  It is, btw not
	mentioned in the ChangeLog as usual, but I know it was not Elliot
	the culprit this time. 

753
754
755
Mon Apr 13 19:16:22 PDT 1998 Shawn T. Amundson <amundson@gtk.org>

	* Released GTK+ 1.0.0