Comments (16)
- The layout is not great for eyegaze users.
- Current BLE device name should be a label or text box not looking like a button, preferably at the top or else at the bottom like a status bar.
- There's no display of the device list without going to delete which feels a bit dangerous.
- As some voca software can't accept text returned from a cli call they can't display the current ble device name after calling ble_cmd:switch. I have had to resort to popping up the QT app and killing it on a timer (yuk!). I'm toying with the idea of an simple alternate QT app that only displays the device name and no more as a pop-up which self-dismisses after a short time (possibly with delay time as a parameter?).
from relaykeys.
The qt has keycode tables. It should use the cli_keymap
from relaykeys.
Yeah. Re current device.
I do think it could benefit from https://github.com/ms7m/notify-py for
- changing device name
- And infact any return info from CLI (eg failed to send).
So maybe what we need is a flag โnotify on CLI that if any data returns notify os. If not just return as we currently do.
Because. Yeah. It would help people using this with limited programming interfaces.
from relaykeys.
It has its attractions but need to check how this works for accessibity. Programs like communicator5 use pop-ups designed for accessibility (but prob can't tap into their system for RK all we could do is emulate something similar.)
from relaykeys.
Ok downside is a user has to turn off a default windows setting for full screen apps under focus assist:
But looks to be working fine. - but give it a go Joe
from relaykeys.
I was looking at the now discontinued keyshare manual and it got me thinking that maybe we need an indicator light for whether it's connected or not. In its simplest state it just shows a pairing/paired status and a connected status.
More info at http://iogear.custhelp.com/app/answers/detail/a_id/2583
from relaykeys.
Maybe this is for next time.. Looks like a lot of work. But maybe this kind of larger button but still minimal interface through effectively tabs is an idea: https://github.com/anjalp/Minimalistic-Flat-Modern-GUI-Template
from relaykeys.
Here's my latest idea.
- 4 big tabs down left or on top. Capture , Macro, devices ,connection
- capture : toggle switches for capture keyboard & another for capture mouse. Indicator icon for connected to board. Indicator icon for connected to a device. Label to show what device it's connected to. Switch device button. Last sent characters field at bottom.
- macro tab. Our macro buttons. Record , play etc
- devices tab. List of devices. Remove selected. Remove all. Add a device.
- relaykeys/ connection (?). Connected indicator. Reconnect. Wireless mode on / off etc.
Couple of poor diagrams attached
from relaykeys.
I do think it could benefit from https://github.com/ms7m/notify-py for
i13 eyegaze user confirms you cannot dismiss Windows Toast popups. I haven't been able to to compile notify.py and install on the i13 yet so tested using a calender event: the popup visible above Communicator 5 but eyegaze actions restricted to communicator itself. Windows control doesn't apply at this point while c5 is running.
I think Toast is the the "proper" solution and good for some users, but for accessibility it MUST implement an auto-timeout AND be given alarm priority as the voca must always be set to no notifications, alarms only. Without implementing both of these, and as Voca software can't handle CLI return info, a small pop-up QT app that just displays the device name only then self-dismisses will be needed.
...flag โnotify on CLI that if any data returns notify os. If not just return as we currently do.
If you add toast, YES.
from relaykeys.
Hmm. Interesting. I assumed it would timeout. Ok. So might need to figure out an alternative. Not sure what that is. I wonder if there is a timeout time setting buried somewhere..
Update..
@joedevsys Need to look at this. Do these settings do anything Joe? https://www.tenforums.com/tutorials/6175-change-how-long-show-notifications-windows-10-a.html Not sure how relevant it is. if it worked I can see me offering to regedit this on windows
from relaykeys.
Sorry, I should have been clearer - if notifications have been restricted to Alarms Only (e.g. to avoid being distractions on a VOCA), then the RK notification would need to be an Alarm (scenario attribute) to get through, but it appears Alarms do not timeout and I can't see a way to add one.
So, next thing to try is Focus Assist=Priority Only and configure it to minimise unwanted stuff while permitting RK to send normal notifications. (Your link to the timeout setting noted)
from relaykeys.
I compiled the notify-py simple example which works ok. Setting Focus Assist=Priority Only stops it popping up as you'd expect (the event is shown in the events list ok), however it's not possible to add the test program to the Focus Assist Priority List so the popup's can't be enabled again - the app would need to register an AppUserModelId before it can be added to the priority list. Not sure if this library supports this. https://github.com/DatGuy1/Windows-Toasts might be better but lacking documentation of this area so going to need some digging.
from relaykeys.
Thanks @joedevsys -I'll look into that AppUserModelId - it looks like its more of an installer thing rather than the actual notify thing (https://docs.microsoft.com/en-us/windows/win32/shell/enable-desktop-toast-with-appusermodelid). If thats the case we should be able to register cli-win.exe cli.exe with a AppUserModelId using this https://nsis.sourceforge.io/WinShell_plug-in - but still not 100% convinced.
By the way - a large amount of commits to the workflow later - you can grab the latest installer on any commits to master on the action tab. e.g. (see at the bottom under artifacts
https://github.com/AceCentre/RelayKeys/actions/runs/2684972767 )
from relaykeys.
A few layout suggestions:
-Move Change Mode to the device menu instead of a button as it's used infrequently during setup, similar to adding/removing devices.
-Always restart the timer (not just when not connected) so that if the dongle is disconnected later the change of status is displayed.
-Refresh the current device name on the timer as well so you no longer need a refresh button.
from relaykeys.
Thanks @joedevsys -I'll look into that AppUserModelId - it looks like its more of an installer thing rather than the actual notify thing (https://docs.microsoft.com/en-us/windows/win32/shell/enable-desktop-toast-with-appusermodelid). If thats the case we should be able to register cli-win.exe cli.exe with a AppUserModelId using this https://nsis.sourceforge.io/WinShell_plug-in - but still not 100% convinced.
By the way - a large amount of commits to the workflow later - you can grab the latest installer on any commits to master on the action tab. e.g. (see at the bottom under artifacts https://github.com/AceCentre/RelayKeys/actions/runs/2684972767 )
@joedevsys I've pushed a PR thats WIP to PR #111 - see installer https://github.com/AceCentre/RelayKeys/actions/runs/2692779141 - but I cant see it working. Maybe I'm just looking at focus assist wrong (or more likely - not reading this correctly how this works)
from relaykeys.
massive thanks to @f1andrew for his Stellar work on this !
from relaykeys.
Related Issues (20)
- Make wireless mode setting up easier for end users HOT 1
- Make wireless mode easier
- Defining pixel absolute positions HOT 3
- Support the ESP32 HOT 2
- Installer - Uninstall without admin and should check if installed already HOT 1
- Make RK/RK win apps available as a priority app in Focus Assist HOT 8
- Automate ble_cmd:reconnect when daemon fails to communicate with dongle HOT 2
- Support GamePad WIP HOT 2
- Improve pop-notification messages HOT 5
- Repeat mouse till stop HOT 4
- ItsyBitsy nrf52840 Express dotstar led colours are wrong HOT 1
- Need docs guidance for Communicator 5
- Difficulty pairing to i13 for wireless mode HOT 12
- Add command to switch Arduino modes HOT 3
- Support apple Fn key HOT 1
- Keys that are not valid HOT 3
- Change default pin for USER_SW to D4? HOT 2
- Add device management commands to the CLI HOT 1
- nonchars_key_map needs to be localisable HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from relaykeys.