ChangeLog.pre-2-10 154 KB
Newer Older
1
2
3
4
5
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
55
56
57
58
59
60
61
2000-05-02  Tor Lillqvist  <tml@iki.fi>

	Large changes to the Win32 backend, partially made necessary by
	the changes to the backend-independent internal
	structures. Attempts to implement similar backing store stuff as
	on X11. The current (CVS) version of the Win32 backend is *not* as
	stable as it was before the no-flicker branch was merged. A
	zipfile with that version is available from
	http://www.gimp.org/win32/. That should be use by "production"
	code until this CVS version is usable. (But note, the Win32
	backend has never been claimed to be "production quality".)

	* README.win32: Add the above comment about versions.

	* gdk/gdkwindow.c: Don't use backing store for now on Win32.

	* gdk/gdk.def: Update.

	* gdk/gdkfont.h: Declare temporary Win32-only functions. Will
	presumably be replaced by some more better mechanism as 1.4 gets
	closer to release shape.

	* gdk/makefile.{cygwin,msc}: Update.

	* gdk/win32/*.c: Correct inclusions of the backend-specific and
	internal headers. Change code according to changes in these. Use
	gdk_drawable_*, not gdk_window_* where necessary.

	* gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
	our old DND.

	* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
	to interpret single characters as UTF-8. Thanks to Hans Breuer.
	Use correct function name in warning messages.

	* gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
	GSourceFuncs gdk_event_prepare and gdk_event_check.
	(gdk_event_get_graphics_expose): Do implement, use
	PeekMessage. Thanks to Hans Breuer.
	(event_mask_string): Debugging function to print an GdkEventMask.
	(gdk_pointer_grab): Use it.

	* gdk/win32/gdkfont-win32.c: The Unicode subrange that the
	(old) book I used claimed was Hangul actually is CJK Unified
	Ideographs Extension A. Also, Hangul Syllables were missing.
	Improve logging.

	* gdk/win32/gdkgc-win32.c: Largish changes.

	* gdk/win32/gdkim-win32.c (gdk_set_locale): Use
	g_win32_getlocale() from GLib, and not setlocale() to get current
	locale name.

	* gdk/win32/gdkprivate-win32.h
	* gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
	gdkwin32.h, similarily as in the X11 backend.

	* gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
	assignment was used instead of equals in if test. Thanks to Hans
	Breuer.

62
63
64
	* gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
	the X11 version.

65
66
67
68
69
70
	* gdk/win32/makefile.{cygwin,msc}
	* gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
	path to the Win32 headers that works also with the mingw compiler.

	* gtk/gtkstyle.c: Include <string.h>.

71
72
73
74
75
2000-04-26  Havoc Pennington  <hp@redhat.com>

	* gtk/gtklabel.c (gtk_label_get_text): Add this function,
	replacing the broken gtk_label_get ()

76
77
78
79
80
81
82
83
2000-04-15  Havoc Pennington  <hp@pobox.com>

	* gdk/gdkdnd.h: clean up enum format, remove extra comma, 
	this keeps scanner scripts from getting confused.

	* gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
	data, rather than void

84
85
86
87
88
89
90
91
92
2000-04-15  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtkclist.c (gtk_clist_motion)
	* gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
	with is_hint FALSE, get x and y from the event. They used to be
	used uninitialised. The Win32 backend never sends motion events
	marked as hints. This for instance fixes the annoying file and
	font selector behaviour in the Win32 version.

93
94
95
96
97
98
99
100
101
102
2000-04-14  Tor Lillqvist  <tml@iki.fi>

	* gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
	gtk_private_n_signals variables, they are used by some software,
	sigh.

	* gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
	installation directory from the Registry, where the installer
	should have put it.

103
104
105
106
107
108
109
110
111
112
113
Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/Makefile.am: Fix problem with installation directory for
	gdkx.h

	* gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
	<mrcooger@cyberverse.com> so that when selecting menus with the
	mouse, the first item will not be selected, but when selecting
	with an accelerator, or navigating left-right on a menubar with
	the menus popped up, the first item will be selected.

Dan Damian's avatar
Dan Damian committed
114
115
116
117
2000-04-05  Dan Damian  <dand@dnttm.ro>

	* configure.in: Added "ro" to ALL_LINGUAS.

Owen Taylor's avatar
Owen Taylor committed
118
119
120
121
122
123
124
125
126
127
128
129
Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
	indentation.

	* Makefile.am (EXTRA_DIST): Fix typo.

	* gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
	to catch gdkconfig.h

	* gtk/gtkitemfactory.c: Added FIXME.

130
131
132
133
134
2000-03-30  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_get_position): oops.
	s/return_if_fail/return_val_if_fail/g and add a return value.

Owen Taylor's avatar
Owen Taylor committed
135
136
137
138
139
140
141
Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
	merge slipup.

	* gdk/gdkinput.h: Fix missing line from merge.

142
143
144
Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
Owen Taylor's avatar
Owen Taylor committed
145
	instead of gdkprivate.h.
146

Owen Taylor's avatar
Owen Taylor committed
147
148
149
150
151
Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
	parent class to correctly be GtkDialogClass.

152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
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
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
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
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
	toplevel windows and their immediate children by their parents,
	since the size of toplevel windows is out of our immediate
	control and we don't get any real benefit from trying to track
	this size for clipping.

	* gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
	for input_only windows.

	* gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
	to fix some hacks and make sure that we don't try to set the
	background of input only windows.

Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
	the _really_ internal stuff, and leave gdkprivate.h for the fake private
	stuff that we've traditionally exposed.

	* gdk/**.c: Use gdkinternals.h where appropriate.

	* gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
	not include gdkprivate-x11.h, move all stuff of conceivable public
	interest into gdkx.h; keep all really private stuff in
	uninstalled header gdkprivate-x11.h.

	* gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
	image->image_put on windows through a new function _gdk_window_draw_image()
	to allow us to do backing store for images. (Sort of ugly)

	* gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
	contexts locally so that we can offset them properly when drawing 
	onto backing pixmaps.

	* gdk/gdkinput.h: Reindented

	* gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
	pixmap or color for the window, so we can properly initialize
	our double-buffer pixmaps, and also so that we temporarily set
	a background of None while scrolling.

	* gdk/gdkregion.h: Revise region boolean operators to have an
	interface that is actually convenient - switch from creating new
	regions	on every op, to "methods" that modify existing regions
	(A = A OP B). 3 argument forms which allow dest == src, would also
	be possible, but the current interfaces seem to map nicely
	onto what needs to be done. (There is quite a lot of region
	code in GDK now.)

	* gdk/gdkregion.h: Add constructor from rectangle and a copy
	operator.

	* gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
	gdkpoly-generic.h: Copy region code from Xlib, switch it over
	to 32 bit coordinates, modify it to be mostly GTK+ style
	and to have interfaces that match gdkregion.h.

	* gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
	double-buffered	drawing. gdk_window_begin_paint_{rect,region}()
	create a backing pixmap and redirect all drawing to
	that backing pixmap until a matching gdk_window_end_paint().

	* gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
	Create a special drawable class for GtkWindow's that 
	redirects the drawing to the backing pixmap as necessary
	and then calls the real operations in _gdk_windowing_window_class.

	* gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
	Store invalid region for each window. Generate expose events for invalid
	region in an idle. This replaces both the expose compression
	and the redrawing queuing in GTK+. It is both more efficient and
	simpler than either one individually and far more so then the
	combination.

	* gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
	Emulate 32 bit coordinates for windows with 16 bit coordinates
	by offsetting drawing, guffaw scrolling techniques and
	mapping/unmapping child windows as necessary.

	* gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
	where, when invalid regions are processed, the region is stored,
	and if expose events come in that are detectably duplicate
	the processed exposes (by comparison of event serial numbers),
	the stored region is subtracted out of those exposes.

	* gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
	regions newly exposed when scrolling or resizing windows.
	This, combined with forcing processesing of queued invalidated
	regions, gives nice flicker-free scrolling.

	* gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
	invalidated regions after every scroll.

	* gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
	emulation in GDK. Its, for all practical purposes just a
	GtkViewport/GtkFixed hybrid now.

	* gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
	(16-bit) structures as necessary instead of just casting.

	* gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
	in terms of the structures from gdkregion-generic.c, using appropriate
	offsets from GDK to X11 coordinates. Cache clip mask and
	origin and ts origin locally and only flush to the server
	when drawing, to avoid constantly setting and resetting these
	values when offsetting GC's for scrolling and backing pixmaps.

	* gdk/x11/gdkinput-x11.c: Fix leak of axes structures.

	* gtk/gtkcontainer.c: Call process_all_updates at end
	of resizing to reduce flicker. (Avoids having redraw
	lag arbitrarily behind resize under some circumstances)

	* gtk/gtkentry.c: Remove old backing store code, and simply take
	advantage of the new backing store capabilities of GDK.

	* gtk/gtkmain.c: Simple implementation of widget backing
	store - simply push a paint while handling each expose.
	(Should really be configurable widget for widget.)
	
	* gtk/gtkwidget.c: Remove all the old complicated redraw
	code, and simply invalidate the GDK windows from
	gdk_window_queue_clear(), etc. (Sigh, so much carefully
	debugged complexity ... gone to the winds.)

	Remove all the code for suppressing expose events while
	resizes are pending; this isn't needed since the invalid
	areas won't be processed until after the resizes are
	processed, since they are in a lower priority idle.

Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
	and height of dest rectangle for non-intersecting rectangles.

Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.h: Make GtkAllocation just a typedef
	for GdkRectangle.

Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk{events,image,private,types,window}.h
	 gdk/x11/gdkinputprivate.h: Change all coordinates
	 from int16 to int. Also, Change width and height from
	 unsigned to signed to avoid all the stupid C 
	 signedness bugs.

Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
	Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
	Add some more detailed checking.

	* gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
	New function to retrieve the depth of a drawable.

	* gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
	field, reorder fields to save memory. 

Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
	of the background image instead of scaling the background down to
	a line.

	* gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
	which temporarily set slider to wrong size.

	* gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
	queue_clear().

Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>

Jonathan Blandford's avatar
Jonathan Blandford committed
328
329
330
331
2000-03-23  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_get_position): add getter.

332
333
334
335
336
337
338
339
340
341
342
2000-03-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c: Remove the #ifndef
	USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.

	* gdk/win32/gdkfont-win32.c
	* gdk/win32/gdkproperty-win32.c
	* gdk/win32/gdkselection-win32.c
	* gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
	now declared such.

343
344
345
346
Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>

	* gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic

Owen Taylor's avatar
Owen Taylor committed
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
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
430
431
432
433
434
435
436
437
438
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
481
482
483
484
485
486
487
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
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
	is called without trapping X errors.

Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkrc.*: Fix problem where stray '"' characters found their
	way into the fontset lists.

Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkthemes.h: add extern "C" scope.

Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>

	* gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
	to make appends to the list constant. (gtk-guy-990901-0.patch)

Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
	for the typename hash table.

Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
	to make sure we never divide by zero. 
	(Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)

Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfontsel.c: Apply patch from
	SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
	better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)

	Also, some cleanups in atom handling.

Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
	not GtkWidget.

Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
	* gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
	* gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
	more guint wrap-around bugs before going to bed.

Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
	guint wrap arounds in allocation.width.

	* gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
	process untill we fit the allocation given.

Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkwidget.c:
	(gtk_widget_unrealize): guard widget access with ref/unref
	around signal emission.
	(gtk_widget_hide): same here, but also check its destroyed
	state before queueing a resize.

Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
	of gtk_default_insensitive_bg as insensitive base color.

	* gtk/gtktext.c (gtk_text_style_set): set the background color according
	to the widget's state.
	(gtk_text_realize): same here.
	(gtk_text_state_changed): same here.
	(draw_bg_rect): compare background color against base[] from
	GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.

Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
	grabs are active, unless a delete event is send to the toplevel
	of the currently grab holding widget.

Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
	debugging g_print's.

Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
	ever make the scrolled-window requisition ever depend on the 
	visibility state of the scrollbars for the AUTOMATIC policy. 
	This breaks the	GTK+ requisition model, and causes loops.

Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
	the default font to avoid problems with XFree86-4.0 where the
	default charset is iso10646-1, not iso8859-1.

Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>

	* acinclude.m4
	* config.guess
	* config.sub
	* ltconfig
	* ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)

	* gtk/Makefile.am: minor cosmetic consistency tweak

Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
	the activate_time to 0, so that we handle a quick
	press/release press/release properly and don't suppress
	the second release. (Red Hat bug #7545)

Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkctree.c (row_delete):
	(gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
	bugs with destruction notifier, *always* update internal
	structures *before* calling user code.

Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>

	A few more fixes for bug #5487, #2051, #2677.
	* gtk/gtkclist.c : 
	(gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
 	not GDK_BUTTON_PRESS.
	(resync_selection): resync only if selection_mode is
	GTK_SELECTION_EXTENDED
	* gtk/gtkctree.c (resync_selection): same here

Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
	gdk_drag_get_selection() and gtk_menu_detach().

	[ From Jeroen Ruigrok/Asmodai ]

Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_size_request): 
	page->tab_label can be NULL.

2000-01-25  Havoc Pennington  <hp@pobox.com>
	
	* gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
	arg is boolean

	* gdk/gdkselection.c (gdk_selection_owner_set): return boolean

	* gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean

	* gdk/gdkproperty.c (gdk_property_get): return boolean

	* gdk/gdkinput.c (gdk_input_set_mode): return boolean

	* gdk/gdkim.c (gdk_im_ready): return boolean

	* gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg

	* gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
	glib clash, should fix glib)

	* gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
	(gdk_get_show_events): return gboolean, and canonicalize 
	to TRUE/FALSE

	* gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
	colormap is private
	(gdk_colors_alloc): gboolean whether to be contiguous
	(gdk_color_equal): return gboolean since we are a predicate
	and not a qsort() (this looks semi-wrong due to glib breakage,
	IMO glib should be fixed)
	
	* gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
	(gdk_get_use_xshm): return gboolean
	(gdk_pointer_is_grabbed): return gboolean

	* gdk/gdk.h: Change prototypes to match all the above changes,
	and re-run egtk-format-protos as required.

Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkctree.c (resync_selection): 
	* gtk/gtkclist.c (resync_selection):

	Return immediately if clist->drag_pos < 0. This is a workaround
	for the corrupt state that the clist gets into when a
	GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().

	Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
	
	* gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
	variable from recent commit.

Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.

Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>

	* gtk/Makefile.am: prefix all autogenerated source that get build in
	$(srcdir) with $(srcdir)/, so make doesn't assume they got generted
	in builddir. since we subsequently cd into srcdir for autogeneration,
	the paths have to be stripped from the target file names, thusly we
	use $(@F) as target names now.
	put a comment about configure.in's --disable-rebuilds option,
	which can be used for non-writable source directories, for development
	setups though, srcdir has to be *writable*.

hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
	  Finish the job of allowing event to be NULL.
	  (Fixes bug #4283, reported by Chris Blizzard)

	* gtk/gtkentry.c (entry_adjust_scroll): When calculating
	  things so that the cursor appears on screen, properly
	  take into account INNER_BORDER.
	  (Fixes bug #4754, reported by Antonio Campos)

Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtknotebook.c (gtk_notebook_map): Don't
	  show the tab_label unless it itself is visible.

	  gtk/gtknotebook.c (gtk_notebook_size_request):
	  Do a better job of making sure that the visibility
	  of the tab label corresponds to whether it should
	  be mapped or not.

Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkoptionmenu.c (gtk_option_menu_position):
	  Use the requisition, not the allocation, since the
	  allocation has not necessarily been computed yet.
	  (Pointed out by Eugene Osintsev)

Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkstyle.c (gtk_style_new): Dont' set
	  style/base[GTK_STATE_INSENSITIVE] both to
	  gtk_default_insensitive_bg!
	  (Bug #2187, reported by Jonathan Blandford)

	* gtk/gtkaccelgroup.c (gtk_accelerator_valid):
	  Add Alt_L, Alt_R to list of invalid accelerators.
	  (Bug #3736, reported by Vlad Harchev)

Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkfilesel.c (open_ref_dir): Fix several
	bugs which occured after an attempt to open 
	invalid home directory left cmpl_state->reference_dir == NULL.

	 - completion on files in home directory didn't work
	 - completion on an empty string caused  segfault

	 (Bug #3768, reported by Steve Ratcliffe)

	* gtk/gtkscale.c (gtk_scale_get_value_width): Fix
	cut and paste error that was causing scales to
	be incorrectly positioned.
	(Bug #2956,
	 patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)

2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>

	* acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
	when checking for dcgettext, if we've found we needed
	it for dgettext.
+
Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
	queue_clear on NO_WINDOW widgets during a reparent,
	since at that point the window and widget heirarchies
	are out of sync. This stops crashing in some cases
	(the scrolled window reparent test, for instance), and
	_probably_ won't cause drawing errors.

	* gtk/testgtk.c: Make the reparenting-a-scrolled-window
	test do what it was supposed to do and be robust against
	window closings, etc. (Bug #2443)

Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkentry.c: Fix return values on mouse events.
	(Bug #2686, Sky <seb_sky@yahoo.com>)

	* gtk/genmarshal.pl: Fix up handling of FOREIGN.
	(pointed out by George Lebl)

 	* gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
	(From Ettore Perazzoli  <ettore@helixcode.com>)
 
Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
	clicks between rows or outside calender area correctly.
	(Patch from Damon Chaplin)

	* gtk/gtkclist.c (gtk_clist_set_row_data_full): 
	* gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
	  Call destroy function when overwriting existing data. 
	  (Pointed out by Damon Chaplin)

Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
	  which was causing problems on various systems with Xmu.
	  This hasn't been needed for a very long time.
	  (Fixes #1185 3167)

Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdki18n.h: Include <ctype.h> when defining
	  gdk_isw* in terms of is* as a fallback.
	  (Bug #4106 - Dan Winship <danw@MIT.EDU>)

Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
	  realize the widget when it is size allocated!
	  (old, old bug)

	* gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
	  Removed unused call to gdk_window_get_size() that
	  showed up when the above was fixed.

Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c (gtk_widget_reparent): Correctly
	  fix up widget->window when the widget is a
	  NO_WINDOW container widget.

Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
	  to account for the fact that feof() does _not_ 
	  return TRUE on errors, and thus avoid infinite loops
	  when trying to use gdk_pixmap_create_from_xpm()
	  on unreadable values.

Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.

Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkgc.c (gdk_gc_set_dashes): Change from
	  gdk_gc_set_dashes to take gint8 instead of gchar to
	  make it clearer that it is _not_ a NULL terminated string.

	* gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
	  gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
	  gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
	  arguments.

Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>

	* gtk/gtkvscale.c (gtk_vscale_pos_background): 
	* gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
	background size relative to our allocation, guard against small
	allocations, we may have not yet been size allocated.

Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
	not just version == 3. We implement all 3 + most of 4 - 
	(we don't support matching text/plain;charset=iso-8859-1
	to a dest that expects text/plain). We'll still advertise
	3 to be safe, but any client implementing version >= 3
	must interoperate with 3.
	
Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
	background and gc members, add a warning in gtk_tooltips_set_color()
	indicating that this function is deprecated.

733
734
735
736
737
738
739
740
741
742
743
Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>

	* docs/gtkfaq.sgml: FAQ Update:
	  - Minor cleanups (Emmanuel, me)
	  - New questions:
		I need to add a new signal to a GTK+ widget. Any idea? (timj)
		How can I retrieve the text from a GtkMenuItem? (timj)
		How do I validate/limit/filter the input to a GtkEntry? (me)
		Memory does not seem to be released when I free the list
			nodes I've allocated (timj)

744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
2000-03-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
	(gdk_win32_gdi_failed) New function for reporting errors from GDI,
	for which it is no use to call GetLastError onWin9x.
	(gdk_other_api_failed) New function, for general error
	reporting without calling GetLastError.
	(gdk_win32_api_failed) OTOH, this function always calls
	GetLastError. (gdk_win32_last_error_string) Remove this function,
	GLib has the equivalent now.

	* gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
	call them with function name, file name and line number in the
	arguments.

	* gdk/win32/*.c: Use the new macros for reporting errors from GDI
	functions.
	
	* gtk/gtk.def: Add some missing entry points.

	* gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
	gtk_paned_set_gutter_size, which don't exist any longer, as void.
	
	Fixes by Hans Breuer:

	* gdk/makefile.msc: Update for debugging.

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
	implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
	PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
	in the dash_list.

	* gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
	the x11 backend.

	* gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.

	* gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.

783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
2000-03-04  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
	just pixel value of background colour.

	* gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
	containing code snippet previously duplicated in a couple of
	places.
	
	* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
	gdk_colormap_color.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
	GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
	events for autorepeated Shift, Control and Alt keys. Use
	gdk_colormap_color.

	* gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
	pointer is inside the window the cursor of which we are setting,
	call SetCursor immediately.

	* gdk/win32/makefile.cygwin
	* gtk/makefile.cygwin: If we don't have the build number stamp
	file, use zero.

	* gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
	gtk_paned_set_gutter_size as empty.

	* gtk/gtk.def: Remove gtk_paned_set_gutter_size.
	
813
814
815
816
817
818
819
820
821
Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>

	* gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
	  gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
	  docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
	  docs/gtk_tut.sgml docs/gtk.texi TODO:

	  Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>

822
823
824
825
826
827
Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>

        * gtk/gtkcalendar.c: Implement num_marked_dates,
          and don't emit mutiple day_selected signals on
          month_prev.

828
829
830
831
832
833
834
2000-02-25  Jonathan Blandford  <jrb@redhat.com>

	* docs/make-todo (lineno): let title and logo be configurable so
	that GNOME can use this script too.

	* TODO.xml: added logourl and a title

835
836
837
838
839
Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>

	* TODO.xml: Added some UI items, and an explanatory
	comment at the top of the file.

840
841
842
843
844
845
846
847
Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>

	* TODO.xml: some updates, added abunch of new entries.
	a note for those fiddeling with this file, when done
	with it, invoke:
	$ ./docs/make-todo TODO.xml >/dev/null
	and correct output errors before comitting changes.

848
849
850
851
852
853
Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>

	* TODO.xml: Added XML-structured TODO file.
	* docs/make-todo: python script to turn TODO.xml into
	  pretty XML output. 

854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
2000-02-23  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
	the function to let it draw the seven dots, instead of the old,
	much maligned, method.
	(draw_dot): New function to draw a dot.

	* gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
	to draw the handle inside the border width as opposed to outside.
	Use paint function instead of gdk_draw_point.

	* gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
	to draw the handle inside the border width as opposed to outside.
	Use paint function instead of gdk_draw_point.

	* gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
	Change indenting to be more GTK like.

872
873
874
875
876
Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>

        * docs/gtk_tut.sgml: New section on GtkCalendar
        * examples/calendar: Update example code

GMT 2000  Tony Gale's avatar
GMT 2000 Tony Gale committed
877
878
879
880
Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>

	* docs/gtkfaq.sgml: FAQ Update

881
882
883
884
885
2000-02-19  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
	to prevent the scroll event to be propagated upwards.

886
887
888
889
890
891
892
893
894
895
896
897
898
Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
	OwnerGrabButtonMask from button entries for
	GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.

	* gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
	to the event mask (which will result in button/press release
	being added to the event mask on Unix) so scrolling works
	for layouts in scroll windows.

	* gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.

Anders Carlsson's avatar
Anders Carlsson committed
899
	Patch from Anders Carlsson  <andersca@gnu.org> to add
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
	a scroll event.

 	* gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
 	scrolling to the "Test Scrolling" part of testgtk.
 
 	* gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
 
 	* gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
 	it against GDK_SCROLL.
 
 	* gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
 	way of mouse wheel scrolling.
 
 	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
 
 	* gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
 
 	* gtk/gtkmain.c: Removed previous mouse wheel hack.
 
 	* gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
 	gdk_event_mask_table.
 
 	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
 	GdkEventScroll handler.
 
 	* gdk/gdkevents.h: Added GdkEventScroll structure.
 
927
928
929
930
931
932
933
934
935
936
937
Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
	and Anders Carlsson to change the Paned widgets so that they
	can be dragged from anywhere along the length. Also change
	the way that this is drawn to make this apparent.

	* gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
	from George Lebl to check that option_menu->menu is present
	before getting history.

938
939
940
941
942
943
944
945
946
947
948
949
950
2000-02-14  Tor Lillqvist  <tml@iki.fi>

	* gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
	before the assertion for non-NULL segment list.

	* gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
	Seems that pattern brushes *must* be 8x8 pixels! At least on my
	machine, but it might be display driver dependent. Sigh, so make
	sure the stipple is that size. Does Windows suck or what?

	* gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
	places.

951
952
953
954
955
956
957
958
2000-02-13  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
	refcount to 1
	(gdk_cursor_new): init refcount to 1

	* gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1

959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
2000-02-13  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
	so that we don't have to do unnecessary settings to the HDC.

	* gdk/win32/gdkdrawable-win32.c
	* gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
	gdk_gc_predraw.

	* gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
	the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
	GDI paths, call WidenPath to get the outline of the stroken path,
	and then fill the outline (with the brush that was built from the
	stipple).

	* gdk/win32/gdkgc-win32.c: Factor out common code from
	_gdk_win32_gc_new and gdk_win32_gc_set_values into
976
977
978
979
980
	gdk_win32_gc_values_to_win32values. Use correct colour for
	SetBkColor() (Until now the code actually used a random colour in
	the call to SetBkColor()... but that didn't show up as not many
	GDI APIs use the background colour. Pattern (opaque stippled)
	brushes do.)
981
982
983
984

	* gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
	gdk_win32_api_failed): New functions for error logging.

985
	* gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
	WIN32_API_FAILED to call them, passing function or file name and
	line number.

	* gdk/win32/*.c: Use the WIN32_API_FAILED macro.

	* gdk/win32/gdkprivate-win32.h: Store just the pixel values from
	GdkColor for foreground and background in GdkGCWin32Data.

	* gdk/makefile.cygwin: Link in the resource object separately.

	* gdk/win32/rc/gdk.rc
	* gtk/gtk.rc (New file)
	* gdk/win32/makefile.cygwin
	* gtk/makefile.cygwin: Update build number in DLLs automatically,
	as in GLib.