Req New entry in input devices: Disable keystrokes detection!
#1
Brick 
Kodi can be used in multi-monitor , one for kodi like a HDTV and monitors for normal PC activities as is with some limitation like avoiding focus to Kodi if a user is using keyboard and the use of fullscreen windowed.

Even if we use kodi with a remote via web control (json...eventserver..) like Yatse or official remote app in phone/tablets the keyboard in the computer who run kodi can (and will) send keystrokes to it IF it has the focus and provoke an argument with the partner/family/kids using kodi with the TV.

I know that i can add a user keyboardmap.xml and set "noop" action to each keystroke detected (with focus).

I can also do this for ALL keys (a tedious job...) or even edit the master keymap and compile a custom version with keystrokes detection ERRADICATED (empty keyboard section in keymap).

It's also know that we can use 3rd part programs to avoid focus on kodi like limit to mouse to monitor or multi-monitor soft with this function.

BUT it will be easy more convenient and elegant to add a new option in input devices:

Disable keystroke detection (with these states):

- Off (default)
- On
- Select devices to disable


"Off" leave things as default: keystrokes are detected and action follow for defined by key pressed.
"On" will set ALL keystrokes to "noop" effectively disabling keyboard.
"Select" will disable selected USB or HID USB keyboard.
Reply
#2
While I think that is something that is better handled by the OS itself, in theory I think some of this is already possible in Kodi. Keymaps can be reloaded on demand, and an add-on could be used to simply rename a keymap file which would either prevent the file from being loaded, or allow it to be loaded like normal. Specific keyboard or other input devices can be identified on some level, but I'm not sure how far. At the very least it could switch on and off all keyboards while still allowing standard remotes to function. That could give you your three modes. You'd want to map the toggling button (for the script) to something that never turns "off", of course.

I'm not really sure on the details on how to do this. I only have a very basic understanding of python. I'm not sure what it would look like to have Kodi check to see if a file is named one way and then rename it if needed. I suspect that it's not entirely complicated, though.

Still, it might be much easier to see if you can disable this on the OS level per-application. It could even still be something that Kodi triggers, but it would avoid having to make a script or make an entire keymap of "noop" settings. From your other posts it looks like you were on the right path by looking at Event Ghost. I'm not very familiar with Windows, though.
Reply
#3
(2014-11-27, 03:03)Ned Scott Wrote: While I think that is something that is better handled by the OS itself, in theory I think some of this is already possible in Kodi. Keymaps can be reloaded on demand, and an add-on could be used to simply rename a keymap file which would either prevent the file from being loaded, or allow it to be loaded like normal. Specific keyboard or other input devices can be identified on some level, but I'm not sure how far. At the very least it could switch on and off all keyboards while still allowing standard remotes to function. That could give you your three modes. You'd want to map the toggling button (for the script) to something that never turns "off", of course.

I think the easiest and shortest way to prevent keystrokes interaction with kodi without addon, keyboard.xml edition or kodi master keymap file edition is to keep always out of focus alway: Without focus keystrokes never are processed by kodi.

But this is not a very elegant soliution...Undecided

What do you think is better handled by OS handled?

Maybe i'm wrong but i think the OS (at least in windows) make keystrokes from all keyboards attached "regular" USB, HID USB IR ones like remotes with keyboard in them or even ps2 availaible to the focused software, simply that.

Multiple keyboard.xml could be added in user keymap folder and an addon should be able to select it and make it the active one by renaming it and backing up the former.

(2014-11-27, 03:03)Ned Scott Wrote: I'm not really sure on the details on how to do this. I only have a very basic understanding of python. I'm not sure what it would look like to have Kodi check to see if a file is named one way and then rename it if needed. I suspect that it's not entirely complicated, though.

I have no knowdlege at all in python..or in any code by the way. I must trust what you say! Big Grin

(2014-11-27, 03:03)Ned Scott Wrote: Still, it might be much easier to see if you can disable this on the OS level per-application. It could even still be something that Kodi triggers, but it would avoid having to make a script or make an entire keymap of "noop" settings. From your other posts it looks like you were on the right path by looking at Event Ghost. I'm not very familiar with Windows, though.

AFIK even EventGhost who is specialized in process codes from remotes and keyboard is not able to distinguish between keyboard keystrokes origin: it gets keystrokes from all or none.

Maybe is not so easy.

i asked for this feature in part cause i'm lazy.Big Grin

I don't want to edit a long keyboard.xml filling "noop" in each keyboard assigned action or ideally connect to github and compile a keyboard free version editing the master keymap.

This is the reason i ask for this as a feature.
Reply
#4
1. Your use case doesn't hit the intention of using Kodi (multi monitor is more used for 1 person sitting in front of it and surfing the net while watching a movie on the second screen instead someone else wanting to use kodi at the same time like it was on a different pc)
2. What you want is just not possible in a generic way because of what you already pointed out. Disabling keyboard would result in my nyxboard remote not working anymore for example. You get all or nothing and we can't distinguish the source of any Key or Mouse event.

I understand the request but don't expect anything to be done in that area (because it will simply not work for most of the people). Instead you should consider bying a cheap android box and attach that to your TV to have the needed seperation between what you do on your PC and what your family does on the TV.
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#5
you could run kodi on a separate X session.
Reply
#6
(2014-11-27, 11:55)Memphiz Wrote: 1. Your use case doesn't hit the intention of using Kodi (multi monitor is more used for 1 person sitting in front of it and surfing the net while watching a movie on the second screen instead someone else wanting to use kodi at the same time like it was on a different pc)
2. What you want is just not possible in a generic way because of what you already pointed out. Disabling keyboard would result in my nyxboard remote not working anymore for example. You get all or nothing and we can't distinguish the source of any Key or Mouse event.

I understand the request but don't expect anything to be done in that area (because it will simply not work for most of the people). Instead you should consider bying a cheap android box and attach that to your TV to have the needed seperation between what you do on your PC and what your family does on the TV.

It's obvious that the development path decisions must be set by............YOU the team developers and i can't argue with that. Smile

I don't want to force anybody to disable the keyboard usability in Kodi, i only asked for a feature to do it if someone wants to.

I was looking for an universal remote to control my TV, HTPC and an AV receiver and i realize that the trend goes for all digital and ip based control solutions.

Right now i'm using three independent solutions for that: an official app to control the TV, Yatse to control kodi and another official app to control my AV receiver.

This is far from perfect because cause I must go back and forth between apps in my tablet using the multitask switch but this is WAY more convenient than the use of a flymouse remote with a keyboard on the back (i also have one of those) and a remote for each device in the living room!

I can't afford the cost and time to setup an unified (and amazing) all ip based solution on tablet/phone like irule,iridium or roomie maybe some day.

My idea is like you said: multi-user, multi-monitor.

If it was possible in a generic way i'm sure that some addon had solved this problem long time ago.

I'm in the process of replacing all actions in a user keyboard.xml to "noop" and I will post it when I finish for all users who use a no keyboard based remote control for kodi and want to use his htpc/pc for other task at the same time.

Thanks for your recomendation about the android box but i already have more than enough os based devices in my living room:

- A laptop
- A high end PC
- A nexus 7 tablet
- A 10' HP android slatebook
- An HTPC running kodi, P2P software and vnc.
- A NAS server with 12 TB in multimedia content

And more hardware like 60' plasma HDTV, a 27' monitor attached to computer and HTPC as primary for both, smartphones, multifunction printer, gaming consoles, two UPS, a high end WiFi router, another one only for network switch duties, a complete collection of remote controllers and gamepads... All in 15 squared meter living room.

Do you get the figure?

I want to reduce and unify its use not add more devices. Big Grin
Reply
#7
Well based on the nice load of stuff in your living room you should be able to split up the kodi to the tv somehow really.

Also for you its "just requesting an option for deactivating the keyboard". For us there are some more things to consider which most users just don't really accept (because they need a very individual solution mostly).

If we add an option for disabling the keyboard. The first thing that will happen is a big support load in the forum because of "I switched that and after that was not able to do anything anymore".

Users activate/deactivate things just because they are there without knowing what it does. Best example for this are crash reports of users who obviously activated some random PVR addon - they don't even know what PVR means nor do they have a proper backend or a proper configuration for it.

As bigger as the project gets as more we will try to get rid those really special use case requests (or at least we try to prevent inclusion for those special cases). If we don't set the firewall pretty high here - the support burdon will eat up our time soon and there will be nothing coded at all anymore.
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#8
@wsnipex

I'm not using linux on this htpc but a solution could be the reverse:

I can install a linux in a minimized vmware/virtualbox to host an run the P2P and additional software there managing it via VNC from tablets or computer avoiding the focus and keyboard problems and as a bonus i could run kodi fulscreen.

This solution obviously defeat the purpose of real multimonitor but implement a complete multiuser OS one local and one remote.

(2014-11-27, 17:30)Memphiz Wrote: Also for you its "just requesting an option for deactivating the keyboard". For us there are some more things to consider which most users just don't really accept (because they need a very individual solution mostly).

If we add an option for disabling the keyboard. The first thing that will happen is a big support load in the forum because of "I switched that and after that was not able to do anything anymore".

Users activate/deactivate things just because they are there without knowing what it does. Best example for this are crash reports of users who obviously activated some random PVR addon - they don't even know what PVR means nor do they have a proper backend or a proper configuration for it.

As bigger as the project gets as more we will try to get rid those really special use case requests (or at least we try to prevent inclusion for those special cases). If we don't set the firewall pretty high here - the support burdon will eat up our time soon and there will be nothing coded at all anymore.

Good point regular users use to be like kids...pressing every key on sight and crying it doesn't work anymore! Big Grin

Maybe adding an option in advancedsettings.xml to disable keyboard as input could solve the kid-like user problem...
Reply
#9
You realise that our mult monitor support works like any other application do you? ^^ - i don't accept your use case - maybe this clarifys my opinion on it a bit better.
AppleTV4/iPhone/iPod/iPad: HowTo find debug logs and everything else which the devs like so much: click here
HowTo setup NFS for Kodi: NFS (wiki)
HowTo configure avahi (zeroconf): Avahi_Zeroconf (wiki)
READ THE IOS FAQ!: iOS FAQ (wiki)
Reply
#10
(2014-11-27, 23:12)Memphiz Wrote: You realise that our mult monitor support works like any other application do you? ^^ - i don't accept your use case - maybe this clarifys my opinion on it a bit better.

Your opinion (decision) is crystal clear for me.

You are a developer of a project i enjoy every day for free and i asked you to add a feature to it for free, if you dislike it's the end of the conversation.

I must put some time on those "noop" to adapt kodi to my personal use or even better compile it without keyboard support.

Thank you very much to you and all developers to made kodi possible. Nod
Reply

Logout Mark Read Team Forum Stats Members Help
New entry in input devices: Disable keystrokes detection!0