[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[patch #3386] Add repeater and mouse support to the console
From: |
Marcus Brinkmann |
Subject: |
[patch #3386] Add repeater and mouse support to the console |
Date: |
Tue, 11 Jan 2005 21:26:48 +0000 |
User-agent: |
Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040413 Galeon/1.3.15 (Debian package 1.3.15-2) |
This is an automated notification sent by Savannah.
It relates to:
patch #3386, project The GNU Hurd
==============================================================================
LATEST MODIFICATIONS of patch #3386:
==============================================================================
Posted by: Marcus Brinkmann <marcus>
Posted on: 2005-01-11 21:26 (Europe/Berlin)
_______________________________________________________
Status: None -> Applied
Assigned to: marcus -> marco_g
Open/Closed: Open -> Closed
_______________________________________________________
Follow-up Comment:
Some version of this patch was applied.
libcons/
2005-01-06 Marco Gerards <metgerards@student.han.nl>
* Makefile (SRCS): Add `vcons-move-mouse.c' and `vcons-event.c'.
* cons.h (mouse_movement): New enum.
(mouse_button): Likewise.
(mouse_event): New struct.
(mouse_event_t): New type.
(cons_vcons_set_mousecursor_pos): New prototype.
(cons_vcons_set_mousecursor_status): Likewise.
(cons_vcons_move_mouse): Likewise.
* file-changed.c (cons_S_file_changed): Generate the
`CONS_EVT_OUTPUT' event, in case there was output.
* opts-std-startup.c (OPT_MOUSE_SHOW, OPT_MOUSE_HIDE)
(OPT_MOUSE_SENS, DEFAULT_MOUSE_SENS, DEFAULT_MOUSE_SENS_STRING):
New macros.
(_cons_show_mouse, _cons_hide_mouse, _cons_mouse_sens): New
variables.
(startup_options): Add the options `--mouse-show-on',
`--mouse-hide-on' and `--mouse-sensitivity'.
(parse_startup_opt): Parse the options that were added to
`startup_options' using the new local function `parse_events'.
* priv.h (CONS_EVT_MOUSE_MOVE, CONS_EVT_MOUSE_BUTTON)
(CONS_EVT_KEYPRESS, CONS_EVT_OUTPUT): New macros.
(_cons_show_mouse, _cons_hide_mouse, _cons_mouse_sens): New
declarations.
(_cons_vcons_input): New prototype.
(_cons_vcons_console_event): Likewise.
* vcons-event.c: New file.
* vcons-move-mouse.c: Likewise.
* vcons-input.c (_cons_vcons_input): New function.
(cons_vcons_input): Rewritten to use _cons_vcons_input and report
the `CONS_EVT_KEYPRESS' event.
* vcons-refresh.c: Include "priv.h".
(cons_vcons_refresh): Report the `CONS_EVT_OUTPUT' event.
* vcons-scrollback.c: Include "priv.h".
(cons_vcons_scrollback): Report the `CONS_EVT_OUTPUT' event.
console-client/
2005-01-06 Marco Gerards <metgerards@student.han.nl>
* Makefile (SRCS): Add `trans.c'.
(LCLHDRS): Add `mach-inputdev.h'.
(HURDLIBS): Add `netfs', `fshelp' and `iohelp'.
(modules): Add `pc_mouse'.
(pc_kbd.so.$(hurd-version)): Add `kdioctlServer.o' and
`kbd-repeat.c'.
(pc_mouse.so.$(hurd-version)): New variable.
* console.c: Include <trans.h>.
(DEFAULT_CONSOLE_NODE): New macro.
(saved_id, saved_cons, consnode_path): New variables.
(console_move_mouse): New function.
(console_switch_away): New function.
(console_switch_back): Likewise.
(cons_vcons_set_mousecursor_pos): Likewise.
(cons_vcons_set_mousecursor_status): Likewise.
(options): Add the option `--console-node'.
(parse_opt): Parse the options that were added to `options'.
(main): Setup the console client translator node.
* display.h (display_ops): New members `set_mousecursor_pos' and
`set_mousecursor_status'.
* driver.c (driver_start): Change the type of `i' to `unsigned
int'.
* driver.h (driver_ops): New members `save_status' and
`restore_status'.
* input.h (console_switch_away): New prototype.
(console_switch_back): Likewise.
(console_move_mouse): Likewise.
* kbd-repeat.c: New file.
* mach-inputdev.h: Likewise.
* pc-mouse.c: Likewise.
* trans.c: Likewise.
* trans.h: Likewise.
* pc-kbd.c: Include <argp.h> and "mach-inputdev.h".
(DEFAULT_REPEATER_NODE): New macro.
(repeater_node, cnode): New variables.
(kev_type, mouse_motion, Scancode, m_deltaX, m_deltaY, MOUSE_LEFT)
(MOUSE_MIDDLE, MOUSE_RIGHT, MOUSE_MOTION, KEYBD_EVENT)
(IOCPARM_MASK, IOC_OUT, IOC_IN, _IOC, _IOR, _IOW, KDSKBDMODE,
(KB_EVENT, KB_ASCII, KDGKBDTYPE, KB_VANILLAKB, KDSETLEDS):
Removed.
(gnumach_v1_input_next): Call the repeater when repeating is
active.
(doc, options, argp): New variables.
(parse_opt): New function.
(pc_kbd_init): Function rewritten.
(pc_kbd_start): Initialize the repeater, when it is active.
(pc_kbd_fini): Destroy the console node.
* vga.c (vga_mousecursor): New struct.
(vga_mousecursor_t): New type.
(mousecursor): New variable.
(hide_mousecursor): New function.
(draw_mousecursor): Likewise.
(vga_display_restore_status): Likewise.
(vga_display_update): Likewise.
(vga_set_mousecursor_pos): Likewise.
(vga_set_mousecursor_status): Likewise.
(vga_display_scroll): Update the mousecursor state.
(driver_vga_ops): Add `vga_display_restore_status'.
(vga_display_op): Add `vga_display_update',
`vga_set_mousecursor_pos'
and `vga_set_mousecursor_status'.
==============================================================================
OVERVIEW of patch #3386:
==============================================================================
URL:
<http://savannah.gnu.org/patch/?func=detailitem&item_id=3386>
Summary: Add repeater and mouse support to the console
Project: The GNU Hurd
Submitted by: marco_g
Submitted on: Thu 09/23/04 at 21:40
Category: Console
Priority: 7 - High
Status: Applied
Privacy: Public
Assigned to: marco_g
Originator Email:
Open/Closed: Closed
_______________________________________________________
This patches add support for mouse support to both
libcon and the console client. The event mechanism of
libcons was generalised.
The patch also adds repeater support to the console client.
_______________________________________________________
Follow-up Comments:
-------------------------------------------------------
Date: Tue 01/11/05 at 21:26 By: Marcus Brinkmann <marcus>
Some version of this patch was applied.
libcons/
2005-01-06 Marco Gerards <metgerards@student.han.nl>
* Makefile (SRCS): Add `vcons-move-mouse.c' and `vcons-event.c'.
* cons.h (mouse_movement): New enum.
(mouse_button): Likewise.
(mouse_event): New struct.
(mouse_event_t): New type.
(cons_vcons_set_mousecursor_pos): New prototype.
(cons_vcons_set_mousecursor_status): Likewise.
(cons_vcons_move_mouse): Likewise.
* file-changed.c (cons_S_file_changed): Generate the
`CONS_EVT_OUTPUT' event, in case there was output.
* opts-std-startup.c (OPT_MOUSE_SHOW, OPT_MOUSE_HIDE)
(OPT_MOUSE_SENS, DEFAULT_MOUSE_SENS, DEFAULT_MOUSE_SENS_STRING):
New macros.
(_cons_show_mouse, _cons_hide_mouse, _cons_mouse_sens): New
variables.
(startup_options): Add the options `--mouse-show-on',
`--mouse-hide-on' and `--mouse-sensitivity'.
(parse_startup_opt): Parse the options that were added to
`startup_options' using the new local function `parse_events'.
* priv.h (CONS_EVT_MOUSE_MOVE, CONS_EVT_MOUSE_BUTTON)
(CONS_EVT_KEYPRESS, CONS_EVT_OUTPUT): New macros.
(_cons_show_mouse, _cons_hide_mouse, _cons_mouse_sens): New
declarations.
(_cons_vcons_input): New prototype.
(_cons_vcons_console_event): Likewise.
* vcons-event.c: New file.
* vcons-move-mouse.c: Likewise.
* vcons-input.c (_cons_vcons_input): New function.
(cons_vcons_input): Rewritten to use _cons_vcons_input and report
the `CONS_EVT_KEYPRESS' event.
* vcons-refresh.c: Include "priv.h".
(cons_vcons_refresh): Report the `CONS_EVT_OUTPUT' event.
* vcons-scrollback.c: Include "priv.h".
(cons_vcons_scrollback): Report the `CONS_EVT_OUTPUT' event.
console-client/
2005-01-06 Marco Gerards <metgerards@student.han.nl>
* Makefile (SRCS): Add `trans.c'.
(LCLHDRS): Add `mach-inputdev.h'.
(HURDLIBS): Add `netfs', `fshelp' and `iohelp'.
(modules): Add `pc_mouse'.
(pc_kbd.so.$(hurd-version)): Add `kdioctlServer.o' and
`kbd-repeat.c'.
(pc_mouse.so.$(hurd-version)): New variable.
* console.c: Include <trans.h>.
(DEFAULT_CONSOLE_NODE): New macro.
(saved_id, saved_cons, consnode_path): New variables.
(console_move_mouse): New function.
(console_switch_away): New function.
(console_switch_back): Likewise.
(cons_vcons_set_mousecursor_pos): Likewise.
(cons_vcons_set_mousecursor_status): Likewise.
(options): Add the option `--console-node'.
(parse_opt): Parse the options that were added to `options'.
(main): Setup the console client translator node.
* display.h (display_ops): New members `set_mousecursor_pos' and
`set_mousecursor_status'.
* driver.c (driver_start): Change the type of `i' to `unsigned
int'.
* driver.h (driver_ops): New members `save_status' and
`restore_status'.
* input.h (console_switch_away): New prototype.
(console_switch_back): Likewise.
(console_move_mouse): Likewise.
* kbd-repeat.c: New file.
* mach-inputdev.h: Likewise.
* pc-mouse.c: Likewise.
* trans.c: Likewise.
* trans.h: Likewise.
* pc-kbd.c: Include <argp.h> and "mach-inputdev.h".
(DEFAULT_REPEATER_NODE): New macro.
(repeater_node, cnode): New variables.
(kev_type, mouse_motion, Scancode, m_deltaX, m_deltaY, MOUSE_LEFT)
(MOUSE_MIDDLE, MOUSE_RIGHT, MOUSE_MOTION, KEYBD_EVENT)
(IOCPARM_MASK, IOC_OUT, IOC_IN, _IOC, _IOR, _IOW, KDSKBDMODE,
(KB_EVENT, KB_ASCII, KDGKBDTYPE, KB_VANILLAKB, KDSETLEDS):
Removed.
(gnumach_v1_input_next): Call the repeater when repeating is
active.
(doc, options, argp): New variables.
(parse_opt): New function.
(pc_kbd_init): Function rewritten.
(pc_kbd_start): Initialize the repeater, when it is active.
(pc_kbd_fini): Destroy the console node.
* vga.c (vga_mousecursor): New struct.
(vga_mousecursor_t): New type.
(mousecursor): New variable.
(hide_mousecursor): New function.
(draw_mousecursor): Likewise.
(vga_display_restore_status): Likewise.
(vga_display_update): Likewise.
(vga_set_mousecursor_pos): Likewise.
(vga_set_mousecursor_status): Likewise.
(vga_display_scroll): Update the mousecursor state.
(driver_vga_ops): Add `vga_display_restore_status'.
(vga_display_op): Add `vga_display_update',
`vga_set_mousecursor_pos'
and `vga_set_mousecursor_status'.
-------------------------------------------------------
Date: Thu 09/23/04 at 23:28 By: Marcus Brinkmann <marcus>
Here my notes so far, mostly for the libcons patch.
libcons:
vcons.h:
* Always document global definitions in header files. Developers look there
first (well, I do).
* Pay attention to name space issues. MOUSE -> CONS_VCONS_MOUSE
* MOUSE_MOVE_PROC -> MOUSE_MOVE_ABS_PERCENT
* cons_vcons_move_mouse is not documented.
opts-std-startup.c:
* #define DEFAULT_MOUSE_SENS_STRING STRINGIFY(DEFAULT_SLACK)
c&p error, should be (DEFAULT_MOUSE_SENS)
* beautify help output: lowercase the arguments to --mouse-show.
* How about --mouse-show-on= ? This seems to be more legible. Same for
other.
* global mouse sensitivity is ok, we need per-device sensitivity, too,
though
vcons-move-mouse.c
* Don't access flags before taking lock.
* "a xterm" -> "an xterm" (you say "eks" for x, so there is a vowel at
the beginning, although it's not written).
* Implement
priv.h:
* CONSEVT_ -> CONS_EVT_ is more readable I think. MOUSEMOVE -> MOUSE_MOVE
MOUSEBUTTON -> MOUSE_BUTTON. KEYPRESS -> KEY ? Not sure about the last
one.
console:
console.c:
* Document console_move_mouse(). There's a useless statement in there
(vcons = active_vcons is twice).
_______________________________________________________
File Attachments:
-------------------------------------------------------
Date: Thu 09/23/04 at 21:41 Name: console_repeater.diff Size: 65.73KB By:
marco_g
<http://savannah.gnu.org/patch/download.php?item_id=3386&item_file_id=3697>
-------------------------------------------------------
Date: Thu 09/23/04 at 21:40 Name: libcons_repeater.diff Size: 17.08KB By:
marco_g
<http://savannah.gnu.org/patch/download.php?item_id=3386&item_file_id=3696>
==============================================================================
This item URL is:
<http://savannah.gnu.org/patch/?func=detailitem&item_id=3386>
_______________________________________________
Message sent via/by Savannah
http://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [patch #3386] Add repeater and mouse support to the console,
Marcus Brinkmann <=