Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mouse support? #54

Open
knghtbrd opened this issue Jul 8, 2022 · 14 comments
Open

Mouse support? #54

knghtbrd opened this issue Jul 8, 2022 · 14 comments

Comments

@knghtbrd
Copy link

knghtbrd commented Jul 8, 2022

Is it perhaps possible that mouse support might be implemented using Consolation? Either taking some advantage of its codebase or creating whatever bridge might be necessary for it to work. I suggest Consolation rather than GPM because the former has a lot more support for hardware using libinput than GPM does.

If there's any semblance of the necessary support to be found, I'd be interested in helping with the glue. If I'm far off base and mouse support would have to be done from scratch, it's not a project I'd want to take on myself at the moment.

@pataquets
Copy link

I'd like to add, Consolation would be great, but better yet if offers accessing the clipboard/selection from scripting.
In the past, I tried to access selection with GPM and failed. Just my 2c.

@knghtbrd
Copy link
Author

knghtbrd commented Jul 8, 2022

It might be that easy. Consolation expects to access a VT and this kinda isn't that. Perhaps one, the other, or both could be extended to work together, or maybe much of Consolation's code needs to more or less be embedded into kmscon. If that's the case, it may not be a desirable solution. I haven't looked yet and if someone else has maybe I'm wasting my time even thinking about it or perhaps someone's already working on something. In which case working together might speed up development.

@Aetf
Copy link
Owner

Aetf commented Jul 13, 2022

Likely this will require support first in https://github.com/Aetf/libtsm, which is what kmscon uses internally. I'm not familiar with mouse support in terminals in general, so can't estimation the amount of work needed. But feel free to experiment. I'll try to review if you end up with something and can explain to me :)

@fdupress
Copy link

fdupress commented Apr 5, 2023

MacSlow implemented some gpm-like mouse support a few months back: dvdhrm#99 (comment)

Given the work was done on a sibling fork, I don't imagine a rebase will be particularly straightforward, but it might be good to reach out.

@MacSlow
Copy link

MacSlow commented Jul 20, 2023

MacSlow implemented some gpm-like mouse support a few months back: dvdhrm#99 (comment)

Given the work was done on a sibling fork, I don't imagine a rebase will be particularly straightforward, but it might be good to reach out.

I still need to do that... and hopefully will do this in the next few days... since I want to get my stuff in the hands of more people able to easily test mouse/cut/paste support and my gyro-sensor stuff.

In case people wonder what I am talking about... have a look at the "screencasts" here: https://www.youtube.com/playlist?list=PLXvTBWcnTI1OHF7-Op-ASYsQKKg1TYb5Z

Just wanted to jump in and say it's coming and I am not dead ;)

@MacSlow
Copy link

MacSlow commented Jul 21, 2023

Moved/ported the output-rotation support already... see https://github.com/MacSlow/kmscon-aetf/tree/aetf-output-rotation-support.

This is against aetf's develop branch.

Now working on the mouse-selection/cut/paste support... maybe by tomorrow if all things go smooth. After that the gyro-sensor support.

@MacSlow
Copy link

MacSlow commented Jul 22, 2023

Just finished moving/porting over the mouse selection/cut/paste support too. If you want to try it out give https://github.com/MacSlow/kmscon-aetf/tree/aetf-mouse-support a spin. This also includes the output-rotation support, since it's build on top of that branch.

The gyro-sensor support is the last thing I still need to do, but that will have to wait for tomorrow... I am dead tired right now... good night!

@grepsuzette
Copy link

Wow amazing! Thank you.
Will try to test the mouse support this week.

@MacSlow
Copy link

MacSlow commented Jul 22, 2023

For what it's worth... Consolation can be found here: https://salsa.debian.org/consolation-team/consolation. So far, as @Aetf mentioned, libtsm does not yet interface with Consolation in any way. Thus there is no clipboard- or scripting-support in the mouse-selection I implemented... if that's what Consolation provides.

That being said, there is nothing stopping libtsm to be extended with probing-support of a running Consolation-daemon and using that if found or if not found falling back to my current implementation.

I am just looking into the codebase of Consolation to see/guess what amount of work it might be.

@MacSlow
Copy link

MacSlow commented Jul 22, 2023

The gyro-sensor stuff is also ported now. It's in branch https://github.com/MacSlow/kmscon-aetf/tree/aetf-gyro-support.

This is how stuff looks like now:

  • aetf's develop branch -> my aetf-output-rotation-support branch -> my aetf-mouse-support branch -> my aetf-gyro-support branch

I also wrote viccie30 about me finally having ported my stuff over. At the end of January I contacted Victor that I was working on these three features and was wondering how to upstream stuff. Not having my patches based on aetf's branch was the major blocker. With this now sorted, I hope it'll be easier to get things upstream.

@MacSlow
Copy link

MacSlow commented Jul 24, 2023

Related pull-request is also up... see #75

@pascalJakobs
Copy link

Hello alll,
On raspberry Dietpi, I'm new to kmscon but up to now it matches most of my needs and look very promising, I just wonder why mouse support is not yet included. Is there anything I could do to help?
have a nice day

@MacSlow
Copy link

MacSlow commented Dec 28, 2023

Hello alll, On raspberry Dietpi, I'm new to kmscon but up to now it matches most of my needs and look very promising, I just wonder why mouse support is not yet included. Is there anything I could do to help? have a nice day

If you know people with commit-rights (and time to review my PRs) poke them to look at my PRs :)

@pascalJakobs
Copy link

I'm just an earthworm mate, but I can try one idea. Keep you posted.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

7 participants