tp->num_slots = tp->nactive_slots;
}
-
start = tp->has_mt ? tp->num_slots : 0;
for (i = start; i < tp->ntouches; i++) {
t = tp_get_touch(tp, i);
tp->palm.trackpoint_last_event_time = time;
tp->palm.trackpoint_event_count++;
-
/* Require at least three events before enabling palm detection */
if (tp->palm.trackpoint_event_count < 3) {
libinput_timer_set(&tp->palm.trackpoint_timer,
lo = abs->minimum + 0.10 * range;
}
-
if (hi > abs->maximum || hi < abs->minimum ||
lo > abs->maximum || lo < abs->minimum) {
evdev_log_bug_libinput(device,
if (!tp_init_slots(tp, device))
return false;
-
evdev_device_init_abs_range_warnings(device);
use_touch_size = tp_init_touch_size(tp, device);
return LIBINPUT_CONFIG_SCROLL_BUTTON_LOCK_DISABLED;
}
-
void
evdev_set_button_scroll_lock_enabled(struct evdev_device *device,
bool enabled)
if (!has_joystick_tags)
return false;
-
unsigned int num_well_known_keys = 0;
for (size_t i = 0; i < ARRAY_LENGTH(well_known_keyboard_keys); i++) {
const struct phys_rect *rect,
uint64_t now);
-
/* Return the state of the given switch */
enum libinput_switch_state
(*get_switch_state)(struct evdev_dispatch *dispatch,
#include "libinput-util.h"
#include "filter-private.h"
-
#define TP_MAGIC_SLOWDOWN_FLAT 0.2968
struct touchpad_accelerator_flat {
filter->speed_adjustment = speed_adjustment;
accel_filter->speed_factor = speed_factor(speed_adjustment);
-
return true;
}
filter->speed_adjustment = speed_adjustment;
accel_filter->speed_factor = speed_factor(speed_adjustment);
-
return true;
}
libinput->log_priority <= priority;
}
-
void
log_msg_ratelimit(struct libinput *libinput,
struct ratelimit *ratelimit,
static inline void libinput_libwacom_unref(struct libinput *li) {}
#endif
-
#endif /* LIBINPUT_PRIVATE_H */
#warning "libinput relies on assert(). #defining NDEBUG is not recommended"
#endif
-
#include "libinput.h"
#include "util-bits.h"
struct libinput_seat base;
};
-
static const char default_seat[] = "seat0";
static const char default_seat_name[] = "default";
return q;
}
-
static inline struct property *
quirk_find_prop(struct quirks *q, enum quirk which)
{
_QUIRK_LAST_MODEL_QUIRK_, /* Guard: do not modify */
-
QUIRK_ATTR_SIZE_HINT = 300,
QUIRK_ATTR_TOUCH_SIZE_RANGE,
QUIRK_ATTR_PALM_SIZE_THRESHOLD,
static struct udev_seat *
udev_seat_get_named(struct udev_input *input, const char *seat_name);
-
static inline bool
filter_duplicates(struct udev_seat *udev_seat,
struct udev_device *udev_device)
#define NLONGS(x) (((x) + LONG_BITS - 1) / LONG_BITS)
#define NCHARS(x) ((size_t)(((x) + 7) / 8))
-
/* This bitfield helper implementation is taken from from libevdev-util.h,
* except that it has been modified to work with arrays of unsigned chars
*/
return tv2us(&tval);
}
-
static inline void
input_event_set_time(struct input_event *e,
uint64_t time)
* Wayland project; except that wl_ prefix has been removed.
*/
-
/**
* Doubly linked list implementation. This struct is used for both the list
* nodes and the list head. Use like this:
#define ANSI_BRIGHT_CYAN "\x1B[0;36;1m"
#define ANSI_NORMAL "\x1B[0m"
-
#define ANSI_UP "\x1B[%dA"
#define ANSI_DOWN "\x1B[%dB"
#define ANSI_RIGHT "\x1B[%dC"
#define ANSI_LEFT "\x1B[%dD"
-
#define CASE_RETURN_STRING(a) case a: return #a
#define _fallthrough_ __attribute__((fallthrough))
* DEALINGS IN THE SOFTWARE.
*/
-
#pragma once
#include "config.h"
{
assert(in != NULL);
-
const char *s = in;
size_t l, nelems = 0;
while (next_word(&s, &l, separators) != NULL)
return basename + 1;
}
-
/**
* Similar to basename() but returns the trunk only without the (last)
* trailing suffix, so that:
state == LIBINPUT_KEY_STATE_PRESSED ? "pressed" : "released");
}
-
static void
print_switch_event(struct libinput_event *ev)
{
}
cairo_restore(cr);
-
/* tablet tool, square for prox-in location */
cairo_save(cr);
cairo_set_source_rgb(cr, .2, .6, .6);
abort();
}
-
button = libinput_event_tablet_tool_get_button(t);
state = libinput_event_tablet_tool_get_button_state(t);
time = time_offset(dev->ctx, libinput_event_tablet_tool_get_time_usec(t));
libinput_tablet_pad_mode_group_button_is_toggle(group, button) ? "true" : "false"
);
-
}
static void
libinput_device_config_scroll_set_button_lock(device,
options->scroll_button_lock);
-
if (libinput_device_config_accel_is_available(device)) {
libinput_device_config_accel_set_speed(device,
options->speed);