wavexx / screenkey

A screencast tool to display your keys inspired by Screenflick
https://www.thregr.org/~wavexx/software/screenkey/
GNU General Public License v3.0
758 stars 65 forks source link

Add support for showing the mouse clicks #65

Closed zaygraveyard closed 5 years ago

zaygraveyard commented 6 years ago

Based on @khalilfazal's work see #45 Fixes #43

TODO

ChameleonScales commented 6 years ago

About changing the mouse color, have you tried using an svg file instead of a png, then having the script access the file and change the hexadecimal color in "style="opacity:1;fill:#ffffff" ?

zaygraveyard commented 6 years ago

Last time I tried rendering an SVG it didn't work (but it's also possible that I did some mistakes :sweat_smile:)

zaygraveyard commented 6 years ago

Just tested rendering an SVG and it works like any normal image, so there's hope :wink:

zaygraveyard commented 6 years ago

The color of the mouse is now set to the color of the text

ChameleonScales commented 6 years ago

I resent you 10€ since you've done more work on it since last time. It's not much but I can't really do more unfortunately

zaygraveyard commented 6 years ago

I received them, thanks a lot :smile: you rock :metal: I was thinking of adding a mouse circling feature (like the one in keymon), do you need such a feature?

ChameleonScales commented 6 years ago

You mean a little circle around the cursor ? That would definitely be a good addition and I'm sure many would use it.

What I would find particularly useful is displaying the pressed mouse buttons around the cursor, like I showed in this post. Maybe in a visually clearer way (more spaced out and bigger), but it would be useful for tutorials, as the viewer wouldn't have to constantly move his eyes frantically around the screen to see what button is pressed and rewind when he would miss it. And it would also make this program more unique. If you think it's doable, tell me so I ask the community of tutorial makers if they would like such a feature to see if it's worth developing and if you could be backed up financially.

zaygraveyard commented 6 years ago

Yes, a circle positioned when the user clicked, for example.

After doing some tests, I believe it's doable. So if you or anyone in the community have ideas let me know :smile: Plus if anyone can donate that would be epic.

ChameleonScales commented 6 years ago

Ok, I'll ask them. And do you think there could be a different circle/shape for the different mouse buttons ?

zaygraveyard commented 6 years ago

I'm thinking of something like every time the mouse is clicked (any button) a new circle is drawn in the position of the click and it fades out with time (and maybe gets smaller or bigger), like a wave caused by the click. We can also have different colors for each button or even different shapes (square, star, or even an arrow).

ChameleonScales commented 6 years ago

The problem with this wave idea is what would happen if you hold and drag ? Having a whole boat's trail behind the cursor would really start occluding the view and on the other hand having only one circle at the start position would hide the information that the user is holding the click. I think making the circle/shape follow the cursor would be maybe less pretty but more practical.

Also, rather than using different colors or custom shapes to differentiate the buttons, which would not be very intuitive for a new viewer of some tutorial channel, using shapes resembling the mouse buttons and positioning them around the cursor accordingly would make the information clear about what button is pressed for a new viewer.

zaygraveyard commented 6 years ago

I totally agree with making the shape follow the cursor when dragging (although it might be harder), and I wouldn't have made it do a boat's trail 😉

As for how to distinguish the mouse buttons, I was just saying what's possible and not suggesting we actually us a star 😉

ghost commented 6 years ago

@zaygraveyard, it's look like also need make some changes in README.rst as some dependency added in #65 and #66

Install dependencies (on Debian/Ubuntu):

sudo apt-get install python-gtk2 python-setuptools python-distutils-extra
zaygraveyard commented 6 years ago

@Symbian9 this PR doesn't require any new dependencies and #66 has been updated

ChameleonScales commented 6 years ago

Apparently I'm not the first guy to come up with the idea to show the mouse actions around the cursor. This tutor is already using a windows program that does it, (I don't know what program it is but it's windows so I don't care)

ChameleonScales commented 6 years ago

As the "mouse actions around cursor" is another feature, I added issue #73 for it so we can discuss about it there.

wavexx commented 4 years ago

So I temporarily unarchived the repository because I'd like to contact @zaygraveyard @khalilfazal @4e6 @seletskiy as you did work on screenkey in the past. I'd like somebody else to take maintainership for the project.

See here:

https://gitlab.com/wavexx/screenkey/issues/95

I know I moved the repository to gitlab, but it hardly matters, as there was next to zero development done on it. So any option for me is fine.

zaygraveyard commented 4 years ago

@wavexx I responded on the GitLab issue (I'm @ziadkh0 there)

ghost commented 4 years ago

This github repository is no longer updated.

I know I moved the repository to gitlab, but it hardly matters, as there was next to zero development done on it. So any option for me is fine.

@wavexx, could you setup this GitHub repo to be as mirror of Gitlab repo in the future? In same way, as GrafX2's team did it:

wavexx commented 4 years ago

We could do that, gitlab has support for mirroring built-in. GitHub cannot disable PRs for the project though, and if you look around, you often see people making PRs on the wrong repository where this is being done. I'd personally go with a single repo, in either gitlab or github, but let's wait a bit more