ChangeLog.pre-2-6 383 KB
Newer Older
1
2
3
4
5
6
7
8
9
2001-01-01  Havoc Pennington  <hp@redhat.com>

	* gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@

	* gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@

	* configure.in (LIBTOOL_EXPORT_OPTIONS): define
	LIBTOOL_EXPORT_OPTIONS with options to control symbol export

10
11
12
13
14
15
16
17
18
19
20
21
22
23
2001-01-01  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.

	* gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
	GtkTextAttributes

	* gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
	#40246
	(gtk_text_attributes_copy_values): rename from 
	gtk_text_attributes_copy
	(gtk_text_attributes_copy): a more standard GTK copy function, 
	which returns a new object

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
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
2001-01-01  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
	
	* gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
	don't fill in tree_view->priv->selection, kind of an unexpected
	side effect

	* gtk/gtkcellrenderertext.c: Remove definition of _ and include
	gtkintl.h
	
	* gtk/gtkcellrenderer.c: Remove definition of _ and include
	gtkintl.h
	(gtk_cell_renderer_get_property): remove calls to g_value_init

	* gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
	gtkintl.h

	* gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
	and include gtkintl.h
	(gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
	property names

	* gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
	GtkTreeSelection
	(_gtk_tree_selection_new_from_with_view): rename, return
	GtkTreeSelection
	(_gtk_tree_selection_set_tree_view): rename with uscore
	(gtk_tree_selection_get_selected): fill in the "model" out param
	first, so it gets filled in even if we return at the top of the 
	function
	(gtk_tree_selection_real_select_all): add a comment and an else{}
	to clarify this a bit
	(gtk_tree_selection_real_unselect_all): add the same else{}

	* gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
	set_tree_view to have underscore prefixes, move them to the
	private header, fix return type of new_with_tree_view
	(struct _GtkTreeSelection): mark struct
	fields private	

	* gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
	GtkTreeModelFlags, not a guint
	(gtk_tree_path_prev): return gboolean not gint
	(gtk_tree_path_up): return gboolean not gint

	* gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
	return GtkTreeModelFlags, not a guint

	* gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
	that child model is non-null before unrefing it
	(g_value_int_compare_func): make this a qsort compare func, not 
	a boolean predicate

	* gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
	(add -umn to the end), and mark it unimplemented
	(gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
	I don't see what it's for - doesn't the model always sort itself?
	(gtk_tree_model_sort_set_compare): this had the wrong signature

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
	Fix the docs to say that it destructively replaces existing
	attributes (previously said that it added attributes).
	(gtk_tree_view_column_set_visible): canonicalize bool before
	equality testing. Also, check for realization before
	hiding/showing the tree_column->window; if this window could exist
	before realization, then it's busted and needs fixing, we can't 
	create GDK resources pre-realization. Also, remove
	superfluous queue_resize(), since set_size() does that for us.
	(gtk_tree_view_column_set_col_type): check realization before 
	using tree_column->window

	* gtk/gtktreedatalist.c: fix filename in copyright notice

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
2000-12-31  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextview.c: Rearrange all the
	scroll-while-dragging-or-selecting code to be different, not
	necessarily better. ;-)
	(gtk_text_view_scroll_to_mark): Change this
	function to take within_margin as a fraction instead of a pixel
	value, and to take alignment arguments (indicating where to align 
	the mark inside the visible area)
	
	* gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
	to GtkObject

	* gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
	behavior so that offsets past the end of the line are not 
	allowed, and an offset equal to the line length moves the iterator
	to the next line
	(gtk_text_iter_set_line_index): make parallel change
	(gtk_text_iter_get_bytes_in_line): add this function
	
	* gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
	of byte indexes off the end of the line; byte index at the end of
	the line now returns FALSE and doesn't fill in the requested
	values, byte index past the end of the line is an error.  Also,
	don't allow -1 offset anymore, since its meaning is unclear.

	This change exposes some bug in visual cursor motion, where we
	end up with a huge invalid byte index; needs fixing. Symptom of 
	bug is a crash when you hit up arrow.
	
	(_gtk_text_line_char_locate): match the change to byte_locate

	* gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
	from start of line properly. fixes bug reported by Mikael
	Hermansson where backspace would delete all text before the
	cursor.

135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
2000-12-30  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkwindow-win32.c
	(gdk_window_impl_win32_get_visible_region): New function, as in
	the X11 backend.
	(gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
	instead of duplicating the same code here.

	* gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
	GDK_COLORMAP macro.

	* gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
	destroy function.
	(gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
	access that.

	* gtk/gtk.def: Update.

	* gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.

155
156
157
158
159
160
2000-12-30  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
	colormap on input only windows, to avoid special cases all over
	the code for these windows.

161
162
163
164
165
166
2000-12-26  Tor Lillqvist  <tml@iki.fi>

	* gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
	we are on a palettized display ("PseudoColor" in X11), as the code
	for that doesn't work anyway, and never has.

167
168
169
170
171
2000-12-22  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
	Don't use isprint() for chars > 255.

Havoc Pennington's avatar
Havoc Pennington committed
172
173
174
175
2000-12-21  Havoc Pennington  <hp@redhat.com>

	* tests/testtreeview.c: more work

176
177
178
179
180
2000-12-21  Alexander Larsson  <alexl@redhat.com>

	* docs/README.linux-fb:
	Update the docs to the new pangoft2 way.

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
2000-12-21  Alexander Larsson  <alexl@redhat.com>

	* configure.in:
	For linux-fb get the pangoft2 cflags and libs. This needs a recent
	pango version.
	Remove modules/linux-fb/Makefile.

	* gdk/linux-fb/gdkdrawable-fb2.c:
	Render glyphs using freetype.

	* gdk/linux-fb/gdkfb.h:
	Add new fb-specific functions needed for managing windows.

	* gdk/linux-fb/gdkmain-fb.c:
	Remove gdk_font_init/fini() calls.

	* gdk/linux-fb/gdkpango-fb.c:
	Remove old implementation. Use pangoft2 instead.

	* gdk/linux-fb/gdkprivate-fb.h:
	Remove PangoFBFont and related stuff.

	* gdk/linux-fb/gdkwindow-fb.c:
	Implement drawable->get_visible_region.
	Implement support for _gdk_window_set_child_handler () and
	_gdk_window_get_decorations().

	* modules/Makefile.am:
	Remove linux-fb subdir.

	* modules/linux-fb/*:
	Removed all.
	
214
215
216
217
218
219
220
221
222
223
2000-12-20  Jonathan Blandford  <jrb@redhat.com>

	* gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
	calls, as they are no longer needed.

	* gtk/gtktreemodelsort.c: Fix up the comparison code.
	
	* gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
	figure out how to emit a signal on an interface.

224
225
226
227
228
229
230
231
232
233
234
235
236
237
2000-12-20  Havoc Pennington  <hp@redhat.com>

	* tests: new directory to contain tests, gtk/test* should move
	here sometime (with appropriate on-cvs-server hackery)

	* tests/testtreeview.c, tests/Makefile.am: a test
	
	* configure.in (AC_OUTPUT): add tests/Makefile

	* gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
	and "invisible_set" which were missing

	* gtk/gtkrbtree.h: some cheesy indentation fix
	
238
239
240
241
242
243
2000-12-20  Alexander Larsson  <alexl@redhat.com>

	* gtk/gtkinvisible.c (gtk_invisible_realize):
	Attach the style to the window so that the style it is not
	leaked when unrealizing the window.

244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
2000-12-18  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
	begin/end user action where appropriate
	(gtk_text_view_commit_handler): add begin/end user action

	* gtk/gtktextbuffer.c: add begin/end user action signals, and
	bracket interactive operations with begin/end user action pair.
	
	* gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
	"interactive" arg from insert_text and delete_text signals.
	Add begin_user_action, end_user_action signals
	(gtk_text_buffer_begin_user_action): 
	(gtk_text_buffer_end_user_action): New functions to delimit 
	a user-visible action

	* gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
	signals.
	
263
264
265
266
267
268
269
270
2000-12-18  Havoc Pennington  <hp@redhat.com>

	* gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
	was pretty non-working.

	* gtk/testtext.c (fill_file_buffer): make this a bit more robust
	by passing the length to g_utf8_validate().

271
272
2000-12-16  Havoc Pennington  <hp@pobox.com>

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
353
354
355
	* gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
	Port to GObject, can go back in gdk-pixbuf after setting up 
	a gdk-pixbuf-marshal.h header over there.

	* gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
	(gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
	args
	(gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
	set
	(gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
	here, do it when we create the buttons later
	(gtk_tree_view_realize_buttons): add some g_return_if_fail 
	(gtk_tree_view_map): paranoia checks that column->button is shown 
	and unmapped
	(gtk_tree_view_size_request): only request visible children.
	Move header size calculation in here, for cleanliness, and 
	to maintain invariants for child widgets if we eventually 
	let users set different children inside the buttons
	(gtk_tree_view_map_buttons): factor out code to map buttons,
	since it was being called several times
	(gtk_tree_view_size_allocate_buttons): move_resize the drag
	windows instead of just moving them; their height may change 
	if we allow random widgets in there, or the theme changes.
	(gtk_tree_view_size_allocate): move button size allocation 
	above emitting the scroll signals, to ensure a sane state when we
	hit user code
	(gtk_tree_view_button_release): remove queue_resize after
	tree_view_set_size(), set_size() will handle any resize queuing
	that's needed
	(gtk_tree_view_focus_in): just queue a draw, don't fool with
	draw_focus goo
	(gtk_tree_view_focus): use gtk_get_current_event() and
	gdk_event_get_state()
	(gtk_tree_view_deleted): don't queue_resize() after calling set_size()
	(gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
	semicolon
	(gtk_tree_view_create_button): show the button here
	(gtk_tree_view_button_clicked): actually emit the clicked signal
	on the column
	(_gtk_tree_view_set_size): return right away if the size is
	unchanged, as a cheesy optimization
	(gtk_tree_view_setup_model): rename set_model_realized to 
	setup_model to match the flag that indicates whether we've 
	called it
	(gtk_tree_view_get_hadjustment): create adjustment if it doesn't
	exist, because set_scroll_adjustment does that and it shouldn't
	matter what order you call these in
	(gtk_tree_view_get_vadjustment): ditto
	(gtk_tree_view_set_headers_visible): canonicalize the bool, 
	for paranoia
	(gtk_tree_view_set_headers_visible): call
	gtk_tree_view_map_buttons() instead of using cut-and-paste code
	(gtk_tree_view_append_column): clarify whether the return value
	is the count of columns before or after, and do the increment 
	separately from the return statement so you can tell from the code.
	(gtk_tree_view_remove_column): ditto
	(gtk_tree_view_insert_column): ditto
	(gtk_tree_view_get_column): remove g_return_if_fail for columns
	outside the existing range, the docs say that outside-range
	columns are allowed, so we handle them as documented. (Presumably
	this allows a nice loop with column != NULL as test.)
	(gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
	mean (left/right/center etc.).
	(gtk_tree_view_collapse_all): only queue a draw if we're mapped
	(gtk_tree_view_expand_row): add docs
	(gtk_tree_view_collapse_row): add docs

	* gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
	function to emit the clicked signal on a column
	
	* gdk/gdkevents.c (gdk_event_get_state): new function, to get the
	state of an event
	(gdk_event_get_time): don't treat GDK_SCROLL 
	as a button event, remove default case from switch so gcc 
	will whine if we don't explicitly handle all event types

	* gtk/gtktreeselection.h: added some FIXME 
	
	* gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
	"columns" to "n_columns" and "column" to "columns" for clarity

2000-12-16  Havoc Pennington  <hp@pobox.com>
	
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
	* gtk/gtktextiter.c: General cleanup of the log attr iteration
	stuff. This should make e.g. the delete key work again in the
	text widget...
	(gtk_text_iter_forward_cursor_positions): handle negative count
	(gtk_text_iter_backward_cursor_positions): handle negative count
	(gtk_text_iter_forward_word_ends): handle negative count
	(gtk_text_iter_backward_word_starts): handle negative count

	* gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
	gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
	gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
	GObject. No doubt will cause breakage.

	* demos/gtk-demo/textview.c: remove hacks around
	non-GObject-ification of the text objects

	* demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
	the text tag
	
375
376
377
378
379
2000-12-14  Havoc Pennington  <hp@pobox.com>

	* configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
	that we have Xrender

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
Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>

        * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
	Add two virtualized functions gdk_drawable_get_clip_region - to
	get the clip region when drawing.
	
	* gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
	use invalidate_region.

	* gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
	region.

	* acconfig.h configure.in: Check for Xft. For now, assume
	that if Xft is found, Pango was compiled with Xft support
	as well.

	* gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
	gdk_colormap_query_color().
	
	* gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
	with Xft if appropriate.

	* gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
	a pangoxft context if we have XFT and the environment
	variable GD_USE_XFT is set.
	
	* gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
	and also possibly an XftDraw structure.

        * gtk/gtkfontsel.c: Handle the case where the font from the
	style doesn't match any of the fonts a bit better.
	
	* gtk/testgtk.c: Add tabs between directional segments for
	hebrew/arabic test. (Not really necessary, just a little
	prettier.)

416
417
418
419
420
2000-12-14  Havoc Pennington  <hp@redhat.com>

	* gtk/testtext.c (fill_file_buffer): fix unicode validation when
	reading a file

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
2000-12-14  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
	unused call to get_last_line()

	* gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
	here until boxed is working (and maybe after that - we should
	really not gratuitously break old code)

	* gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
	specific types for font_desc and tabs args, move them to
	GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
	fixed. Move GdkColor args to GTK_TYPE_POINTER also.

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
	use GTK_TYPE_POINTER for signal signatures as a hack-around

	* gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
	PangoTabArray

	* gtk/gtktextlayout.c (line_display_iter_to_index): 
	make static
	(line_display_index_to_iter): make static

	* gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
	to marshal a string not a boxed

	* gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text

	* gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
	since the UTF-8 isn't validated yet

	* gtk/gtktextsegment.c (char_segment_check_func): don't require
	lines to end in '\n'
	
	* gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
	forward_to_delimiters, and grapheme boundaries
	(gtk_text_view_delete_from_cursor): properly handle non-newline
	delimiters, and grapheme boundaries

	* gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
	to gtk_text_iter_forward_to_delimiters, and make it work properly
	if empty lines end with a character other than '\n'

	* gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
	position

Tor Lillqvist's avatar
Tor Lillqvist committed
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
2000-12-15  Tor Lillqvist  <tml@iki.fi>

	* gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.

	* gtk/gtk.def
	* gdk/gdk.def: Update.

	* gdk/win32/gdkmain-win32.c
	* gdk/win32/gdkkeys-win32.c: New file. Move some functions from
	gdkmain-win32.c here.

	* gdk/win32/makefile.mingw.in (all): No need to make
	gdk-win32res.o here, the makefile one step up will call us to make
	it.

	* gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
	gdkkeys-win32.

	* gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.

	* gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
	call to g_source_add().

	* gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
	leak. Thanks to Andreas Kemnade.

494
495
496
497
498
499
2000-12-13  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextbtree.h: Remove double _ in front of some functions

	* gtk/gtktext*.[hc]: update accordingly
	
500
501
502
503
504
505
506
2000-12-13  Havoc Pennington  <hp@pobox.com>

	* gtk/gtktextbtree.h: Put _ in front of every function in this 
	header file

	* gtk/gtktext*.[hc]: update to reflect renamed btree functions

507
2000-12-13  Alex Larsson  <alexl@redhat.com>
508
509
510
511
512
513
514
515
516
517
518

	* gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
	Add support for ps2 intellimouse.

	* gdkkeyboard-fb.c:
	Move shift-F1 repaint handling to xlate handler only.
	
	* docs/README.linux-fb:
	Add imps2 to docs.
	Document the new refresh keys.
	
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
Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>

	* gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.

	* gtk/gtkbox.c: change property types from (u)long to (u)int for
	::position and ::padding.

	* gtk/gtkcontainer.c: make ::border_width an INT property.

	* gtk/gtkpacker.c: make ::position an INT property.

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
	guard against NULL h/v scrollbars, since this is used at construction
	time.

	* gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
	internal gtk_clist_constructor().

	* gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
	gtk_ctree_constructor().

	* gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
	::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.

	* docs/reference/Makefile.am: fun stuff, disabled docs generation
	again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.

	* gtk/gtkwidget.[hc]:
	removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
	and gtk_widget_get().
	(gtk_widget_new): use g_object_new_valist().
	(gtk_widget_set): use g_object_set_valist().

	* gtk/gtkobject.[hc]:
	removed gtk_object_arg_get_info(), gtk_object_getv(),
	gtk_object_query_args(), gtk_object_newv(),
	gtk_object_class_add_signals(),
	gtk_object_class_user_signal_new(),
	gtk_object_class_user_signal_newv(),
	gtk_object_arg_set(), gtk_object_arg_get(),
	gtk_object_args_collect(),
	gtk_object_default_construct(),
	gtk_object_constructed(),
	GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
	removed nsignals, signals and n_args members from GtkObjectClass.
	(gtk_object_new): use g_object_new_valist().
	(gtk_object_set): use g_object_set_valist().
	(gtk_object_get): use g_object_get_valist().
	
	* gtk/gtkcompat.h: define gtk_object_default_construct().
	
	* gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
	g_object_new().

	* gtk/*.c: removed gtk_object_class_add_signals() from class_init()
	fucntions, cleaned up method assignments (make sure your structures
	are setup properly before calling out). removed all GTK_CONSTRUCTED
	hacks ;)

578
579
580
581
582
Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
	off-by-one error in checks. (Dave Lambert)

583
584
585
586
587
2000-12-12  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
	Don't free gdk_fb_keyboard twice.

588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>

	* gtk/testgtk.c:
	(create_tooltips): 
	(create_statusbar): get rid of object_signal:: GtkObject argument uses,
	use GObject swapped_signal:: properties instead.

	* gtk/gtkcellrenderertoggle.c: 
	* gtk/gtkcellrenderertextpixbuf.c: 
	* gtk/gtkcellrenderertext.c: 
	* gtk/gtkcellrendererpixbuf.c: 
	* gtk/gtkcellrenderer.c:
	* gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
	missing warnings for invalid property ids, install properties
	with g_object_class_install_property() now.
	
	* gtk/gtksignal.c:
	(gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
	
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
Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
	
	* gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
	to determine if a window is the focus widget within
	its toplevel.

	* gtk/gtkcontainer.[ch]: Fix the return type of ::focus
	to be boolean.

	* gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
	of the case where the container CAN_FOCUS to here instead
	of having it in each individual move-the-focus place.

	* gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
	focusing to be geometric in a much more obvious sense. Arrowing
	around is still non-intuitive because it isn't perfect and
	because entries, etc, grab the arrow keys, but it at least
	usually will do what you expect now.
	
	* gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
	file.

	* gtk/gtknotebook.c: Change tabs to be a single item in
	the focus chain. Make movement of focus on tabs with arrow
	keys wrap around.
	
	* gtk/gtknotebook.c (gtk_notebook_find_child): Add
	CHECK_FIND_CHILD macro to give informative error messages
	instead of silent returns.

	* gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
	flag since we handle GdkReturn on the tabs.

	* gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
	windows rather than sending expose events directly.

	* gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
	definition for GtkNotebookPage into .c file, since it is private.

	* gtk/testgtk.c (create_notebook): Add option for 
	testing borderless notebook.

	* gtk/testgtk.c (page_switch): Removed egregious poking
	around in GTK+ internals.

	* docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.

	* gtk/gtkclist.[ch]: Remove key press handler, handle focusing
	properly through gtk_clist_focus. Make the title headers a
	single item in the tab-focus chain, and make left-right wrap
	around.

	* gtk/gtkwindow.c (gtk_window_focus): Add a custom
	focus method so that wrapping around works properly.

	* gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
	that is handled for the widget now. 

665
666
667
668
669
670
671
672
673
674
Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
	widgets as TOPLEVEL.

	* gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
	TOPLEVEL widgets are containers.

	* gtk/gtkinvisible.h: Remove useless include.

675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
2000-12-11  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
	Handle chopping off \r\n and 0x2029 in addition to \n before
	passing to PangoLayout

	* gtk/gtkimcontextsimple.c
	(gtk_im_context_simple_get_preedit_string): 
	return an empty string if no match is pending

	* gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
	assertion that the returned preedit string was sane

	* gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
	s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
	s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;

692
693
694
695
696
Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>

	* gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
	Fix up finalizer to chain to its parent.

697
698
699
700
701
702
2000-12-11  Alexander Larsson  <alexl@redhat.com>

	* docs/README.linux-fb (GDK_KEYBOARD_TYPE):
	Clearified the difference between the keyboard types. Wrote a note
	about the magic sysrq key to get out of raw mode.

703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
2000-12-09  James Henstridge  <james@daa.com.au>

	* gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
	member to hold masks for detecting the start of a protocol packet.
	(mouse_devs): add packet start masks for ps2 and ms device types.
	Left the mask for fidmour blank, as I have no idea what it should
	be.
	(handle_mouse_io): skip bytes until we get to the start of a
	packet.  My Logitech mouse seems to be passing an extra NULL pad
	byte, and GPM does a similar thing here.
	(gdk_fb_mouse_ms_open): changed error message to not say psaux, as
	this is the ms mouse driver.
	(gdk_fb_mouse_ms_packet): fix up button handling, which was
	completely broken except for button1.  It was checking the wrong
	bit in the packet for the status of the right mouse button, and
	wrongly assuming right == button2 rather than 3.  I fixed that and
	also added support for middle button (button2).

721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
2000-12-08  Havoc Pennington  <hp@redhat.com>

	* gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
	that cause a segfault on text insertion

	* gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
	warning

	* gtk/gtktextiter.c (test_log_attrs): use
	_gtk_text_buffer_get_line_log_attrs to speed things up a bit

	* gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
	Get log attrs for a line, using a cache stored on the buffer
	
	* gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
	reported by Jeff Franks

Alexander Larsson's avatar
Alexander Larsson committed
738
739
740
741
742
2000-12-08  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
	/dev/ttyS0 -> /dev/mouse

Alexander Larsson's avatar
Alexander Larsson committed
743
744
745
746
747
2000-12-08  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
	Added dummy gdk_fontset_load.

748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
2000-12-08  Alexander Larsson  <alexl@redhat.com>

	* docs/README.linux-fb:
	* docs/Makefile.am:
	Initial GtkFB docs.
	
	* gdk/linux-fb/Makefile.am:
	Define GDK_DATA_PREFIX.

	* gdk/linux-fb/gdkmain-fb.c:
	Fix typo.
	Change default display to /dev/fb0.

	* gdk/linux-fb/gdkpango-fb.c:
	Add $(prefix)/share/fonts/ to font path.
	
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
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
2000-12-08  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkkeyboard-fb.c:
	New file containing the abstracted keyboard driver. Most code
	taken from gdkinput-ps2.c

	* gdk/linux-fb/gdkinput-ps2.c:
	Removed file.
	
	* gdk/linux-fb/Makefile.am:
	Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.

	* gdk/linux-fb/gdkcolor-fb.c:
	display->fb was renamed to display->fb_fd.

	* gdk/linux-fb/gdkcursor-fb.c:
	gdk_mouse_get_info -> gdk_fb_mouse_get_info

	* gdk/linux-fb/gdkinput.c:
	Moved gdk_input_init here from gdkinput-ps2.c

	* gdk/linux-fb/gdkmain-fb.c:
	display->fb was renamed to display->fb_fd.
	Now the tty and the console is opened here instead
	of in the keyboard driver. Also check GDK_VT to see what
	tty to open.
	Move gdk_beep () here from gdkinput-ps2.c
	gdk_mouse_get_info -> gdk_fb_mouse_get_info

	* gdk/linux-fb/gdkmouse-fb.c:
	Add header.
	gdk_mouse_get_info -> gdk_fb_mouse_get_info
	Return correct keyboard modifiers.
	GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy

	* gdk/linux-fb/gdkprivate-fb.h:
	Add tty and vt info to display.
	Add orignal modeinfo storage to display
	Update global functions

	* gdk/linux-fb/gdkwindow-fb.c:
	Added gdk_fb_window_find_focus().
	gdk_mouse_get_info -> gdk_fb_mouse_get_info

808
809
810
811
812
2000-12-07  Havoc Pennington  <hp@pobox.com>

	* gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
	function, noticed by Alex

813
2000-12-06  Elliot Lee  <sopwith@redhat.com>
814

815
	* configure.in: Detect freetype properly
816

817
818
	* modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
	above.
819

Alexander Larsson's avatar
Alexander Larsson committed
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
2000-12-06  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/Makefile.am:
	Add gdkmouse-fb.c
	
	* gdk/linux-fb/gdkmouse-fb.c:
	New file. Abstracted the mouse drivers a bit.

	* gdk/linux-fb/gdkcursor-fb.c:
	The cursor hide/show functions was moved here from gdkinput-ps2.c.

	* gdk/linux-fb/gdkinput-ps2.c:
	Removed old mouse handling code. Moved cursor handling code
	to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
	gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
	gdk_mouse_get_info.

	* gdk/linux-fb/gdkmain-fb.c:
	Pass NULL pointers for x,y in gdk_mouse_get_info call.

	* gdk/linux-fb/gdkprivate-fb.h:
	Removed public gdk_fb_find_common_ancestor, added and renamed
	functions for the new mouse handling code.

	* gdk/linux-fb/gdkwindow-fb.c:
	Moved gdk_fb_window_send_crossing_events here. added global
	variable gdk_fb_window_containing_pointer. made
	gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
	renamed to gdk_mouse_get_info.

850
851
852
853
854
855
856
857
858
2000-12-06  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkevents-fb.c:
	Update to match latest gmain/gsource changes.

	* gdk/linux-fb/gdkinput-ps2.c:
	Bogus gdk_keymap_get_entries_for_keycode implementation so that
	it links. Will be implemented later.

Havoc Pennington's avatar
Havoc Pennington committed
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
2000-12-03  Havoc Pennington  <hp@pobox.com>

	* gdk/Makefile.am: add gdkkeys.[hc]

	* gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
	files from gdk.h, gdk.c; add GdkKeymap type and operations on it.

	* acconfig.h, configure.in: add checks and command line options
	for XKB

	* gdk/x11/gdkkeys-x11.c: Implement the above functions
	
	* gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
	and group in the key event

	* gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
	field with the low-level hardware key code, and a group
	field with the keyboard group

	* gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
	and declare a couple globals used for keymap handling
	
	* gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
	hold down Shift-Control and type a hex number to get a Unicode 
	character corresponding to the hex number
	(gtk_im_context_simple_get_preedit_string): Fix cursor position
	(return bytes not chars)

887
2000-12-05  Elliot Lee  <sopwith@redhat.com>
888

889
890
891
	* gdk/gdkcolor.h: Make GdkColor specify element sizes
	to avoid waste on 64-bit platforms.

892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>

	* INSTALL: Fix link to PNG home, remove reference
	to fribidi.

	* gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
	
	* gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
	tested.)

	* gtk/gtkcheckmenuitem.c: Permanently turn on
	always_show_toggle.

	* gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
	be NULL. (Vladimir Klebanov, #26545)

	* gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
	some signed/unsigned comparison problems. (#6510,
	David Kaelbling)

	* gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
	return type to boolean (Oskar Liljeblad, #18648)

915
916
917
918
919
2000-12-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
	Remove bogus colormap setting.

920
921
922
923
924
925
926
927
2000-12-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkcolor-fb.c:
	More complete colormap handling. Now GdkRGB work in 8 bpp modes.

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
	Must set colormap.
	
GMT 2000  Tony Gale's avatar
GMT 2000 Tony Gale committed
928
929
930
931
Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>

	* docs/tutorial/gtk-tut.sgml: DND updates

932
933
934
935
936
937
938
939
940
941
942
943
944
945
2000-12-05  Alexander Larsson  <alla@lysator.liu.se>

	* gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
	Remove old debug g_warning().
	(gdk_fb_draw_drawable): The src argument can be either a wrapper
	or an implementation, just pass the implementation to draw_drawable_2.
	
	* gdk/linux-fb/gdkprivate-fb.h:
	Added GDK_IS_DRAWABLE_IMPL_FBDATA()

	* gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
	clear and invalidate area when window is destroyed.
	(send_map_events): Remove old commented out code.

946
947
948
949
950
951
952
953
954
2000-12-05  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkpango-fb.c:
	Use italic instead of oblique in font aliases.
	
	* gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
	_gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
	other unsupported functions.

Havoc Pennington's avatar
Havoc Pennington committed
955
956
957
958
959
960
961
962
963
2000-12-04  Havoc Pennington  <hp@redhat.com>

	* gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane

	* gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler

	* gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler

	* gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
964
	hack to avoid infinite loops (synthetic expose event) - 
Havoc Pennington's avatar
Havoc Pennington committed
965
966
967
968
969
970
971
972
973
974
	Owen has more appropriate fixes in a branch he'll check in later.

	* gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
	separator, CR, and CRLF as line ends

	* gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
	into lines using pango_find_paragraph_boundary(); other bits of
	the widget are still going to be broken if the boundary isn't '\n'
	though

975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
2000-12-04  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
	multiply.

	* gdk/linux-fb/gdkpango-fb.c:
	Copied some 26.6 scaling macros from pango to clean up the rounding.
	(pango_fb_font_get_glyph_info): Correct sign on x value.

	* gdk/linux-fb/gdkprivate-fb.h:
	Removed unreferenced external functions.

	* modules/linux-fb/Makefile.am: Use ` instead of '.

	* modules/linux-fb/basic.c:
	Remove dead code. In particular the dummy lang engine which broke all
	pango layouts in GtkFB. Don't include tables-big.i anymore.

	* modules/linux-fb/tables-big.i:
	Upgrade to latest version from pango. Left for reference, basic_ranges
	moved to basic.c.
	
Havoc Pennington's avatar
Havoc Pennington committed
997
998
999
1000
2000-12-04  Havoc Pennington  <hp@redhat.com>

        Fix bugs Alex found: