PR: 17559
Approved by: jkh You can't enable 'emulate 3 button' option for moused in sysinstall. This adds a menu option to set moused_flags and the help text explains that entering "-3" will enable this feature.
This commit is contained in:
parent
d8af287caf
commit
471d7061ad
|
@ -426,7 +426,9 @@ DMenu MenuMouse = {
|
|||
{ "2 Enable", "Test and run the mouse daemon", NULL, mousedTest, NULL, NULL },
|
||||
{ "3 Type", "Select mouse protocol type", NULL, dmenuSubmenu, NULL, &MenuMouseType },
|
||||
{ "4 Port", "Select mouse port", NULL, dmenuSubmenu, NULL, &MenuMousePort },
|
||||
{ "5 Disable", "Disable the mouse daemon", NULL, mousedDisable, NULL, NULL },
|
||||
{ "5 Flags", "Set additional flags", dmenuVarCheck, setMouseFlags,
|
||||
NULL, VAR_MOUSED_FLAGS "=" },
|
||||
{ "6 Disable", "Disable the mouse daemon", NULL, mousedDisable, NULL, NULL },
|
||||
{ NULL } },
|
||||
};
|
||||
|
||||
|
|
|
@ -37,10 +37,12 @@ mousedTest(dialogMenuItem *self)
|
|||
{
|
||||
char *type;
|
||||
char *port;
|
||||
char *flags;
|
||||
int ret;
|
||||
|
||||
type = variable_get(VAR_MOUSED_TYPE);
|
||||
port = variable_get(VAR_MOUSED_PORT);
|
||||
flags = variable_get(VAR_MOUSED_FLAGS);
|
||||
if ((type == NULL) || (port == NULL)
|
||||
|| (strlen(type) <= 0) || (strlen(port) <= 0)
|
||||
|| (strcmp(type, "NO") == 0)) {
|
||||
|
@ -52,7 +54,7 @@ mousedTest(dialogMenuItem *self)
|
|||
if (file_readable("/var/run/moused.pid"))
|
||||
vsystem("kill `cat /var/run/moused.pid`");
|
||||
systemExecute("vidcontrol -m on");
|
||||
vsystem("moused -t %s -p %s", type, port);
|
||||
vsystem("moused -t %s -p %s %s", type, port, flags);
|
||||
|
||||
ret = msgYesNo("Now move the mouse and see if it works.\n"
|
||||
"(Note that buttons don't have any effect for now.)\n\n"
|
||||
|
@ -78,6 +80,21 @@ mousedDisable(dialogMenuItem *self)
|
|||
variable_set2(VAR_MOUSED, "NO", 1);
|
||||
variable_set2(VAR_MOUSED_TYPE, "NO", 1);
|
||||
variable_unset(VAR_MOUSED_PORT);
|
||||
variable_unset(VAR_MOUSED_FLAGS);
|
||||
msgConfirm("The mouse daemon is disabled.");
|
||||
return DITEM_SUCCESS;
|
||||
}
|
||||
|
||||
int
|
||||
setMouseFlags(dialogMenuItem *self)
|
||||
{
|
||||
int ret;
|
||||
ret = variable_get_value(VAR_MOUSED_FLAGS,
|
||||
"Please Specify the mouse daemon flags. If you would like to\n"
|
||||
"emulate 3 buttons, use -3 here.\n", 1)
|
||||
? DITEM_SUCCESS : DITEM_FAILURE;
|
||||
if (ret != DITEM_SUCCESS)
|
||||
variable_unset(VAR_MOUSED_FLAGS);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
|
@ -130,6 +130,7 @@
|
|||
#define VAR_MEDIA_TYPE "mediaType"
|
||||
#define VAR_MEDIA_TIMEOUT "MEDIA_TIMEOUT"
|
||||
#define VAR_MOUSED "moused_enable"
|
||||
#define VAR_MOUSED_FLAGS "moused_flags"
|
||||
#define VAR_MOUSED_PORT "moused_port"
|
||||
#define VAR_MOUSED_TYPE "moused_type"
|
||||
#define VAR_NAMESERVER "nameserver"
|
||||
|
@ -660,6 +661,7 @@ extern char *sstrncpy(char *dst, const char *src, int size);
|
|||
/* mouse.c */
|
||||
extern int mousedTest(dialogMenuItem *self);
|
||||
extern int mousedDisable(dialogMenuItem *self);
|
||||
extern int setMouseFlags(dialogMenuItem *self);
|
||||
|
||||
/* msg.c */
|
||||
extern Boolean isDebug(void);
|
||||
|
|
|
@ -426,7 +426,9 @@ DMenu MenuMouse = {
|
|||
{ "2 Enable", "Test and run the mouse daemon", NULL, mousedTest, NULL, NULL },
|
||||
{ "3 Type", "Select mouse protocol type", NULL, dmenuSubmenu, NULL, &MenuMouseType },
|
||||
{ "4 Port", "Select mouse port", NULL, dmenuSubmenu, NULL, &MenuMousePort },
|
||||
{ "5 Disable", "Disable the mouse daemon", NULL, mousedDisable, NULL, NULL },
|
||||
{ "5 Flags", "Set additional flags", dmenuVarCheck, setMouseFlags,
|
||||
NULL, VAR_MOUSED_FLAGS "=" },
|
||||
{ "6 Disable", "Disable the mouse daemon", NULL, mousedDisable, NULL, NULL },
|
||||
{ NULL } },
|
||||
};
|
||||
|
||||
|
|
|
@ -130,6 +130,7 @@
|
|||
#define VAR_MEDIA_TYPE "mediaType"
|
||||
#define VAR_MEDIA_TIMEOUT "MEDIA_TIMEOUT"
|
||||
#define VAR_MOUSED "moused_enable"
|
||||
#define VAR_MOUSED_FLAGS "moused_flags"
|
||||
#define VAR_MOUSED_PORT "moused_port"
|
||||
#define VAR_MOUSED_TYPE "moused_type"
|
||||
#define VAR_NAMESERVER "nameserver"
|
||||
|
@ -660,6 +661,7 @@ extern char *sstrncpy(char *dst, const char *src, int size);
|
|||
/* mouse.c */
|
||||
extern int mousedTest(dialogMenuItem *self);
|
||||
extern int mousedDisable(dialogMenuItem *self);
|
||||
extern int setMouseFlags(dialogMenuItem *self);
|
||||
|
||||
/* msg.c */
|
||||
extern Boolean isDebug(void);
|
||||
|
|
|
@ -426,7 +426,9 @@ DMenu MenuMouse = {
|
|||
{ "2 Enable", "Test and run the mouse daemon", NULL, mousedTest, NULL, NULL },
|
||||
{ "3 Type", "Select mouse protocol type", NULL, dmenuSubmenu, NULL, &MenuMouseType },
|
||||
{ "4 Port", "Select mouse port", NULL, dmenuSubmenu, NULL, &MenuMousePort },
|
||||
{ "5 Disable", "Disable the mouse daemon", NULL, mousedDisable, NULL, NULL },
|
||||
{ "5 Flags", "Set additional flags", dmenuVarCheck, setMouseFlags,
|
||||
NULL, VAR_MOUSED_FLAGS "=" },
|
||||
{ "6 Disable", "Disable the mouse daemon", NULL, mousedDisable, NULL, NULL },
|
||||
{ NULL } },
|
||||
};
|
||||
|
||||
|
|
|
@ -37,10 +37,12 @@ mousedTest(dialogMenuItem *self)
|
|||
{
|
||||
char *type;
|
||||
char *port;
|
||||
char *flags;
|
||||
int ret;
|
||||
|
||||
type = variable_get(VAR_MOUSED_TYPE);
|
||||
port = variable_get(VAR_MOUSED_PORT);
|
||||
flags = variable_get(VAR_MOUSED_FLAGS);
|
||||
if ((type == NULL) || (port == NULL)
|
||||
|| (strlen(type) <= 0) || (strlen(port) <= 0)
|
||||
|| (strcmp(type, "NO") == 0)) {
|
||||
|
@ -52,7 +54,7 @@ mousedTest(dialogMenuItem *self)
|
|||
if (file_readable("/var/run/moused.pid"))
|
||||
vsystem("kill `cat /var/run/moused.pid`");
|
||||
systemExecute("vidcontrol -m on");
|
||||
vsystem("moused -t %s -p %s", type, port);
|
||||
vsystem("moused -t %s -p %s %s", type, port, flags);
|
||||
|
||||
ret = msgYesNo("Now move the mouse and see if it works.\n"
|
||||
"(Note that buttons don't have any effect for now.)\n\n"
|
||||
|
@ -78,6 +80,21 @@ mousedDisable(dialogMenuItem *self)
|
|||
variable_set2(VAR_MOUSED, "NO", 1);
|
||||
variable_set2(VAR_MOUSED_TYPE, "NO", 1);
|
||||
variable_unset(VAR_MOUSED_PORT);
|
||||
variable_unset(VAR_MOUSED_FLAGS);
|
||||
msgConfirm("The mouse daemon is disabled.");
|
||||
return DITEM_SUCCESS;
|
||||
}
|
||||
|
||||
int
|
||||
setMouseFlags(dialogMenuItem *self)
|
||||
{
|
||||
int ret;
|
||||
ret = variable_get_value(VAR_MOUSED_FLAGS,
|
||||
"Please Specify the mouse daemon flags. If you would like to\n"
|
||||
"emulate 3 buttons, use -3 here.\n", 1)
|
||||
? DITEM_SUCCESS : DITEM_FAILURE;
|
||||
if (ret != DITEM_SUCCESS)
|
||||
variable_unset(VAR_MOUSED_FLAGS);
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
|
|
@ -130,6 +130,7 @@
|
|||
#define VAR_MEDIA_TYPE "mediaType"
|
||||
#define VAR_MEDIA_TIMEOUT "MEDIA_TIMEOUT"
|
||||
#define VAR_MOUSED "moused_enable"
|
||||
#define VAR_MOUSED_FLAGS "moused_flags"
|
||||
#define VAR_MOUSED_PORT "moused_port"
|
||||
#define VAR_MOUSED_TYPE "moused_type"
|
||||
#define VAR_NAMESERVER "nameserver"
|
||||
|
@ -660,6 +661,7 @@ extern char *sstrncpy(char *dst, const char *src, int size);
|
|||
/* mouse.c */
|
||||
extern int mousedTest(dialogMenuItem *self);
|
||||
extern int mousedDisable(dialogMenuItem *self);
|
||||
extern int setMouseFlags(dialogMenuItem *self);
|
||||
|
||||
/* msg.c */
|
||||
extern Boolean isDebug(void);
|
||||
|
|
Loading…
Reference in New Issue