Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Open sidebar
emacs
emacs
Commits
55123275
Commit
55123275
authored
Aug 15, 1991
by
Jim Blandy
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
*** empty log message ***
parent
64c669bc
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
58 additions
and
90 deletions
+58
-90
src/xterm.c
src/xterm.c
+58
-90
No files found.
src/xterm.c
View file @
55123275
...
...
@@ -161,7 +161,7 @@ static FONT_TYPE *icon_font_info;
/* Stuff for dealing with the main icon title. */
extern
Lisp_Object
Vcommand_line_args
;
char
*
hostname
,
*
id_name
,
*
invocation_name
;
Lisp_Object
invocation_name
;
/* This is the X connection that we are using. */
...
...
@@ -1525,50 +1525,45 @@ static char *events[] =
"0: ERROR!"
,
"1: REPLY"
,
"KeyPress"
,
"KeyRelease"
,
"ButtonPress"
,
"ButtonRelease"
,
"MotionNotify"
,
"EnterNotify"
,
"LeaveNotify"
,
"FocusIn"
,
"FocusOut"
,
"KeymapNotify"
,
"Expose"
,
"GraphicsExpose"
,
"NoExpose"
,
"VisibilityNotify"
,
"CreateNotify"
,
"DestroyNotify"
,
"UnmapNotify"
,
"MapNotify"
,
"MapRequest"
,
"ReparentNotify"
,
"ConfigureNotify"
,
"ConfigureRequest"
,
"GravityNotify"
,
"ResizeRequest"
,
"CirculateNotify"
,
"CirculateRequest"
,
"PropertyNotify"
,
"SelectionClear"
,
"SelectionRequest"
,
"SelectionNotify"
,
"ColormapNotify"
,
"ClientMessage"
,
"MappingNotify"
,
"LASTEvent"
"KeyRelease"
,
"ButtonPress"
,
"ButtonRelease"
,
"MotionNotify"
,
"EnterNotify"
,
"LeaveNotify"
,
"FocusIn"
,
"FocusOut"
,
"KeymapNotify"
,
"Expose"
,
"GraphicsExpose"
,
"NoExpose"
,
"VisibilityNotify"
,
"CreateNotify"
,
"DestroyNotify"
,
"UnmapNotify"
,
"MapNotify"
,
"MapRequest"
,
"ReparentNotify"
,
"ConfigureNotify"
,
"ConfigureRequest"
,
"GravityNotify"
,
"ResizeRequest"
,
"CirculateNotify"
,
"CirculateRequest"
,
"PropertyNotify"
,
"SelectionClear"
,
"SelectionRequest"
,
"SelectionNotify"
,
"ColormapNotify"
,
"ClientMessage"
,
"MappingNotify"
,
"LASTEvent"
};
#else
/* X10 */
#define XEvent XKeyPressedEvent
#endif
/* HAVE_X11 */
/* Symbols returned in the input stream to indicate various X events. */
Lisp_Object
Qmapped_screen
;
Lisp_Object
Qunmapped_screen
;
Lisp_Object
Qexited_scrollbar
;
Lisp_Object
Qexited_window
;
Lisp_Object
Qredraw_screen
;
Lisp_Object
Qmouse_click
;
Lisp_Object
Qscrollbar_click
;
...
...
@@ -1804,12 +1799,17 @@ XTread_socket (sd, bufp, numchars, waitp, expected)
&
keysym
,
&
status
);
/* Strip off the vendor-specific keysym bit, and take a shot
at recognizing the codes. HP servers have extra keysyms
that fit into the MiscFunctionKey category. */
keysym
&=
~
(
1
<<
28
);
if
(
numchars
>
1
)
{
if
(
IsCursorKey
(
keysym
)
/*
>=
0xff50 < 0xff60 */
||
IsMiscFunctionKey
(
keysym
)
/*
>=
0xff60 < 0xff80 */
||
IsKeypadKey
(
keysym
)
/* >=
0xff80
<= 0xffb
d
*/
||
IsFunctionKey
(
keysym
))
/* >=
0xffbe <
=
0xffe
0
*/
if
(
IsCursorKey
(
keysym
)
/* 0xff50
<= x
< 0xff60 */
||
IsMiscFunctionKey
(
keysym
)
/* 0xff60
<= x
< 0xff80 */
||
IsKeypadKey
(
keysym
)
/*
0xff80 <=
x <
0xffb
e
*/
||
IsFunctionKey
(
keysym
))
/*
0xffbe
<= x
< 0xffe
1
*/
{
bufp
->
kind
=
non_ascii_keystroke
;
bufp
->
code
=
(
unsigned
)
keysym
-
0xff50
;
...
...
@@ -2647,10 +2647,6 @@ x_text_icon (s, icon_name)
char
*
X_DefaultValue
;
Bitmap
b1
;
#if 0 /* This doesn't seem to be used, but I can't quite believe it. */
static Pixmap grey_pixmap;
#endif
#ifndef WhitePixel
#define WhitePixel 1
#endif
...
...
@@ -2665,7 +2661,9 @@ x_text_icon (s, icon_name)
if
(
icon_font_info
==
0
)
icon_font_info
=
XGetFont
(
XGetDefault
(
XDISPLAY
invocation_name
,
"BodyFont"
));
=
XGetFont
(
XGetDefault
(
XDISPLAY
(
char
*
)
XSTRING
(
invocation_name
)
->
data
,
"BodyFont"
));
#ifdef HAVE_X11
if
(
icon_name
)
...
...
@@ -3566,19 +3564,6 @@ x_wm_set_icon_position (s, icon_x, icon_y)
}
static
void
init_input_symbols
()
{
Qmapped_screen
=
intern
(
"mapped-screen"
);
Qunmapped_screen
=
intern
(
"unmapped-screen"
);
Qexited_scrollbar
=
intern
(
"exited-scrollbar"
);
Qexited_window
=
intern
(
"exited-window"
);
Qredraw_screen
=
intern
(
"redraw-screen"
);
Qmouse_moved
=
intern
(
"mouse-moved"
);
Qmouse_click
=
intern
(
"mouse-click"
);
Qscrollbar_click
=
intern
(
"scrollbar-click"
);
}
void
x_term_init
(
display_name
)
char
*
display_name
;
...
...
@@ -3598,37 +3583,11 @@ x_term_init (display_name)
#ifdef HAVE_X11
{
int
hostname_size
=
MAXHOSTNAMELEN
+
1
;
hostname
=
(
char
*
)
xmalloc
(
hostname_size
);
#if 0
XSetAfterFunction (x_current_display, x_trace_wire);
#endif
invocation_name
=
(
char
*
)
XSTRING
(
Ffile_name_nondirectory
(
Fcar
(
Vcommand_line_args
)))
->
data
;
/* Try to get the host name; if the buffer is too short, try
again. Apparently, the only indication gethostname gives of
whether the buffer was large enough is the presence or absence
of a '\0' in the string. Eech. */
for
(;;)
{
gethostname
(
hostname
,
hostname_size
-
1
);
hostname
[
hostname_size
-
1
]
=
'\0'
;
/* Was the buffer large enough for gethostname to store the '\0'? */
if
(
strlen
(
hostname
)
<
hostname_size
-
1
)
break
;
hostname_size
<<=
1
;
hostname
=
(
char
*
)
xrealloc
(
hostname
,
hostname_size
);
}
id_name
=
(
char
*
)
xmalloc
(
strlen
(
invocation_name
)
+
strlen
(
hostname
)
+
2
);
sprintf
(
id_name
,
"%s@%s"
,
invocation_name
,
hostname
);
invocation_name
=
Ffile_name_nondirectory
(
Fcar
(
Vcommand_line_args
));
}
dup2
(
ConnectionNumber
(
x_current_display
),
0
);
...
...
@@ -3692,8 +3651,6 @@ x_term_init (display_name)
off the bottom */
baud_rate
=
19200
;
init_input_symbols
();
XHandleError
(
x_error_handler
);
XHandleIOError
(
x_error_handler
);
...
...
@@ -3704,5 +3661,16 @@ x_term_init (display_name)
signal
(
SIGPIPE
,
x_error_handler
);
}
void
syms_of_xterm
()
{
staticpro
(
&
invocation_name
);
invocation_name
=
Qnil
;
Qmouse_moved
=
intern
(
"mouse-moved"
);
Qmouse_click
=
intern
(
"mouse-click"
);
Qscrollbar_click
=
intern
(
"scrollbar-click"
);
}
#endif
/* HAVE_X11 */
#endif
/* HAVE_X_WINDOWS */
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment