summaryrefslogtreecommitdiff
path: root/libcons/ChangeLog
blob: 8a79e6ffcd01e7a3ee018f6da3b9c00d25d2824a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
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
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
2002-09-14  Marcus Brinkmann  <marcus@gnu.org>

	* Makefile (SRCS): Add vcons-input.c.
	* vcons-input.c: New file.

	* vcons-scrollback.c (_cons_vcons_scrollback): New function.
	(cons_vcons_scrollback): Reimplement in terms of
	_cons_vcons_scrollback.
	* cons.h (cons_scroll_t): New type.
	(cons_vcons_scrollback): Update prototype.

	* priv.h (_cons_jump_down_on_input): New extern.
	(_cons_jump_down_on_output): Likewise.
	(_cons_vcons_scrollback): New prototype.
	* opts-std-startup.c (OPT_JUMP_DOWN_ON_INPUT): New macro.
	(OPT_JUMP_DOWN_ON_OUTPUT): Likewise.
	(_cons_jump_down_on_input): New variable.
	(_cons_jump_down_on_output): Likewise.
	(startup_options): Add new options --jump-down-on-input and
	--jump-down-on-output.
	(parse_startup_opt): Handle these new options.
	* file-changed.c (cons_S_file_changed): Support the jump down on
	output option.

2002-09-10  Marcus Brinkmann  <marcus@gnu.org>

	* file-changed.c (cons_S_file_changed): Fix typo in last change.

	* cons.h: New prototype for cons_vcons_set_scroll_lock.
	 (struct vcons): Add member FLAGS to state.
	* file-changed.c (cons_S_file_changed): Handle change of flags.
	* vcons-refresh.c (cons_vcons_refresh): Copy FLAGS field.
	Call cons_vcons_set_scroll_lock.

	* cons-switch.c (cons_switch): Initialize VCONS_ENTRY even if
	DELTA is negative.

2002-09-09  Marcus Brinkmann  <marcus@gnu.org>

	* Makefile (SRCS): Add vcons-scrollback.c.
	* vcons-scrollback.c: New file.
	* cons.h (struct vcons): Add SCROLLING member.
	* file-changed.c: Include <assert.h>.
	(cons_S_file_changed): Be careful to take VCONS->scrolling into
	account when doing clipping and scrolling.

	* cons-switch.c: Roll back to earlier version with vcons ->
	vcons_entry adjustments.  The user is now expected to hold a
	reference to the VCONS.
	* cons.h: Fix prototype, too.
	
	* vcons-open.c (cons_vcons_open): Initialize VCONS->lock,
	VCONS->input and VCONS->display.

	* vcons-remove.c: New file.
	* Makefile (SRCS): Add vcons-destroy.c.
	* cons.h: New type vcons_list_t.
	(struct vcons_list): New structure.
	(struct cons_notify): Remove VCONS member.
	(struct vcons): Remove members NEXT, PREV and NOTIFY.  Add the
	notify structure to the top to make it possible to use a vcons as
	a port.  New member VCONS_ENTRY.
	(struct cons): Change type of members vcons_list and vcons_last to
	vcons_list_t.  Remove member active.
	(cons_vcons_add): Change prototype to match new definition.
	(cons_vcons_remove): Likewise.
	(cons_switch): Likewise.
	(cons_lookup): Likewise.
	(cons_vcons_open): Likewise.
	(cons_vcons_destroy): New prototype.
	* cons-lookup.c (cons_lookup): Change type of R_VCONS argument
	vcons_list_t.  Change type of previous_vcons and vcons variables
	to vcons_list_t.  Append _entry to all these variables.
	Don't allocate and initialize a vcons_t, but a vcons_list_t.
	After this has been added to the list, call cons_vcons_add.
	* cons-switch.c: Do not include <error.h>
	(cons_switch): Add arguments ACTIVE_ID and R_VCONS.  New variable
	ERR and VCONS_ENTRY.  Remove variable ACTIVE.  Do not keep track
	of active console.  Instead, look it up using ACTIVE_ID.  Lock the
	returned console.  Call cons_vcons_open, not cons_vcons_activate.
	* dir-changed.c (add_one): Change VCONS to VCONS_ENTRY and its
	type from vcons_t to vcons_list_t to follow cons_lookup change.
	(lookup_one): Likewise.
	(cons_S_dir_changed): Likewise.
	* file-changed.c (cons_S_file_changed): Cast NOTIFY to VCONS.
	Check that NOTIFY->cons is not set instead that NOTIFY->vcons is.
	* init-init.c (cons_init): Pass cons_vcons_destroy as
	clean_routine to ports_create_class.
	Don't initialize CONS->active, nor DIR_NOTIFY_PORT->vcons.
	* vcons-add.c (cons_vcons_add): Change argument VCONS to CONS and
	VCONS_ENTRY.  Don't do anything here (the user must implement it
	all).
	* vcons-close.c: Don't include <errno.h>, <unistd.h>, <stdio.h>,
	<sys/mman.h>, <sys/fcntl.h>, <mach.h>.  Include <assert.h>,
	<hurd/ports.h> and <cthreads.h>.
	(cons_vcons_close): Clear VCONS->vcons_entry->vcons.  Derefence
	and destroy VCONS.
	* vcons-open.c (cons_vcons_open): Change arguments from VCONS to
	CONS, VCONS_ENTRY and R_VCONS.  New variable VCONS.  Set up VCONS
	as a port, and request notification messages on that.
	* vcons-remove.c: Do not include <errno.h>.
	(cons_vcons_remove): Assert that VCONS_ENTRY does not have an open
	VCONS.

2002-08-28  Marcus Brinkmann  <marcus@gnu.org>

	* file-changed.c (cons_S_file_changed): Take NEW_CUR_LINE modulo
	VCONS->state.screen.lines where appropriate.  Adapt calculation of
	SCROLLING, and limit it to the screen size.
	Only scroll at all if there is something to scroll.
	Fix calculation of scrolled-in area.
	* vcons-refresh.c (cons_vcons_refresh): Take
	VCONS->state.screen.cur_line modulo VCONS->state.screen.lines.

2002-08-22  Marcus Brinkmann  <marcus@gnu.org>

	* demuxer.c, init-init.c, init-loop.c, opts-version.c,
	extra-version.c, dir-changed.c, file-changed.c,
	opts-std-startup.c, cons-lookup.c, cons-switch.c, vcons-remove.c,
	vcons-add.c, vcons-open.c, vcons-close.c, vcons-refresh.c, priv.h,
	mutations.h, cons.h: New files.