Related
Having written StylusLock I wanted an additional lock/unlock method. Although StylusLock works great, I wanted some extra features:
* to have it possible to lock and unlock "one handed". The StylusLock approach cannot be done "one handed", e.g. on a bike.
* Also some people do not like to operate with the StylusLock (always).
* The combination with this new CapacitiveFingerLock and existing StylusLock will suit more people.
* And sometimes people will use the Stylus, so they will get the right behaviour depended on the usage pattern
* Still the goal is to let it consume almost no CPU and battery and KISS to operate
I discovered with StylusLock that when the TouchPanel and Hardware keys are locked, still the Zoom function works in e.g. Opera.
You can try yourself, using StylusLock:
1. Start Opera
2. Lock the Touch Diamond or Touch Pro with StylusLock
3. TouchPanel and all hardware keys are locked
4. Try to Zoom in/Zoom out in Opera, this still works with the NavWheel
5. Also the Ok button seems to react
I figured out via Scott Seligman and Koushik Dutta how to programmatically access the Capacative Touchpads. You can read also more here: [REF]Capacitive touchpad apps
So this idea is implemented in CapacativeFingerLock. But I am not using the NavWheel idea, but just uses the Capacative hardware area for locking/unlocking. The idea is again simple and clever. When you softly touch the area where the hardware keys are located (so do not press the keys, just gently touch them), the up/down and position area can be detected. I programmed that when the same area is touched gently 3 times within a second (without touching another area), the lock status is toggled.
I made a proof of concept program (just copy the exe inside the zip file attachment to your phone and just execute it), which shows how it is going to work. Just play around with softly touching the hardware panel, to see what happens.
If am working on integrating CapacativeFingerLock with StylusLock, to have a working "real locking" application. The Proof of Concept program just shows that it is possible.
Reserved for future use
Another one for future use.
very nice concept....now i noticed you posted a link of this thread in the wheel to unlock thread...would there be a way to possibly implement a config tool that lets you choose say, touch 3 times softly, or run your finger around the circle?
Malik05 said:
very nice concept....now i noticed you posted a link of this thread in the wheel to unlock thread...would there be a way to possibly implement a config tool that lets you choose say, touch 3 times softly, or run your finger around the circle?
Click to expand...
Click to collapse
In principle this can be done. But because the NavWheel is also used for other purposes (Zoom In/Out), I have chosen not to use the NavWheel, but the 3 times gently touching. In this way there is no interference with other existing applications.
I'll try that, it seems like no one cares aboyt the capacitive touch pad, it seems like an amazing thing that we've got that is so neglected. I hope to give some positive feedback later, but first I have some rom flashing to play with!
Thanks for the work, there must be so many possible implementations for this, I hope this is just the beginning of something much bigger.
How about a simple tap to launch app?
i went ahead and installed it, and it works very well...Will there be a (pretty) GUI to show that it was unlocked?
Also the diamond does have multi touch on that pad area, which enables a "trace" of the movement of your touch
http://www.youtube.com/watch?v=f3Owgcos_KY
Since the nav sensor wont be so ideal, how about sliding your finger from the top of the pad to the bottom (lets say, place your finger on the back button, and gently moving it down to initiate unlock, with a GUI on the screen following your movement, as you go closer to the bottom, the color changes from lets say, red, to green...with incremental color changes in between)
Instead of 3 taps, why not a swipe between the home and back keys, which seems much more natural.
Surur
surur said:
Instead of 3 taps, why not a swipe between the home and back keys, which seems much more natural.
Surur
Click to expand...
Click to collapse
I imagine it is just harder to implement for a proof of concept.
Personally I think there are enough ways to lock the diamond, whether you swipe the screen or 1cm below it is not a revolution, but if swiping the capacitive touch pad could be made to launch desired apps from selected gestures, that would be a revolution, like dynamo3 or hibernate or even standby. I think a lot of people here would want that over another locking solution. Good will intended!
Just tried it.
This is very cool very very cool
Thanks for time invested in such a cool development.
surur said:
Instead of 3 taps, why not a swipe between the home and back keys, which seems much more natural.
Surur
Click to expand...
Click to collapse
Swiping is not so easy one handed. Touching gently 3 times is much easier one handed, holding your Touch Diamond or Touch Pro firmly and touching with your thumb.
However, I can imagine other sort of applications which can use the swiping for other sort of operations. Both are possible with the programming API I made.
uniqueboy said:
I imagine it is just harder to implement for a proof of concept.
Personally I think there are enough ways to lock the diamond, whether you swipe the screen or 1cm below it is not a revolution, but if swiping the capacitive touch pad could be made to launch desired apps from selected gestures, that would be a revolution, like dynamo3 or hibernate or even standby. I think a lot of people here would want that over another locking solution. Good will intended!
Click to expand...
Click to collapse
I am going to share the source code. I have written it in C#. And others can get ideas and take over some of the source code for their own application. At the end we profit all of it.
ZuinigeRijder said:
I am going to share the source code. I have written it in C#. And others can get ideas and take over some of the source code for their own application. At the end we profit all of it.
Click to expand...
Click to collapse
I like your style, that is the the kind of development attitude that keeps here!
ZuinigeRijder said:
Swiping is not so easy one handed. Touching gently 3 times is much easier one handed, holding your Touch Diamond or Touch Pro firmly and touching with your thumb.
However, I can imagine other sort of applications which can use the swiping for other sort of operations. Both are possible with the programming API I made.
Click to expand...
Click to collapse
If you are open to other ideas, I would love the area from the back to home key to be a scroll bar when the device is in landscape mode. Grabbing the narrow on-screen scroll bar can be tricky, and the Touch Pro lacks the scroll wheel of the HTC Kaiser.
Surur
Have been looking into this myself as well. The only code I found was managed C#. Do you think we can use this in our native C code? Looks promising though!
ZuinigeRijder said:
Having written StylusLock I wanted an additional lock/unlock method. Although StylusLock works great, I wanted some extra features:
* to have it possible to lock and unlock "one handed". The StylusLock approach cannot be done "one handed", e.g. on a bike.
* Also some people do not like to operate with the StylusLock (always).
* The combination with this new CapacitiveFingerLock and existing StylusLock will suit more people.
* And sometimes people will use the Stylus, so they will get the right behaviour depended on the usage pattern
* Still the goal is to let it consume almost no CPU and battery and KISS to operate
I discovered with StylusLock that when the TouchPanel and Hardware keys are locked, still the Zoom function works in e.g. Opera.
You can try yourself, using StylusLock:
1. Start Opera
2. Lock the Touch Diamond or Touch Pro with StylusLock
3. TouchPanel and all hardware keys are locked
4. Try to Zoom in/Zoom out in Opera, this still works with the NavWheel
5. Also the Ok button seems to react
I figured out via Scott Seligman and Koushik Dutta how to programmatically access the Capacative Touchpads. You can read also more here: [REF]Capacitive touchpad apps
So this idea is implemented in CapacativeFingerLock. But I am not using the NavWheel idea, but just uses the Capacative hardware area for locking/unlocking. The idea is again simple and clever. When you softly touch the area where the hardware keys are located (so do not press the keys, just gently touch them), the up/down and position area can be detected. I programmed that when the same area is touched gently 3 times within a second (without touching another area), the lock status is toggled.
I made a proof of concept program (just copy the exe inside the zip file attachment to your phone and just execute it), which shows how it is going to work. Just play around with softly touching the hardware panel, to see what happens.
If am working on integrating CapacativeFingerLock with StylusLock, to have a working "real locking" application. The Proof of Concept program just shows that it is possible.
Click to expand...
Click to collapse
A while ago I posted about the Windows Messages received by the form for capacitive touch events. Is that what you ended up using to figure out where on panel is being touched? Mind posting some code so I can add it to the Sensors assembly?
Great idea. Defienetly it will be my way of locking device. StylusLock works nice but can't be operated by one hand so its useless for me. SensorLock uses battery and i've drop my phone already unlocking it.
surur said:
If you are open to other ideas, I would love the area from the back to home key to be a scroll bar when the device is in landscape mode. Grabbing the narrow on-screen scroll bar can be tricky, and the Touch Pro lacks the scroll wheel of the HTC Kaiser.
Surur
Click to expand...
Click to collapse
This can be surely done, programmatically. But I do not know if you can control the scrolling of other applications. The latter seems to me difficult?
Anyway, when a lot of applications are going to use gestures using the capacative areas, there will be going conflicts (different programs reacting differently on different gestures).
For the locking application I want to made, I see also some different gestures possibilities:
- 3 taps for locking/unlocking
- swipe left to right for Power off
- swipe right to left for starting a configured application
And I am sure I can come up with other gestures and actions....
drvdijk said:
Have been looking into this myself as well. The only code I found was managed C#. Do you think we can use this in our native C code? Looks promising though!
Click to expand...
Click to collapse
Actually I started with C++ and had also a working Proof Of Concept. However, because I am new to Windows Mobile Programming, I also wanted to use C# as next project. I have developed programs in a lot of languages (also in C++ and C#), but I like C# more. And I wanted to do this now for Windows Mobile, to get experience with this. Note that the C# sample is using only .NET 2.0, so you do not need .NET 3.5.
You can find a C++ sensortest program, which was available on Scott's weblog:
http://scottandmichelle.net/scott/cestuff/sensortest.zip
ZuinigeRijder said:
This can be surely done, programmatically. But I do not know if you can control the scrolling of other applications. The latter seems to me difficult?
Click to expand...
Click to collapse
I dont know if you can manipulate the scroll bar of another application directly (though this would be ideal) but at the least maybe a page down keystroke could be sent to the active window.
Surur
I have an idea that I think is unique; I can't seem to find anything related to it on xda or google, so forgive me if this already exists and is just too obvious for me to find it. Also I’m not sure if this is posted in the appropriate place since I’m not actually offering anything other than a simple idea. I am not a programmer and would have not way of testing or implementing this concept.
I often find myself repeatedly hitting little check boxes and links on my Windows phone. Even on a perfectly calibrated screen, it can be difficult for my fat finger to find the right spot. I particularly have problems with X/OK button and the Start menu at the top corners of the screen. I’m assuming that soft-buttons, text fields, etc in windows mobile have a defined border that accepts touch input. If the screen detects your touch outside of this box, it will not register. I propose a software solution to this.
I’ve included a simple illustration that hopefully makes this clearer. Also, anyone feel free to tell me this won’t work, that it’s already been done, etc. Rather than having a single box that is awaiting a single touch input, imagine if there were dozens of boxes surrounding the soft-key, each with an assigned value. As the boxes radiate out, the values would decrease. Input happens when the values add up to a predefined amount, which equals a touch. This way, if you click close to the box, but not quite, the screen will register where you are actually touching and make a decision (by adding up the values) of where you were actually trying to touch.
Hopefully the picture helps. I mentioned my lack of programming ability, and that applies to graphic design as well
All feedback is appreciated, and if anyone has the skills and knowledge to do this, let me know if you’re interested. I’d love to see the results.
That's pretty smart, actually; sort of like making our resistive touchscreens emulate capacitive ones.
I am another person who feels this is rather clever.
Sadly i am too a bit naff at programming :/
Thanks for the encouragement guys. I've made a better mock up now that I'm at home and have access to something besides MS Paint. I'm hoping to run across someone with the know-how, willingness, and energy to work up a proof-of-concept.
As a clearer example, in the new image, the red circles could equal 50, the green squares 25, and the blue squares 10. An equation taking sensitivity into account would be better (hard touch equals higher value with a multiplier for the closer circles). Say 100 was the thresh-hold for the screen to register a click on the box. Two reds, one red and two greens, and so on, anything that adds up to 100, would register. There could also be multiple boxes close together, each with their own set of concentric circles.
Another useful way of thinking about this is the elementary difference between accuracy and precision
http://en.wikipedia.org/wiki/Accuracy_and_precision
Screen calibration takes care of precision; I think this would provide accuracy.
Edit: I also wanted to add I was thinking of probability clouds when I came up with this. What can I say, I have a boring job.
Wow. Great idea, but I' not the one to program it! I'm surely someone will be up to the task though.
anything that makes hitting the stupid ok button easier is great in my book!
This won't work. There are no "boxes" like you speak of. The touch screen gives the OS the POINT where it was pressed. The OS converts that into pixels sees what is under the pushed pixel and selects that. Very similar to how a desktop works. The mouse only clicks one pixel and those interactive touch screen things you see at stores where you can see the moues move to where you pressed further illustrate it.
Multi Touch screens report that area that was pressed instead of just one point, but no WinMo phones have multi touch.
petard said:
This won't work. There are no "boxes" like you speak of. The touch screen gives the OS the POINT where it was pressed. The OS converts that into pixels sees what is under the pushed pixel and selects that. Very similar to how a desktop works. The mouse only clicks one pixel and those interactive touch screen things you see at stores where you can see the moues move to where you pressed further illustrate it.
Multi Touch screens report that area that was pressed instead of just one point, but no WinMo phones have multi touch.
Click to expand...
Click to collapse
That is helpful; thanks for the insight. I tried to find info on exactly how resistive touch screens worked, but it tended to be technical specs rather than how the OS used them. If it is narrowing it down to a pixel, then I see what you're saying: it won't work. If the point of contact was read as a larger, single area (as opposed to one pixel), it would be possible. Couldn't a GUI simply draw a circle around that single point? Then the area contained in that circle could be used to predict the button/icon you're trying to press using the values of the "boxes" or circles underneath.
Again, I was bored at work and was thinking about how hard it is to hit the OK button sometimes. Oh well, it killed about 2 hours
I just had an amazing idea !
Us cool Xperia Play Users NEEEEED a way to assign the hardware keys to sections of the touchscreen.
For example, on screen joysticks could be emulated with the hardware keys. -
Here's how it would work -
1) "Please touch the part of the screen you wish to assign to the D-Pad "Left""
2) "Please touch the part of the screen you wish to assign to the D-Pad "Right""
3) "Please touch the part of the screen you wish to assign to the X button"
4) "Please touch the part of the screen you wish to assign to the O button"
etc etc etc
This means that almost EVERY touch screen game would work with the hardware buttons.
Is this the best idea ever or what? !
I would donate £10 for a developer to make a decent working version of an app that can do this.
I actually had an idea for this a while ago for the iphone when the iControlPad was the apple of my eye (pre-Xperia Play).
A more robust way to do it would probably be to have an app that lets you load a screenshot of a game and then just select a button from a menu, which would drop a small dot onto the screen (maybe with a letter/symbol for the control) and you could then just drag it to the exact pinpoint location you wanted.
Add in support for uploading/downloading/swapping these (possibly even just via text strings so people could post them places like messageboards) and voila.
I don't know whether or not this kind of thing is doable on an unrooted phone or not, but I certainly hope so.
Smartphones are loaded with touchscreen games.
SE imo has made a massive overlook on this opportunity.
A phone that promotes hardware buttons, but not being able assign them to touchscreen portions of the phone !!!?!?!????!?!?!
This could of been a MASSIVE feature of the Xperia Play.
Surely some developer must be interested in doing this? !! ?
Hi!
I'd like to know if anybody actually uses Samsung's features in order to help using the phone with one hand?
I myself make only use of the (not convincingly thought through) gesture which allows me to shrink the screen.
The assistant menu:
quite customisable, but much too big and slow for my taste.
Side key panel:
the other way round, quite comfortable to use, but nearly no customisation at all.
All in all I'd say lots of options, but not really thought through. What do you think?
Like you, I find the side key panel quite useful- eliminates the thumb stretching for the "back" button.
One handed input is also turned on & is mildly helpful for the dialer. Seemed to help a bit with continuous input on the keyboard as well, but ended up switching back to the stock Google keyboard I've grown so accustomed to.
Long pressing the recents key to bring up menus is also nice, though not specific to the Note 4.
Sometimes I use the shrink screen function that's when I'm to lazy to move my other hand haha
Sent from my SM-N910F using XDA Free mobile app
It's not just laziness. Sometimes you really need to do other things with your other hand (old school multi-tasking).
Holmegaard said:
Like you, I find the side key panel quite useful- eliminates the thumb stretching for the "back" button.
One handed input is also turned on & is mildly helpful for the dialer. Seemed to help a bit with continuous input on the keyboard as well, but ended up switching back to the stock Google keyboard I've grown so accustomed to.
Long pressing the recents key to bring up menus is also nice, though not specific to the Note 4.
Click to expand...
Click to collapse
I agree with everything you said. Still: I'm not too convinced from what the side key panel offers. If you could customise the side key panel the same way as the assistant menu, I'd totally go for it.
macmobile said:
I agree with everything you said. Still: I'm not too convinced from what the side key panel offers. If you could customise the side key panel the same way as the assistant menu, I'd totally go for it.
Click to expand...
Click to collapse
I seem to remember that there should be an app that mimics the one you can find in Ios. Anyway, there are several very good apps I use for 'one handed mode':
- button savior non root (you can find in in the google play store) which gives you back, home, recent, screen lock and lets you start both the dialer and the camera;
- lmt launcher (see at xda) which works very well if you are rooted and lacks some little features if you are not. You just have to remove tue superuser permission from the manifest file (which you can do with apk permission remover) and turn on accessibility and it'll work almost as a charm. I mean, it does not only allow you to mimic the hardware keys, it can start any app and any activity which does not require root. If you are rooted, it can do virtually anything;
- as a good replacement of lmt launcher, you can test pie control by Coolace (always in the google play store).
I mostly keep the note 4 in my left hand (though I am right handed) just because my 2 years experience with the note 2 has got me accustomed to writing with my right hand, while keeping the smartphone with the left one... so that I currently feel uncomfortable while holding the note with my dominant hand So, I feel the need to have virtual keys on the right side, since reaching the back button on the right side is not so easy (though my hands are normally sized) and the above mentioned apps are the most useful I have found.
Funny, you actually named some very important apps I already use on my phone except for the lmt launcher. Could be that I thought there isn't anything to gain from if you're not rooted. Going to give it a try though. Thank you! Still I don't get it, why Samsung's Touchwiz doesn't offer better solutions? They could do it so easily.
No doubt macmobile, some customization options would be nice. The big phone trend isn't going away, so I'm hoping that more options for easing one-handed use are in the pipeline. Samsung would do well to lead the way, given their investment in the "phablet" space.
macmobile said:
Funny, you actually named some very important apps I already use on my phone except for the lmt launcher. Could be that I thought there isn't anything to gain from if you're not rooted. Going to give it a try though. Thank you! Still I don't get it, why Samsung's Touchwiz doesn't offer better solutions? They could do it so easily.
Click to expand...
Click to collapse
I rooted every single phone or tablet before buying a Note 4 and now, though I miss the fun of flashing rom and mods, I think this phone has too many sensors which wouldn't be supported by an AOSP rom, while custom touchwiz roms aren't worth for me to give up to knox. Not much for the warranty loss, but more for the loss of the knox enviroment itself. So, since I don't want to root, I have got to look for work-arounds and I think there are many good apps.
Back on topic, imho Samsung has so far designed the best implementation for one hand usage, though it could be better. If you look at the nexus 6, it's just a big phone and the Iphone itself is just a (good) 5.5" phone which doesn't pay particular attention to single hand usage.
I agree with you both that phablets are very likely here to stay and that the current UI for single hand usage is at very early stage.
I just received the Note 4 with lollipop pre installed.
The one-handed operation (that I was using woth my note 3) has disappeared from settings!!!!!
WHY????
how to get it back?
Settings/Display and Wallpaper/One-handed operation
Samsung screwed one thing about One handed operation: there is no separate setting for dialing keyboard and QWERTY keyboard, just like it was on my previous Note II.
I wish I could set smaller dialpad, but retain full QWERTY, which is not the option any more.
When set one handed operation ON, samsung keyboard is just too small to me.
This is really just a PSA for those having multi-touch problems with this phone including developers who may have customers using this device.
I recently noticed that the Bolt multi-touch capability seemed to be broken - at least for anything more than two fingers. Pressing chords with three or more notes on music synthesizer apps simply didn't work.
It would register two simultaneous fingers tapping the screen. However, any attempt at tapping the screen with more than two fingers simultaneously, registered only a single tap location. Holding multiple fingers down one at a time with a short delay between each finger would register all of them. I tested up to ten. So, multi-touch worked sort-of.
It occurred to me that HTC might be trapping multi-touch events with more than two fingers for some reason. Looking around the menus, I found out where they were doing it.
In the Settings menu under "Display, gestures & buttons" you'll find the "Media Gesture" setting that mentions allowing app to recognize "3-finger output gestures". This is some kind of feature to allow you to instantly connect to other devices using three finger gestures. HTC must have some silly API that traps, interprets and broadcasts these events for other apps including their own. IMO it's an ill-conceived feature to start with especially as it breaks the expected behavior of multi-touch AND it's on by default! Fortunately, if you disable that setting, the multi-touch facility goes back to normal operation as it is on any other multi-touch device.
Another feature nobody asked for.
Thanks HTC.
Arpman96 said:
This is really just a PSA for those having multi-touch problems with this phone including developers who may have customers using this device.
I recently noticed that the Bolt multi-touch capability seemed to be broken - at least for anything more than two fingers. Pressing chords with three or more notes on music synthesizer apps simply didn't work.
It would register two simultaneous fingers tapping the screen. However, any attempt at tapping the screen with more than two fingers simultaneously, registered only a single tap location. Holding multiple fingers down one at a time with a short delay between each finger would register all of them. I tested up to ten. So, multi-touch worked sort-of.
It occurred to me that HTC might be trapping multi-touch events with more than two fingers for some reason. Looking around the menus, I found out where they were doing it.
In the Settings menu under "Display, gestures & buttons" you'll find the "Media Gesture" setting that mentions allowing app to recognize "3-finger output gestures". This is some kind of feature to allow you to instantly connect to other devices using three finger gestures. HTC must have some silly API that traps, interprets and broadcasts these events for other apps including their own. IMO it's an ill-conceived feature to start with especially as it breaks the expected behavior of multi-touch AND it's on by default! Fortunately, if you disable that setting, the multi-touch facility goes back to normal operation as it is on any other multi-touch device.
Another feature nobody asked for.
Thanks HTC.
Click to expand...
Click to collapse
That feature has been there for several devices
Sent from my unknown using XDA Labs