Need on-screen keyboard with mouse functions

A home for all kinds of Puppy related projects
Message
Author
User avatar
Ted Dog
Posts: 3965
Joined: Wed 14 Sep 2005, 02:35
Location: Heart of Texas

#61 Post by Ted Dog »

I have a dream....
Service puppy on a stick.....

One main reason for mainline build suggestion is the support for ARM devices. With a pair of $25 ARM based HDMI sticks with WiFi we could use any TV with a HDMI port as a monitor. Two Exactly the same stick have a built-in push button and a generic USB powered 12v battery adapter for the wheelchair. There are also portable HDMI projectors that will run directly off of 12v battery. just point the wheelchair toward a blank whitewall, which in a MDA clinic is always available, I've spent hours awaiting my appt counting wall dimples... So was everybody else. I was actually jealous of the guys with the wheelchairs that could lay flat and sleep. :oops:

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Wary as Test bed

#62 Post by mikeslr »

Hi All,

Ted Dog, I like your dream. Nice goal to shoot for. Just a couple of things to consider: I'm not sure anyone currently involved with the project has the expertise for it; or even a woof-build. I've remastered pups many times, which means anyone can learn to remaster. But, then again, maybe with ARM as a vehicle it will catch Barry K's interest, or someone like technosaurus.
Most of my exploring has been done using precise, or more accurately, jejy69's apt-get-test pup to obtain debs to build SFSes to test in pemau's non-PAE precise, and occasionally a Slacko. [Currently exploring mouseless window-managers]. I can run any precise or slacko on a 12 year old Thinkpad, as long as it doesn't use a PAE kernel. I have little experience with Wary, but have worked a lot with Saluki and Carolina. Both these are based on Racy, which --if I recall correctly-- is based on Wary. Unfortunately, most applications built for Saluki and Carolina won't run in precise or slacko, and vice versa.
So I think our next step would be to test magoo, xvkbd, nav and radar under wary and see if they work, and if not are they fixable?

On second thought, what we should probably do is a three fold attack on the project: (1) produce a remasater of magoo --as it almost ready, albeit still using QWERTY; and (2) work of Wary as a interim solution while (3) keeping ARM as an ultimate objective. A bad solution is better than no solution. And I keep thinking about the many people currently locked out of communicating with the rest of the world. 29 keypresses to type the world Leafpad is bad. Being unable to type at all is worse. Do nothing for 2 minutes. Then think about an 8 hour day of being unable to do anything.

mikesLr

User avatar
Ted Dog
Posts: 3965
Joined: Wed 14 Sep 2005, 02:35
Location: Heart of Texas

I Code when motivated

#63 Post by Ted Dog »

Ive Built puppy flavors before woof and I plan to build after woof, however, I hate to steal thundar from the younger coders so I ENCOURAGE and Wait, this project moved quickly and nicely along. I have a few ARM machines and even wrote the first non BK ARM pet for a needed function to get the ball rolling. I know this is something I could do, just awaiting price points and a finish line to appear. I already have an ARM based computer and a projector running from a Wheelchair type battery under 30watt
s

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#64 Post by starhawk »

Ted Dog, if you could PM me about ARM Puppies -- I do NOT want to derail this thread, and I have sort of a request re: Puppy on ARM, which I'd like to talk to you about. Nobody's really taken it up, and although I have hunches I've never really confirmed why.

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Wary -- Inital Report

#65 Post by mikeslr »

Hi All,

Initial report regarding Wary. Frugal install of Wary 5.5. Both Magoo & xvkbd work. Will have to re-read posts on Nav & Radar so I'll know what I'm doing before working with them.
Couple of things I've noticed so far. Magoo 129 pet opens in the center of the desktop. I think xvkbd does as well. As did Abiword. At any rate, when applications overlap they have to be moved: a problem if you limited to a single press. Perhaps we should be considering some kind of windows manager which can be operated by keyboard commands. Iguleder built cwm (calm) a while back in Puppy 5.3 and Slackware. http://www.murga-linux.com/puppy/viewto ... 25726c44c2, but there are others. From what I've read about cwm, it's highly configurable: Maybe enough so that it would be possible to build an onscreen keyboard with keys optimized for single-stick.
Unless I've missed something, to type into Abiword it has to be opened --which is why I like Magoo's nice big icon: easy targets-- xvkbd's focus button must be pressed, Abiword clicked on to focus on it, and then mouse returned to xvkbd to begin typing. Lots of work. Should be an easier way.
Pressing F12 on xvkbd will open a drop down Programs-Menu, but I haven't figured out how to use it. Typing anything closes it. Direction keys should have worked. Otherwise, focusing and lots of mouse moves are needed to launch an application from the Start Menu. Best, of course, that most used applications be callable from Mago.

Ted Dog: Great to hear you have technical expertise. My apologies for the unintentional slighting of your ability. Guess I've been wondering around the wrong threads. It's a big Forum. And starhwk, please consider after emailing Ted Dog opening a thread dedicated to Arming the disabled. Perhaps there are others who also have been waiting, knowing too little to do anything other than appear ignorant. One of the great things about this Forum is that even if by no other means by Crown-Sourcing and experimentation we can stumble forward. The only stupid question is the one which wasn't asked.

mikesLr

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#66 Post by starhawk »

mikeslr, I'll be honest with you -- I can't program to save my life. I know a teeny tiny bit of an old M$ copy of BASIC that came with Windows 3.1, and that's as far as I get. I can sort of read bash scripts and that sort of stuff, but show me any real code and I'm completely lost in seconds.

All I wanted from Ted Dog was to see if he could make a version of Puppy that runs on a particularly inexpensive Android Cloud Stick I have, that I traded for on another forum. I honestly don't know what I'd do with it even if he could get that working, as I don't have a monitor with HDMI or even DVI (same basic signal, different number of pins) with which to use the thing. I've plenty of VGA monitors -- just, the only thing in my house with DVI is my much-neglected TV set, and I've no idea if that connector even works! (There are other dead ports on this TV.) I'd have to buy an adapter, either way...

When it comes to computers, I'm about 99% hardware. The 1% that's left over is my software skills, and they're pretty sorry.

It's probably just as well that the Arduino solution I was babbling about didn't get picked -- it would've taken me at least a year to learn to code Arduino stuff...

User avatar
ETP
Posts: 1193
Joined: Tue 19 Oct 2010, 19:55
Location: UK

More Questions

#67 Post by ETP »

Will:

Sorry to ask yet more questions but I omitted to ask about the age of the kit that may be available.

Also can you give an indication of the following in rough percentage terms?

1. Users for who head tracking would be the only option.
2. Users who could cope with both the switch solution and head tracking.
3. Only cope with the switch solution due to lack of muscular control.
4. Have poor vision.
5. Use Google voice search.

With regard to webcam mouse control, do not get too excited as it may yet not prove possible with Puppy. It would however be the icing on the cake if we can get it to work. We are a persistent bunch on this forum and someone may be able to compile Eviacam 1.6.1 and its prerequisites (opencv & wxwidgets) from source at a later date. I have tried and failed but lack experience in that area.

There are reports of Eviacam (which is free) working well with Ubuntu. It is available as a PPA. In addition there is the option of Camera Mouse-2013 with Windows 7 which I have tested and works superbly. That does require a fairly recent PC with 2GB of memory but may be the only option for some.
Regards ETP
[url=http://tinyurl.com/pxzq8o9][img]https://s17.postimg.cc/tl19y14y7/You_Tube_signature80px.png[/img][/url]
[url=http://tinyurl.com/kennels2/]Kennels[/url]

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

starhawk -- your a couple of steps ahead of me

#68 Post by mikeslr »

Hi starhawk,

Having played with a couple of programming languages, I know every one has to have a structure and almost every one has to be able to accomplish the same things. So I have sort of a reading knowledge of programming languages especially if I can access a computer-language to English dictionary. After that, its trial-and-error.

mikesLr

starhawk
Posts: 4906
Joined: Mon 22 Nov 2010, 06:04
Location: Everybody knows this is nowhere...

#69 Post by starhawk »

It's more difficult than that, for me.

QBASIC is the language I sort of started to teach myself, way back in 1997 or so -- and it's really all I know to any significant degree. When I was learning QBASIC, line numbers and GOTO instructions were all the rage -- QBASIC is at its heart a "procedural" language. As I understand it, that means that the computer primarily executes instructions in the order that they occur, with little room for deviation. Line 12 always comes before line 13.

Around the turn of the century and amid the Y2K bug fears, programmers changed their preferences to something I don't really even understand at all called "object-oriented" programming. I don't know a thing about it, except that the line numbers and GOTOs are all gone.

As a humorous aside -- a college professor of mine admitted to creating his own Y2K bug, as a practical joke to play on a friend of his. It was an MS Word macro -- a sort of mini-program that ran within Word -- that changed every 'y' character typed into a 'k' character. Somehow I doubt that the recipient of this 'bug' was nearly as amused as my professor, but it is an amusing story to mention.

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

xvkbd's word-completion

#70 Post by mikeslr »

Hi All,

I Misunderstood ETP's reference to xvkbd's word-completion. ETP mentioned that it was a simple text file. It's just a list of common words and phrases that as a user types, if word-completion is turned on, will appear in a dialog box enabling the user to choose from among them.This would be a great feature, significantly reducing both time and keypresses required to compose any text. Less of if you have to manually create the list. Googling indicated that xvkbd, by default, looks for the file at “/usr/share/dict/words,

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Word Completion & Exploring Radar

#71 Post by mikeslr »

Hi All,

I guessed right. Renaming the wordlist I extracted from the Ubuntu deb as "word" --without the quotes and placing it in a directory where xvkbd expected to find it worked. Can't attach a pet, it exceeds our forums new size limitations. Remind me to find out about why they exist and see if there's a better solution.
Created a pet of the new radar and installed it along with xvkbd in the Magoo pup. Can confirm greengeeks statement that they work fine together. Though they'll take some getting used to. But experimenting resulted in two helpful discoveries: while on a letter pressing Dbl-Click will generate two keystokes, such as ee oo ss etc.; and presing Rt-Click will generate a capital letter, reducing the need to use the shift key. I, hopefully, have attached the pet of radar7. Note, the executable has a symlinked in the Startup folder. If you don't want it to run immediately on bootup, delete that symlink.

Finally having tried radar, I see now that it provides for auto-scrolling and enables 360 degree directional control of mouse movements. Wish I could take back some suggestions which clearly demonstrated my ignorance. Just have to remember not to make them again in the next cycle of existence.
Radar's display nicely, automatically, positions itself at the bottom right corner of the screen. Xvkbd has to be moved, and can be resized, so that it runs from the desktop drive icons to Radar's display. There should be some way to have it open there. A user, on bootup, should be able to begin working immediately and not have to waste time moving applications around.

To do: Print out a couple of xvkbd's keyboard layouts files and see if by comparing them I can figure out how xvkbd uses them which would enable creation of a customized keyboard. Test xvkbd, radar and magoo on Wary.

mikesLr
Attachments
Radar7.pet
SRF's Mouse Controller
(72.5 KiB) Downloaded 390 times

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

Re: Word Completion & Exploring Radar

#72 Post by greengeek »

mikeslr wrote: But experimenting resulted in two helpful discoveries: while on a letter pressing Dbl-Click will generate two keystokes, such as ee oo ss etc.; and presing Rt-Click will generate a capital letter, reducing the need to use the shift key.
Nice find! That goes a long way toward reducing keystrokes. Typing annoying words like "committee" or "Mississippi" won't be so tiresome now :-)

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Further Exploration of NavBar and Radar

#73 Post by mikeslr »

Hi All,

Can confirm that Magoo, xvkbd, radar and NavBar work well with Magoo Pup and Wary 5.5. Unless the speed of NavBar is higher than that of radar, the latter seems easier to use. Still have the problem of having to click xvkbd's focus button, then the app into which I desire to type, then return to the keyboard before I can begin typing. But was happy to discover that with Abiword in focus, both NavBar and radar enabled the use of xvkbd's Alt and Ctrl keys so that Abiwords functions could be called via keyboard commands. Not sure if NavBar's "Drag" command is supposed to enable the dragging of a window, or if so, how, Attempt to do so wasn't successful. Didn't try doing that with Radar.
Made a pet of NavBar but won't upload it at this time. Perhaps if both came in the form of SFSes, they could be exited without the current complexity. Of course, the only reason to exit one would be to load the other.
The problem with using either is that they require the user to look in three places: the mouse-controlling-app, the mouse-curser, and the application focused on. Even without figuring out how to create an entirely different keyboard for xvkbd, xvkbd's built in customization routine may make it possible to map NavBar to xvkbd's function keys, including changing the symbols displayed.
And while I like Magoo, it will frequently be hidden by open applications. I wonder if substituting fbpanel (which can remain hidden at an edge until moused over) to provide a launch vehicle for favorite apps might not have an advantage.
Real life will keep me from further exploring and reporting for a couple of days.
Until then, have fun.

mikesLr

User avatar
ETP
Posts: 1193
Joined: Tue 19 Oct 2010, 19:55
Location: UK

Assisting Disabled

#74 Post by ETP »

Firstly on behalf of this thread, can I express our thanks to SFR for all the work he has done and continues to do on Navbar & Radar. Without his superb coding skills we would still be scratching our heads.

Webcam Control

I am sorry to report that I have been unable to persuade Camera-Mouse 2011 to work under wine and dotnet. This feature will have to go on the back burner unless and until someone steps up to the plate and compiles Eviacam for puppy.

Xvkbd

This was obviously designed for people who could make full use of a mouse but not a traditional keyboard. The main issue for our purposes is launching the word completion panel which requires a “drag
Last edited by ETP on Thu 04 Apr 2013, 17:56, edited 1 time in total.
Regards ETP
[url=http://tinyurl.com/pxzq8o9][img]https://s17.postimg.cc/tl19y14y7/You_Tube_signature80px.png[/img][/url]
[url=http://tinyurl.com/kennels2/]Kennels[/url]

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#75 Post by greengeek »

I have finally managed to improve my remastering skills to the point where I got a functional pup iso using radar 0.8 and have started a new thread for my "SwitchPup" trials:

http://www.murga-linux.com/puppy/viewto ... 619#696619

This will just be somewhere that I can post my personal variations on the "one-switch" idea, rather than cluttering this current thread which is developing quite nicely in a variety of directions.

User avatar
ETP
Posts: 1193
Joined: Tue 19 Oct 2010, 19:55
Location: UK

Beta ISO for testing/experimentation

#76 Post by ETP »

Xvkbd

For the time being I have elected to launch Xvkbd in the top left hand corner of the screen at a size roughly equivalent to the fixed size Magoo panel. It was stealing the focus from the Magoo panel which was a bit silly as you are hardly likely to want to use the K/B when no app has been launched. I have fixed that by delaying the launch of Magoo.

Radar & Navbar

I have included both but only enabled Radar 0.8. The issue with Navbar was that way too many apps failed to respect its position and launched under it with their toolbars obscured. This then entailed even more switch presses to drag the windows down.

Applications over and above those in Magoo V5 and Magoo (Netbook) V6

The main additions are Chromium 25 and Thunderbird 16.01 (update channel…..so update it to 17.05). At the expense of increasing the ISO size, I have pre-configured Chromium for max speed and ease of use. The latest flash (11.2.202.275) and the cursor themes pack have also been included.
In Chromium you can switch between voice search and your location’s home page via the “home icon
Regards ETP
[url=http://tinyurl.com/pxzq8o9][img]https://s17.postimg.cc/tl19y14y7/You_Tube_signature80px.png[/img][/url]
[url=http://tinyurl.com/kennels2/]Kennels[/url]

User avatar
SFR
Posts: 1800
Joined: Wed 26 Oct 2011, 21:52

Re: Beta ISO for testing/experimentation

#77 Post by SFR »

[quote="ETP"]The bit I particularly need feedback on is the last line of the “mouse_to_www_1920x1080.sh
[color=red][size=75][O]bdurate [R]ules [D]estroy [E]nthusiastic [R]ebels => [C]reative [H]umans [A]lways [O]pen [S]ource[/size][/color]
[b][color=green]Omnia mea mecum porto.[/color][/b]

User avatar
ETP
Posts: 1193
Joined: Tue 19 Oct 2010, 19:55
Location: UK

Beta ISO for testing/experimentation

#78 Post by ETP »

Hi SFR,

SFR wrote:
If you're interested, here's my attempt to make "the last move" properly, regardless of screen resolution.
The code below "greps" that Google pop-up window by its dimensions, reads its position and moves mouse cursor over there.
The only (I hope) thing that affects pop-up's dimensions is global font size, but I covered the default 78 and, recommended by you, 96 DPI.
Just add the below code to your script:
Thanks for your script. The use of 96 DPI plus fontwizard are essential as the benefits of antialiasing only become apparent at 96 DPI and I have pre-configured other font sizes based on the assumption that both will be applied. There are I think, other things that may impact on the pop-up's dimensions such as page level zoom, which is retained by all browsers and also a default font/font size change within the browser. If the width or height are a single pixel out, the window will not be found and a move may take place but only relative to the Chromium window.

Try as I might, I could not get your script or any other combinations of the various Xdotool commands to work properly. One possibility is “xdotool key Tab Tab Tab
Regards ETP
[url=http://tinyurl.com/pxzq8o9][img]https://s17.postimg.cc/tl19y14y7/You_Tube_signature80px.png[/img][/url]
[url=http://tinyurl.com/kennels2/]Kennels[/url]

User avatar
mikeslr
Posts: 3890
Joined: Mon 16 Jun 2008, 21:20
Location: 500 seconds from Sol

Obtained script to get current display's width and height

#79 Post by mikeslr »

Re Post's title > See SFR's post below.
Hi ETP & SFR and All,

ETP and greengeek, good luck with you respective Pups.

ETP mentioned in passing that "for now" he "elected to launch Xvkbd in the top left hand corner of the screen at a size roughly equivalent to the fixed size Magoo panel. It was stealing the focus from the Magoo panel which was a bit silly as you are hardly likely to want to use the K/B when no app has been launched. I have fixed that by delaying the launch of Magoo." My thinking is that the Pup should boot to desktop ready to be used. For that reason, I've dropped the Magoo Pet in favor of fbpanel and have been attempting to configure xvkbd so that, on bootup, it is adjacent to radar at radar's default bottom right position. See attached. Xvkbd can be started via a script which sets its location and dimensions. The only desktop icon won't be present in the final version. The xvkbd_start is a symlink I used for easily changing startup arguments arguments. Eventually, it will find its way into the Startup folder. Note the "House" on Jwm's taskbar: it opens /mnt/home. I figure the need for access to other partitions will be infrequent.
At any rate, xvkbd's documentation includes instructions on how to open xvkbd at a specified location and with specified dimensions. As my desktop is 1600x900, this is the script I used, code:

#!/bin/sh
xvkbd -geometry 850x180+595+650 -always-on-top &

850x180 define the width and height, respectively. 596+650 identify the width and height co-ordinates for the top right corner of the keyboard. (Oddly, given that the width of the keyboard appears first, I think the first positioning number for the height placement co-ordinate. Set this up on my Thinkpad about 2 hours ago).

The problem is that they are dependent on the current screen resolution. That will vary from one installation to another, and one of our objectives is to present the user with something which will "just work: no fiddling necessary." I've spent several hours googling for a way to determine, separately, the current width and height of display. Once those are determined, they can be applied to a formula to set xvkbd's width and height relative to the screen's width and height.
The "solutions" I found either required installing python, or programming in C or didn't work. I'd prefer something which could be used by a "stock" puppy. I'm using wary 5.5 as my test bed. Every "stock" puppy already has built-in tools to make such determination as they come with several applications which report current screen dimensions. Just not in a format I know how to manipulate.

Other things which may be of interest:
Although I'm running wary, I obtained the fbpanel.pet from here: http://www.murga-linux.com/puppy/viewto ... 539#527539 and new_pfbpanel.pet from here: http://www.murga-linux.com/puppy/viewto ... 478#538478. They worked OOTB, providing 8 launchers. I configured rox's taskbar to include 5 more. Rox's taskbar can be configured to Very Large. fbpanel comes with a configuration application. I'm not certain what the maximum size of launcher icons can be. Although the panel is set to hide unless "moused-over" at 50x50 the panel seems to be inadvertently moused-over too frequently. The picture shows them at 40x40: easy targets, yet out of the way when not needed.
If some of the icons look familiar, it's because I've shamelessly flinched them from Magoo. I also plagiarized magoo's scripts for email, weather and show desktop. Thanks ETP.
Although Seamonkey remains to handle email, I've added firefox. Firefox has an addon --just search addons for mouseless-- which enables just that. After it's installed there will appear numbers next to webpage elements, such as address-links. Typing a number and pressing return will open a tab to the indicated webpage, which also shows numbered elements. Firefox also has several "Speed Dials." I installed the one recommended by, I think, Lifehacker. Although not as nice as opera's, it seems to work well. On opening firefox, the user is one-click away from 8 favorite websites; which is why I didn't have to include a "news" launcher in fbpanel. Speed dial will handle more than 8, but then requires the user to click for the other displays.
fbpanel's radio button opens exprimo's umplayer. You can find the download link, and that for the required QT, here: http://murga-linux.com/puppy/viewtopic. ... 498#658498. Umplayer provides both Shoutcast for finding and listening to streaming radio, and Youtube viewer for searching for and playing youtube vids. Once opened umplayer can be controlled entirely via the keyboard, including starting the Shoutcast and youtube modules (although their default hot-keys should be modified). The application works fine, except that some of the pictures brought up by youtube's search box are blank.
On jwm's taskbar is a launcher for xfe-staticFOX-1.32.1-i486.pet. You'll find a lnk to download it here: http://www.murga-linux.com/puppy/viewto ... 159#688159. Xfe is a dual pane + tree file manager which can be controlled entirely via the keyboard.

mikesLr
Attachments
ExploreWary.jpg
Wary 5.5 with fbpanel, radar and xvkbd
(45.17 KiB) Downloaded 783 times
Last edited by mikeslr on Tue 09 Apr 2013, 00:01, edited 2 times in total.

User avatar
greengeek
Posts: 5789
Joined: Tue 20 Jul 2010, 09:34
Location: Republic of Novo Zelande

#80 Post by greengeek »

Nice work! Thanks for the tips on how to position xvkbd. I've been wanting to know that.

I wonder if some of the positioning issues could be overcome by having window positions referenced to the top left corner (which is what the window manager sees as the "origin"). That way the resolution would have less effect on the positioning.

What I mean is something like: Have the menu along the top of screen (rather than bottom), then have Radar just below the menu bar and up against the left of screen, then have xvkbd just to the right of radar.

That way it doesn't matter how wide/tall the screen is, all these major "command functions" would be at top left.

Post Reply