Xfce Forum

Sub domains
 

You are not logged in.

#1 2018-03-27 19:03:35

Meie
Member
Registered: 2018-03-27
Posts: 2

Different modifier keys for window drag/resize?

Hi

Is it possible to use for example "Super_L + mouse left" for drag and "Alt_L + mouse left" for resize?
The short version for reason being that recent evdev -> libinput change broke my setup for two-button
Logitech trackball.

Offline

#2 2018-03-27 19:56:24

MountainDewManiac
Member
From: Where Mr. Bankruptcy is Prez
Registered: 2013-03-24
Posts: 1,019

Re: Different modifier keys for window drag/resize?

Meie wrote:

The short version for reason being that recent evdev -> libinput change broke my setup for two-button
Logitech trackball.

Is that the one referred to as a Marble Mouse? I ask because I'm still remarkably ignorant about linux (other than being able to use it), so I sometimes will grab a couple keywords from one of these threads and do a web search in order to attempt to get a vague understanding of what people are talking about.

I did that here, using evdev, libinput, Logitech, and trackball. And I found this thread:

https://wiki.archlinux.org/index.php/Logitech_Marble_Mouse#Using_evdev

where I read:

Using evdev
Note: Scrolling described below does not work on Cinnamon as of March 2018 - but the libinput configuration given later works.

Different DE, I know. And knowing how badly my search fu skills have been working recently, maybe not helpful. However, it might provide some basic clues to help until our resident Xfce guru gets here. And who knows, maybe that web page has enough to light your way?

Using libinput

As of version 3.16 GDM/Gnome uses libinput. For the device to work as described in the above section you need to install xf86-input-libinput and instead append this to /etc/X11/xorg.conf.d/10-libinput.conf.

/etc/X11/xorg.conf.d/10-libinput.conf

Section "InputClass"
        Identifier      "Marble Mouse"
        MatchProduct    "Logitech USB Trackball"
        Driver          "libinput"
        Option          "ScrollMethod" "button"
        Option          "ScrollButton" "8"
    Option        "MiddleEmulation" "on"
EndSection

Regards,
MDM


Mountain Dew Maniac

How to Ask for Help <=== Click on this link

Offline

#3 2018-03-28 07:19:23

Meie
Member
Registered: 2018-03-27
Posts: 2

Re: Different modifier keys for window drag/resize?

Hi MDM

First things first: I would still like to know if I could use different modifier keys for window drag and resize.

I know that and few other related pages. I guess they all refer to a newer version of Marble trackball with four buttons: two big and two small. I have older one with only two big buttons. Anyway, I have 2 real buttons and no MiddleEmulation option. I have (by software definition) button 2, the "press both buttons simultaneously", but cannot use it as scroll modifier button.
I have even older PS2 Logitech Marble FX with four real buttons but the ball is heavily scratched and if there's one thing I loathe it's scratchy-jittery trackball. But I digress, here's data for connected Logitech Marble Mouse USB:

$ sudo libinput list-devices
[cut]
Device:           Logitech Trackball
Kernel:           /dev/input/event6
Group:            6
Seat:             seat0, default
Capabilities:     pointer 
Tap-to-click:     n/a
Tap-and-drag:     n/a
Tap drag lock:    n/a
Left-handed:      disabled
Nat.scrolling:    disabled
Middle emulation: n/a
Calibration:      n/a
Scroll methods:   button
Click methods:    none
Disable-w-typing: n/a
Accel profiles:   flat *adaptive
Rotation:         0.0

$ xinput list-props 'Logitech Trackball'
Device 'Logitech Trackball':
        Device Enabled (152):   1
        Coordinate Transformation Matrix (154): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
        libinput Natural Scrolling Enabled (287):       0
        libinput Natural Scrolling Enabled Default (288):       0
        libinput Left Handed Enabled (289):     0
        libinput Left Handed Enabled Default (290):     0
        libinput Accel Speed (291):     1.000000
        libinput Accel Speed Default (292):     0.000000
        libinput Accel Profiles Available (293):        1, 1
        libinput Accel Profile Enabled (294):   1, 0
        libinput Accel Profile Enabled Default (295):   1, 0
        libinput Scroll Methods Available (296):        0, 0, 1
        libinput Scroll Method Enabled (297):   0, 0, 1
        libinput Scroll Method Enabled Default (298):   0, 0, 1
        libinput Button Scrolling Button (299): 3
        libinput Button Scrolling Button Default (300): 3
        libinput Rotation Angle (301):  0.000000
        libinput Rotation Angle Default (302):  0.000000
        libinput Send Events Modes Available (272):     1, 0
        libinput Send Events Mode Enabled (273):        0, 0
        libinput Send Events Mode Enabled Default (274):        0, 0
        Device Node (275):      "/dev/input/event6"
        Device Product ID (276):        1133, 50178
        libinput Drag Lock Buttons (303):       <no items>
        libinput Horizontal Scroll Enabled (304):       1

$ xinput get-button-map 'Logitech Trackball'
1 2 3 4 5 6 7

$ xinput set-prop 'Logitech Trackball' 'libinput Button Scrolling Button' 1

$ xinput set-prop 'Logitech Trackball' 'libinput Button Scrolling Button' 2
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  131 (XInputExtension)
  Minor opcode of failed request:  57 ()
  Value in failed request:  0x12b
  Serial number of failed request:  20
  Current serial number in output stream:  21

$ xinput set-prop 'Logitech Trackball' 'libinput Button Scrolling Button' 3

$ xinput set-prop 'Logitech Trackball' 'libinput Middle Emulation Enabled' 1
property 'libinput Middle Emulation Enabled' doesn't exist, you need to specify its type and format

Offline

Board footer

Powered by FluxBB