ChangeLog.pre-2-10 170 KB
Newer Older
1
2
3
4
2000-05-29  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
	titles to be active, even if they aren't visible.
5
	(gtk_clist_column_titles_passive):  Ditto.
6

7
2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
Tim Janik's avatar
newline    
Tim Janik committed
8

9
10
11
12
	* gtkmenu.c:
	* gtkmenu.h:
	* gtktypeutils.h: Spelling/grammar fixes in comments.

CEST 2000 lupus's avatar
CEST 2000 lupus committed
13
14
15
16
Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>

	* gdk/nanox/*.h: add missing header files.

17
18
19
20
21
22
Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
	send_event to TRUE.
	(gtk_drawing_area_size): queue a resize.

23
24
25
26
27
28
Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>

        * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
        the handlers, also invalidate them. bug nailed down by Karl Nelson
        <kenelson@ece.ucdavis.edu>.

29
30
31
32
33
34
35
36
37
Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
	"(nil)" foundries, patch from Grigorios Magklis.

	* gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
	on non-available fonts, based on a patch by Grigorios Magklis
	<maglis@cs.rochester.edu>.

38
39
40
41
42
43
2000-05-18  Elliot Lee  <sopwith@redhat.com>

	* gdk/x11/gdkregion-generic.c: If a region does not have any
 	rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
	instead of GDK_OVERLAP_RECTANGLE_IN.

44
45
46
47
48
2000-05-17  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtklayout.c (gtk_layout_map): Remove references to
	OFFSCREEN, as it is no longer necessary.

49
50
51
52
53
54
55
Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkcolorsel.c: Patch from David Santiago
	<mrcooger@cyberverse.com> to change things so that the 
	indicator of the active palette entry is done independently,
	not via the focus, since it should always be visible.

56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
2000-05-17  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
	refcount leaks as in the X11 backend.

	* gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
	cosmetics.

	* gdk/win32/gdkwindow-win32.c: Similar changes as in X11
	backend. Add _gdk_windowing_window_destroy().

	* gtk/gtkcolorsel.c: Include correct backend-specific header.
	Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
	either, but these probably do exist on nanox?)
	
	* gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
	which isn't necessarily defined by <math.h>.

	* gtk/gtkobject.c (gtk_object_init): Don't go up the class
	ancestry past GtkObject.

	* gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
	from DLL on Win32.

	* gtk/gtk.def: Update corresponding to recent changes.

	* gtk/makefile.{cygwin,msc}: Updates.

Owen Taylor's avatar
Owen Taylor committed
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>

	* docs/Changes-1.4.txt: A bit of editing.

	* gdk/gdkwindow.c (_gdk_window_clear_update_area) 
	* gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
	to clear the update area for the window, and clear it
	when hiding a window.

	* gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
	if window destroyed.

	* gdk/gdkwindow.c (gdk_window_end_paint): Likewise.

	* gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
	gdk_window_destroy() to the generic code, since there was a lot of 
	window-system-independent logic it in. Add a function:
	
	 _gdk_window_destroy() 

	to the internal API to destroy a window without unreferencing it.
	Add a function:

	 _gdk_windowing_window_destroy()

	That does the windowing-system-dependent part of destroying 
	the window.

Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/testgtk.c: Fix various memory leaks of pixmaps.

Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
	Make gtk_widget_shape_combine_mask() keep a reference count on
	the pixmap since it keeps it around.

Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
	leak.

	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
	leak with event filters.

Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
	signal handlers with the right data arguments. (Fixes
	some warnings when a widget was repeatedly set as a drag
	destination.)

	* gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
	window so we can avoid avoid setting the DND properties on the
	toplevel window repeatedly.

141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
2000-05-13  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwin32.h: Define more message types missing from
	mingw headers.

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
	call gdk_window_destroy_notify(). It was never called. This
	probably meant that the GdkWindow was never freed. Thanks Owen for
	noticing (!).

	* gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
	window as destroyed before calling DestroyWindow(). DestroyWindow()
	causes a call to the window procedure (gdk_WindowProc), which
	calls gdk_event_translate(), which calls
	gdk_window_destroy_notify(), which gets confused unless the window
	is set as destroyed.

	* gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
	this function to indicate it's win32 only. Put inside #ifdef
	G_ENABLE_DEBUG.

	* gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
	debugging function. (gdk_event_translate:) Add a default branch
	that uses the above function to print debug messages with all
	Windows messages symbolically.

	* gdk/win32/gdkprivate-win32.h: Declare it, and
	gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.

170
171
172
173
174
Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
	public header file.

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
Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>

	* docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.

	* gtk/gtktext.c: made the adjustments no-construct args, simply
	provide default adjustments.
	(gtk_text_destroy): release adjustments.

	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
	adjustment argument non-construct.

	* gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
	instead of in finalize.
	(gtk_progress_get_text_from_value): 
	(gtk_progress_get_current_text): 
	(gtk_progress_set_value): 
	(gtk_progress_get_percentage_from_value): 
	(gtk_progress_get_current_percentage): 
	(gtk_progress_set_percentage): 
	(gtk_progress_configure): ensure an adjustment is present.

Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkcolorsel.[hc]:
	* gtk/gtkcolorseldialog.[hc]:
	* gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
	their parent implementation, use bit fields for boolean values, don't
	create unused widgets, usage of glib types, braces go on their own
	lines, function argument alignment, #include directives etc. etc. etc..

	* gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.

Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.

	* gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
	of NULL.

Owen Taylor's avatar
Owen Taylor committed
214
	* gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
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
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
	to freed data.
	(gtk_combo_destroy): don't keep a pointer to a destroyed window.

	* gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
	to NULL when the toplevel is getting destroyed.
	(gtk_menu_set_tearoff_state): same here for the tearoff_window.
	(gtk_menu_destroy): 
	(gtk_menu_init): store the information of whether we have to
	readd the initial child ref_count during destruction in a new
	GtkMenu field needs_destruction_ref_count.

	* gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
	here, those reading: learn from my mistake! ;)
	in order for set_?adjustment to support a default adjustemnt if
	invoked with an adjustment pointer of NULL, the code read (pseudo):
	if (v->adjustment) unref (v->adjustment);
	if (!adjustment) adjustment = adjustment_new ();
	if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
	now imagine the first unref to actually free the old adjustment and
	adjustment_new() creating a new adjustment from the very same memory
	portion. here, the latter comparision will unintendedly fail, and
	all hell breaks loose.
	(gtk_viewport_set_hadjustment):
	(gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
	after unreferencing it.

	* gtk/gtkcontainer.[hc]: removed toplevel registration
	functions: gtk_container_register_toplevel(),
	gtk_container_unregister_toplevel() and
	gtk_container_get_toplevels() which had wrong semantics
	anyways: it didn't reference and copy the list.

	* gtk/gtkwindow.c: we take over the container toplevel registration
	bussiness now. windows are registered across multiple destructions,
	untill they are finalized. the initial implicit reference count
	users are holding on windows is removed with the first destruction
	though.
	(gtk_window_init): ref & sink and set has_user_ref_count, got
	rid of gtk_container_register_toplevel() call. add window to
	toplevel_list.
	(gtk_window_destroy): unref the window if has_user_ref_count
	is still set, got rid of call to
	gtk_container_unregister_toplevel().
	(gtk_window_finalize): remove window from toplevel list.
	(gtk_window_list_toplevels): new function to return a newly
	created list with referenced toplevels.
	(gtk_window_read_rcfiles): use gtk_window_list_toplevels().

	* gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
	adjustment a non-construct arg.
	* gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
	* gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
	* gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.

	* gtk/gtkrange.c: added some realized checks.
	(gtk_range_destroy): get rid of the h/v adjustments in the
	destroy handler instead of finalize. remove timer.
	(gtk_range_get_adjustment): demand create adjustment.

	* gtk/gtkviewport.c: made h/v adjustment non-construct args.
	we simply create them on demand now and get rid of them in
	the destroy handler.
	(gtk_viewport_destroy): get rid of the h/v adjustments in the
	destroy handler instead of finalize.
	(gtk_viewport_get_hadjustment): 
	(gtk_viewport_get_vadjustment): 
	(gtk_viewport_size_allocate): demand create h/v adjustment
	if required.

	* gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
	gtk_widget_real_destroy () functionality.
	(gtk_widget_real_destroy): reinitialize with a new style, instead
	of setting widget->style to NULL.

Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtkcalendar.c:
	* gtk/gtkbutton.c: ported _get_type() implementation over to
	GType, either to preserve memchunks allocation facilities,
	or because Gtk+ 1.0 GtkTypeInfo was still being used.

	* gtk/gtkobject.[hc]: derive from GObject. ported various functions
	over. prepare for ::destroy to be emitted multiple times.
	removed reference tracer magic. chain into GObjectClass.shutdown()
	to emit ::destroy signal.

	* gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
	fundamental.

	* gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
	cludge.

	* gtk/gtksocket.c:
	* gtk/gtkplug.c:
	* gtk/gtklayout.c:
	* gtk/gtklabel.c:
	* gtk/gtkargcollector.c:
	* gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
	not being a fundamental anymore, and to work with the new
	type system (nuked fundamental type varargs clutter).

	* gtk/*.c: install finalize handlers in the GObjectClass
	part of the class structure.
	changed direct GTK_OBJECT()->klass accesses to
	GTK_*_GET_CLASS().
	changed direct object_class->type accesses to GTK_CLASS_TYPE().

	* gtktypeutils.[hc]: use the reserved fundamental ids provided by
	GType. made most of the GTK_*() type macros and Gtk* typedefs
	simple wrappers around macros and types provided by GType.
	most notably, a significant portion of the old API vanished:
	GTK_TYPE_MAKE(),
	GTK_TYPE_SEQNO(),
	GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
	GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
	GTK_TYPE_ARGS,
	GTK_TYPE_CALLBACK,
	GTK_TYPE_C_CALLBACK,
	GTK_TYPE_FOREIGN,
	GtkTypeQuery,
	gtk_type_query(),
	gtk_type_set_varargs_type(),
	gtk_type_get_varargs_type(),
	gtk_type_check_object_cast(),
	gtk_type_check_class_cast(),
	gtk_type_describe_tree(),
	gtk_type_describe_heritage(),
	gtk_type_free(),
	gtk_type_children_types(),
	gtk_type_set_chunk_alloc(),
	gtk_type_register_enum(),
	gtk_type_register_flags(),
	gtk_type_parent_class().
	replacements, where available are described in ../docs/Changes-1.4.txt.
	implemented compatibility functions for the remaining API.

	* configure.in: depend on glib 1.3.1, use gobject module.

353
354
355
356
Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>

	* TODO.xml: Various updates to current status.

357
358
359
360
Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk.m4: Print out version when test succeeds.

Owen Taylor's avatar
Owen Taylor committed
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
	gtk/gtkhsv.[ch]: Color selection dialog rewrite.
	
	(Original triangle color selector from Simon Budig
	<Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
	from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
	Santiago <mrcooger@cyberverse.com>)

	* gtk/gtkcolorseldialog.[ch]: Split color selection dialog
	out into a separate widget.

	* gtk/testgtk.c: Add some checkbuttons for toggling palette
	and opacity controls.

377
378
Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>

Owen Taylor's avatar
Owen Taylor committed
379
380
	* configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
	snuck in prematurely.
381

382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
2000-05-07  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
	had deleted a ! operator by mistake, which caused
	GDK_SELECTION_CLEAR events never to be generated, which caused
	only the first copy to the clipboard from an gtkeditable to
	actually cause a copy to the Windows clipboard.

2000-05-06  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
	compilation, too. Current mingw gcc distributions include the
	necessary headers. Also the necessary IIDs are now in mingw
	headers/libraries, and own definitions unnecessary.

	More hacking on OLE2 DND, still doesn't work though, and thus
	ifdeffed out.

	* gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
	here, too.

403
404
405
406
407
408
409
410
Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>

	* gdk/nanox/*: nano-X port work in progress.
	* gdk/simple.c: simple test for Gdk.
	* README.nanox: notes about the port: read this first!
	* gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
	with nano-X.

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
Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
	gdk_window_clear() into common code, implement in terms of
	gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
	not redirected to the backing rectangle.

Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
	EXTRA_DIST. It does not work well when the file that
	everything depends on is not in the tarball.

Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
	with recursion where process_updates() is called from
	an expose handler. (GtkTextView is highly broken in
	doing this, but it should work, so it is a nice test
	case.)

Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
	handle the case where updates are queued during processing of
	updates.

Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
	window is on gdk_display - use that instead of segfaulting.

443
444
445
446
447
448
449
450
451
Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>

        * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
        broken and require an empty arg, give it to them.

Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>

	* gtk/gtklabel.h: indentation fixes.

452
453
2000-05-02  Tor Lillqvist  <tml@iki.fi>

454
455
456
457
458
459
	* gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
	draw too narrow or too low arcs, they seem to fail, at least with
	some display drivers.

	* gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.

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
	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.

519
520
521
	* gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
	the X11 version.

522
523
524
525
526
527
	* 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>.

528
529
530
531
532
2000-04-26  Havoc Pennington  <hp@redhat.com>

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

533
534
535
536
537
538
539
540
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

541
542
543
544
545
546
547
548
549
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.

550
551
552
553
554
555
556
557
558
559
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.

560
561
562
563
564
565
566
567
568
569
570
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
571
572
573
574
2000-04-05  Dan Damian  <dand@dnttm.ro>

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

Owen Taylor's avatar
Owen Taylor committed
575
576
577
578
579
580
581
582
583
584
585
586
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.

587
588
589
590
591
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
592
593
594
595
596
597
598
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.

599
600
601
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
602
	instead of gdkprivate.h.
603

Owen Taylor's avatar
Owen Taylor committed
604
605
606
607
608
Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>

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

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
733
734
735
736
737
738
739
740
741
742
743
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
783
784
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
785
786
787
788
2000-03-23  Jonathan Blandford  <jrb@redhat.com>

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

789
790
791
792
793
794
795
796
797
798
799
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.

800
801
802
803
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
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
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
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
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.