ChangeLog.pre-2-8 377 KB
Newer Older
Havoc Pennington's avatar
Havoc Pennington committed
1
2
3
4
2000-12-21  Havoc Pennington  <hp@redhat.com>

	* tests/testtreeview.c: more work

5
6
7
8
9
2000-12-21  Alexander Larsson  <alexl@redhat.com>

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

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
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.
	
43
44
45
46
47
48
49
50
51
52
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.

53
54
55
56
57
58
59
60
61
62
63
64
65
66
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
	
67
68
69
70
71
72
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.

73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
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.
	
92
93
94
95
96
97
98
99
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().

100
101
2000-12-16  Havoc Pennington  <hp@pobox.com>

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
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
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
	* 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>
	
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
	* 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
	
204
205
206
207
208
2000-12-14  Havoc Pennington  <hp@pobox.com>

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

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

245
246
247
248
249
2000-12-14  Havoc Pennington  <hp@redhat.com>

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

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

323
324
325
326
327
328
2000-12-13  Havoc Pennington  <hp@pobox.com>

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

	* gtk/gtktext*.[hc]: update accordingly
	
329
330
331
332
333
334
335
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

336
2000-12-13  Alex Larsson  <alexl@redhat.com>
337
338
339
340
341
342
343
344
345
346
347

	* 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.
	
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
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 ;)

407
408
409
410
411
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)

412
413
414
415
416
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.

417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
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.
	
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
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. 

494
495
496
497
498
499
500
501
502
503
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.

504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
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;

521
522
523
524
525
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.

526
527
528
529
530
531
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.

532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
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).

550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
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
567
568
569
570
571
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
572
573
574
575
576
2000-12-08  Alexander Larsson  <alla@lysator.liu.se>

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

577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
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.
	
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
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

637
638
639
640
641
2000-12-07  Havoc Pennington  <hp@pobox.com>

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

642
2000-12-06  Elliot Lee  <sopwith@redhat.com>
643

644
	* configure.in: Detect freetype properly
645

646
647
	* modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
	above.
648

Alexander Larsson's avatar
Alexander Larsson committed
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
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.

679
680
681
682
683
684
685
686
687
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
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
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)

716
2000-12-05  Elliot Lee  <sopwith@redhat.com>
717

718
719
720
	* gdk/gdkcolor.h: Make GdkColor specify element sizes
	to avoid waste on 64-bit platforms.

721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
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)

744
745
746
747
748
2000-12-05  Alexander Larsson  <alexl@redhat.com>

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

749
750
751
752
753
754
755
756
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
757
758
759
760
Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>

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

761
762
763
764
765
766
767
768
769
770
771
772
773
774
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.

775
776
777
778
779
780
781
782
783
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
784
785
786
787
788
789
790
791
792
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 
793
	hack to avoid infinite loops (synthetic expose event) - 
Havoc Pennington's avatar
Havoc Pennington committed
794
795
796
797
798
799
800
801
802
803
	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

804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
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
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
2000-12-04  Havoc Pennington  <hp@redhat.com>

        Fix bugs Alex found:
	
	* gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
	to "draw"

	* gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"

	* gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"

	* gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
	implementation in here, apparently the expose() implementation was
	dead code.

Alexander Larsson's avatar
Alexander Larsson committed
841
842
843
844
845
2000-12-04  Alexander Larsson  <alexl@redhat.com>

	* gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
	Return positive descent.

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

	* gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
	method and signal
	
	* gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
	calls gdk_window_process_updates() to push the exposes through
	(gtk_widget_class_init): No more draw signal, no
	gtk_widget_real_draw()	
	
	* gtk/gtkbin.c (gtk_bin_draw): remove

	* gtk/gtkbox.c (gtk_box_draw): remove

	* gtk/gtkbutton.c (gtk_button_draw): remove

	* gtk/gtkcalendar.c (gtk_calendar_draw): remove

	* gtk/gtkcheckbutton.c (gtk_check_button_draw): remove

	* gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove

	* gtk/gtkclist.c (gtk_clist_draw): remove

	* gtk/gtkentry.c (gtk_entry_draw): remove

	* gtk/gtkeventbox.c (gtk_event_box_draw): remove

	* gtk/gtkfixed.c (gtk_fixed_draw): remove

	* gtk/gtkframe.c (gtk_frame_draw): remove

	* gtk/gtkhandlebox.c (gtk_handle_box_draw): remove

	* gtk/gtkhpaned.c (gtk_hpaned_draw): remove

	* gtk/gtklayout.c (gtk_layout_draw): remove

	* gtk/gtklist.c (gtk_list_draw): remove

	* gtk/gtklistitem.c (gtk_list_item_draw): remove

	* gtk/gtkmenu.c (gtk_menu_draw): remove

	* gtk/gtkmenubar.c (gtk_menu_bar_draw): remove

	* gtk/gtkmenuitem.c (gtk_menu_item_draw): remove

	* gtk/gtknotebook.c (gtk_notebook_draw): remove

	* gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove

	* gtk/gtkpacker.c (gtk_packer_draw): remove

	* gtk/gtkrange.c (gtk_range_draw): remove

	* gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove

	* gtk/gtkspinbutton.c (gtk_spin_button_draw): remove

	* gtk/gtktable.c (gtk_table_draw): remove

	* gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove

	* gtk/gtktext.c (gtk_text_draw): remove

	* gtk/gtktextview.c (gtk_text_view_draw): remove

	* gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove

	* gtk/gtktoolbar.c (gtk_toolbar_draw): remove

	* gtk/gtktree.c (gtk_tree_draw): remove

	* gtk/gtktreeitem.c (gtk_tree_item_draw): remove

	* gtk/gtktreeview.c (gtk_tree_view_draw): remove

	* gtk/gtkviewport.c (gtk_viewport_draw): remove

	* gtk/gtkvpaned.c (gtk_vpaned_draw): remove

	* gtk/gtkvscale.c (gtk_vscale_draw): remove

	* gtk/gtkwindow.c (gtk_window_draw): remove

932
933
934
935
936
937
2000-20-01  Anders Carlsson  <andersca@gnu.org>

	* gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
	a GtkToggleButton is both insensitive and active, it was being
	drawn by the GtkButton draw handler which doesn't check the
	state. Now it's calling gtk_toggle_button_paint instead.
Havoc Pennington's avatar
Havoc Pennington committed
938
939
	
2000-12-01  Havoc Pennington  <hp@redhat.com>
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

	* gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
	dangling pointers to the appearance attributes from the 
	line display

	* gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
	width/height to mean "full width/height of drawable"

 	* gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
	click to select word/line
	
	* gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
	when getting log attrs. Get a slice, so that pixmaps and stuff
	are properly handled.

	* gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
	paste into the selection (replaces selection now, previously
	crashed or added to selection). Reveals longstanding btree bug -
	select multiple lines, middle-click on the selection, boom. This
	isn't related to my changes though.

	* gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
	PangoLogAttrs changes
	(gtk_entry_move_backward_word): ditto

        * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
 	functions return bool whether the iter moved onto a
 	dereferenceable position.
 
 	* gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
 	functions for motion in terms of display lines.

	* gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
	get the buffer a mark is inside
	
2000-12-01  Alexander Larsson  <alexl@redhat.com>
976
977
978
979
980
981
982
983
984
985
986

	* gdk/linux-fb/Makefile.am:
	* modules/linux-fb/Makefile.am:
	Freetype 2 final uses freetype-config

	* gdk/linux-fb/gdkpango-fb.c:
	Upgrade to use Freetype 2 final.
	More flexible support for font aliases, this also fixes a bug with
	GtkFontSelector, as the aliases must be visible in the font/family list,
	or GtkFontSelector reads uninitialized memory.

987
988
989
990
991
992
993
994
995
996
997
998
999
1000
2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>

	* modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
	XGetIMValues to properly terminate variable argument list, and do
	NULL return check for ic_values and xim_styles.

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
	Restore preedit state after XmbResetIC().
	
	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
	XvaCreateNestedList() should take XvaNestedList, but not
	XvaNestedList*.

	* modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
For faster browsing, not all history is shown. View entire blame