aboutsummaryrefslogtreecommitdiffstats
path: root/src/xterm.c
diff options
context:
space:
mode:
authorDmitry Antipov2014-09-24 11:17:51 +0400
committerDmitry Antipov2014-09-24 11:17:51 +0400
commit4b930ccbb4fc4b848f318e09eddd172c2acf9b9b (patch)
tree349f033caa6278c11cae123b8d2f949ec7e3df10 /src/xterm.c
parent4620e6bccd98625208d8be4d960d24119a20594f (diff)
downloademacs-4b930ccbb4fc4b848f318e09eddd172c2acf9b9b.tar.gz
emacs-4b930ccbb4fc4b848f318e09eddd172c2acf9b9b.zip
* termhooks.h (enum scroll_bar_part): Begin from 0 to allow...
(struct input_event): ...unsigned bitfields. Likewise for `event_kind' member. Prefer unsigned for `code' and 'modifiers'. Use `timestamp' for HELP_EVENT position. Add compile-time assert. * keyboard.c (gen_help_event, kbd_buffer_store_help_event) (kbd_buffer_get_event): Adjust users. (scroll_bar_parts): Add Qnil to match scroll_bar_nowhere. (make_scroll_bar_position): New function, refactored out of... (make_lispy_event): ...adjusted user. * nsterm.h (EmacsScroller): Use enum for `last_hit_part' member. * nsterm.m (ns_mouse_position, mouseUp): * term.c (term_mouse_position): * w32inevt.c (w32_console_mouse_position): * w32term.c (w32_mouse_position): * xterm.c (XTmouse_position): Use scroll_bar_above_handle. (x_send_scroll_bar_event, xm_scroll_callback, xg_scroll_callback): Prefer enum and explicit enum members to integers and numeric values.
Diffstat (limited to 'src/xterm.c')
-rw-r--r--src/xterm.c19
1 files changed, 11 insertions, 8 deletions
diff --git a/src/xterm.c b/src/xterm.c
index e24e86ce412..89a7453b953 100644
--- a/src/xterm.c
+++ b/src/xterm.c
@@ -4157,7 +4157,7 @@ XTmouse_position (struct frame **fp, int insist, Lisp_Object *bar_window,
4157 dpyinfo->last_mouse_glyph_frame = f1; 4157 dpyinfo->last_mouse_glyph_frame = f1;
4158 4158
4159 *bar_window = Qnil; 4159 *bar_window = Qnil;
4160 *part = 0; 4160 *part = scroll_bar_above_handle;
4161 *fp = f1; 4161 *fp = f1;
4162 XSETINT (*x, win_x); 4162 XSETINT (*x, win_x);
4163 XSETINT (*y, win_y); 4163 XSETINT (*y, win_y);
@@ -4250,7 +4250,8 @@ x_window_to_menu_bar (Window window)
4250 4250
4251#ifdef USE_TOOLKIT_SCROLL_BARS 4251#ifdef USE_TOOLKIT_SCROLL_BARS
4252 4252
4253static void x_send_scroll_bar_event (Lisp_Object, int, int, int, bool); 4253static void x_send_scroll_bar_event (Lisp_Object, enum scroll_bar_part,
4254 int, int, bool);
4254 4255
4255/* Lisp window being scrolled. Set when starting to interact with 4256/* Lisp window being scrolled. Set when starting to interact with
4256 a toolkit scroll bar, reset to nil when ending the interaction. */ 4257 a toolkit scroll bar, reset to nil when ending the interaction. */
@@ -4371,7 +4372,8 @@ xt_horizontal_action_hook (Widget widget, XtPointer client_data, String action_n
4371 amount to scroll of a whole of WHOLE. */ 4372 amount to scroll of a whole of WHOLE. */
4372 4373
4373static void 4374static void
4374x_send_scroll_bar_event (Lisp_Object window, int part, int portion, int whole, bool horizontal) 4375x_send_scroll_bar_event (Lisp_Object window, enum scroll_bar_part part,
4376 int portion, int whole, bool horizontal)
4375{ 4377{
4376 XEvent event; 4378 XEvent event;
4377 XClientMessageEvent *ev = &event.xclient; 4379 XClientMessageEvent *ev = &event.xclient;
@@ -4504,8 +4506,8 @@ xm_scroll_callback (Widget widget, XtPointer client_data, XtPointer call_data)
4504{ 4506{
4505 struct scroll_bar *bar = client_data; 4507 struct scroll_bar *bar = client_data;
4506 XmScrollBarCallbackStruct *cs = call_data; 4508 XmScrollBarCallbackStruct *cs = call_data;
4507 int part = -1, whole = 0, portion = 0; 4509 enum scroll_bar_part part = scroll_bar_nowhere;
4508 int horizontal = bar->horizontal; 4510 int horizontal = bar->horizontal, whole = 0, portion = 0;
4509 4511
4510 switch (cs->reason) 4512 switch (cs->reason)
4511 { 4513 {
@@ -4569,7 +4571,7 @@ xm_scroll_callback (Widget widget, XtPointer client_data, XtPointer call_data)
4569 break; 4571 break;
4570 }; 4572 };
4571 4573
4572 if (part >= 0) 4574 if (part != scroll_bar_nowhere)
4573 { 4575 {
4574 window_being_scrolled = bar->window; 4576 window_being_scrolled = bar->window;
4575 x_send_scroll_bar_event (bar->window, part, portion, whole, bar->horizontal); 4577 x_send_scroll_bar_event (bar->window, part, portion, whole, bar->horizontal);
@@ -4587,8 +4589,9 @@ xg_scroll_callback (GtkRange *range,
4587 gdouble value, 4589 gdouble value,
4588 gpointer user_data) 4590 gpointer user_data)
4589{ 4591{
4592 int whole = 0, portion = 0;
4590 struct scroll_bar *bar = user_data; 4593 struct scroll_bar *bar = user_data;
4591 int part = -1, whole = 0, portion = 0; 4594 enum scroll_bar_part part = scroll_bar_nowhere;
4592 GtkAdjustment *adj = GTK_ADJUSTMENT (gtk_range_get_adjustment (range)); 4595 GtkAdjustment *adj = GTK_ADJUSTMENT (gtk_range_get_adjustment (range));
4593 struct frame *f = g_object_get_data (G_OBJECT (range), XG_FRAME_DATA); 4596 struct frame *f = g_object_get_data (G_OBJECT (range), XG_FRAME_DATA);
4594 4597
@@ -4641,7 +4644,7 @@ xg_scroll_callback (GtkRange *range,
4641 break; 4644 break;
4642 } 4645 }
4643 4646
4644 if (part >= 0) 4647 if (part != scroll_bar_nowhere)
4645 { 4648 {
4646 window_being_scrolled = bar->window; 4649 window_being_scrolled = bar->window;
4647 x_send_scroll_bar_event (bar->window, part, portion, whole, bar->horizontal); 4650 x_send_scroll_bar_event (bar->window, part, portion, whole, bar->horizontal);