Attend XDA's Second Annual Developer Conference, XDA:DevCon 2014!
5,811,995 Members 47,476 Now Online
XDA Developers Android and Mobile Development Forum

[DEV][5/5/10] LMT Launcher 0.8

Tip us?
 
l3v5y
Old
(Last edited by l3v5y; 9th May 2010 at 07:02 PM.)
#1  
l3v5y's Avatar
Retired Senior Moderator - OP
Thanks Meter 38
Posts: 7,390
Join Date: Sep 2007
Location: Bristol

 
DONATE TO ME
Default [DEV][5/5/10] LMT Launcher 0.8

LMT is a tool for the HD2 that launches a program when perform single touch or multitouch gestures on the screen. You can connect internal commands and external apps to any gesture LMT supports. See a video here.

Installation

Download the latest version, copy it to your HD2, start the cab via file explorer and install LMT on internal memory. After installation start LMT. You won’t see any GUI since LMT is a background process. Try at first the double swipe up gesture. If everything works fine, you’ll see the corresponding overlay and the foreground process will be closed (closeApp is the default action for double swipe up).

Gestures
  • SwipeRightDouble
  • SwipeLeftDouble
  • SwipeUpDouble
  • SwipeDownDouble
  • SwipeRightLeftDouble
  • SwipeLeftRightDouble
  • SwipeUpDownDouble
  • SwipeDownUpDouble
  • QuestionmarkDouble
  • SquareDouble
  • DiamondDouble
  • Square (start gesture top left cw)
  • Diamond (start gesture at the bottom cw)
  • Delete (start gesture top left)



Learning gestures

There are two ways to connect apps to gestures. The first one is to draw the “learn gesture” on the screen and afterwards the gesture, you want to connect the current foreground app with. This method is easy but has some limitations. You cannot assign process arguments or assign internal commands to gestures. The second way is to configure LMT via registry. Navigate with your preferred registry editor to HCKU\Software\LMT. Here you can see which commands are currently connected to a gesture and you can edit any gesture/app relation. To assign an external app to a gesture insert the full path to the process: [Full path to exe],[arguments]. E.g. "\Windows\tmail.exe,-RunInBKG". To assign an internal command to a gesture insert on of the following command strings.

Commands
  • “CloseLMT” -> close LMT
  • “CloseApp” -> close the foreground app
  • “Learn” -> activate learn mode
  • “Back” -> send back key
  • “Start” -> start menu
  • “Lock” -> lock phone
  • “Phone” -> start Phone app
  • “Up” -> send Dpad up
  • “Down” -> send Dpad down
  • “Left” -> send Dpad left
  • “Right” -> send Dpad right
  • “PrevApp” -> switch to previous app (Alt-Tab feature)
  • “NextApp” -> switch to next app (Alt-Tab feature)
  • “Home” -> switch to Homescreen
  • “Rotate” -> rotate screen
  • “Controller” -> activate the controller mode

Controller Mode


Use the controller as a generic gamepad for e.g. FPSEce, morphgear or flash games. The controller is multitouch capable and converts the touches to key events. You can define the keys to be sent via registry value "ControllerKeys": Down, up, left, right, 1, 2, A, B, C, D, X, Y. The button "R" toggles between portrait and landscape mode and partial and full screen lock. The button "X" deactivates the controller mode. The registry value "ControllerVibrate" defines the vibrate status: 0=off, 1=default, >1=time in ms. To quickly install and configure LMTs controller with FPSEce and morphgear I made a fpse.ini file and a registry file for morphgear. The howto:

FPSEce:
  • install FPSEce on internal memory
  • before first start replace the existing fpse.ini with the attached one
  • now start FPSEce
  • load a rom, start LMTs controller and have fun!

Morphgear:
  • install morphgear and e.g. the generator plugin on internal memory
  • start morphgear and close it again
  • import the attached registry file
  • now restart morphgear again
  • load rom, start LMTs controller and have fun!

These aren't the perfect settings since I only patched the key inputs to work properly with LMTs controller but it's a good base for further settings. If anyone has better settings, it would be nice if he could post them here... :)

Settings

There are 3 blacklists available to exclude processes from taskswitching (BlackListSwitch), from the closeApp feature (BlackListClose) and to deactivate LMT when the process is the current foreground app (BlackListAll). Just add the full path to the process to the multistring. There is also 1 whitelist available: WhiteListBack. If Opera 9 is the current foreground app and you activate the internal command “Back”, LMT will send a special key to navigate back in Opera.

With the registry value “SingleTouchGestureSupport” you are able to activate or deactivate the single touch gestures (Square, Diamond and Delete) and with the registry value “TapAndHoldGestureSupport” you can activate a special feature where you can draw all dual touch gestures with one hand: Just tap with one finger somewhere on the screen and draw "one part" of the multitouch gesture with another finger. Then release the tapped finger and the gesture will be recognized.

Changelog 0.8
  • Fixed rotation feature
  • Controller button "R" now toggles between: Portrait (fg app touchable) -> Landscape (fg app touchable) -> Portrait (full screen lock) -> Landscape (full screen lock)
  • Added Mario feature in controller mode: The areas between A and B, C and D and X and Y will lead to both keyevents. When you e.g. run in Mario Bros. with button "C" and jump with button "D" you can run with "C" and then slide your finger right. Then "C" and "D" will be both pressed. Mario will run and jump... :)
  • Fixed rotate and exit button in controller mode (no interference with fg app)
  • Added dword reg value "ShowOverlay": 0=overlays deactivated, 1=overlays activated with default time, >1=overlays activated with custom time (ms)
  • Optimized square gestures
  • Removed arrow gestures
  • Added 5 new mt gestures: Double Diamond and Swipe left/right, right/left, up/down, down/up
  • Added 1 st gesture: Diamond
  • Added \Windows\services.exe to BlackListClose
  • Set new defaults for gestures (see registry!)
  • LMT is now rotation arware and works also in landscape mode (only 270°)
  • Controller supports now real landscape mode (e.g. for flash games)
See full changelog in changelog.txt attached!
Attached Files
File Type: cab LMT v0.8.CAB - [Click for QR Code] (394.2 KB, 5597 views)
File Type: txt changelog.txt - [Click for QR Code] (4.7 KB, 1620 views)
File Type: zip controller settings.zip - [Click for QR Code] (2.3 KB, 3279 views)
The Following User Says Thank You to l3v5y For This Useful Post: [ Click to Expand ]
 
cybermo
Old
#2  
Member
Thanks Meter 0
Posts: 96
Join Date: Nov 2009
thx for this work.

Just installed on hd2 and soft reset but doesnt work
 
l3v5y
Old
#3  
l3v5y's Avatar
Retired Senior Moderator - OP
Thanks Meter 38
Posts: 7,390
Join Date: Sep 2007
Location: Bristol

 
DONATE TO ME
Currently doing a lot of work on this, closing the thread for now... It will be good when its finished!
 
noname81
Old
#4  
Senior Member
Thanks Meter 4,039
Posts: 1,179
Join Date: Jun 2009
Due to the fact that I had the same idea than l3v5y to develop a multitouch gesture launcher based on the PenTrac approach, we decided to develop LMT together. This is our first alpha version:

LMT is able to launch and close processes with multitouch gestures. The following gestures are currently supported (see gestures.jpg in attachments):

- DoubleSquare: Close LMT
- DoubleQuestionMark: Learn mode; the following gesture will be connected to the process related to the foreground window. Next time the gesture is done, LMT will start the connected process
- DoubleLineUp: Close the current process
- DoubleLineDown: Connect e.g. to TaskFacade as a “Multitouch Taskmanager”
- DoubleLineLeft, DoubleLineRight
- DoubleArrowLeft, DoubleArrowRight

We decided to support only special multitouch gestures to not interfere with normal scrolling gestures or the HTC pinch to zoom feature. I hope someone can try our first version and give us a bug report, comments to new features, etc…
Attached Thumbnails
Click image for larger version

Name:	gestures.jpg
Views:	27397
Size:	14.0 KB
ID:	279010  
Attached Files
File Type: cab LMT v0.1.CAB - [Click for QR Code] (1.52 MB, 639 views)
The Following User Says Thank You to noname81 For This Useful Post: [ Click to Expand ]
 
kanesw
Old
#5  
kanesw's Avatar
Senior Member
Thanks Meter 0
Posts: 105
Join Date: Nov 2009
Location: Oxford/Nottingham
After installing that cab, i cannot get any of the gestures you have installed to work. Even after a softreset. Something Im missing/doing wrong?
HD2 - Vodafone

My truly embarrassing phone evolution.
 
snoK123
Old
#6  
Member
Thanks Meter 0
Posts: 39
Join Date: Jan 2009
Location: Dresden
Same for me...
 
Senfsaft
Old
(Last edited by Senfsaft; 10th February 2010 at 01:19 AM.)
#7  
Junior Member
Thanks Meter 0
Posts: 5
Join Date: Jun 2008
Hi,

works fine on my HD2.
Is there a possibility to define some exclusions?
Like S2U2?

It crashes when I swipe up when s2u2 is on and also when the quicklinks on manila mainscreen are up

manuel
 
noname81
Old
#8  
Senior Member
Thanks Meter 4,039
Posts: 1,179
Join Date: Jun 2009
Hm, I reinstalled the cab and everthing works fine. Can you please check the following things:

1) file \windows\PenTrac.dll exists
2) file \Program Files\LMT\LMT.exe exists
3) When starting LMT, the reg value HKLM\HARDWARE\DEVICEMAP\TOUCH\MultiTouchDemo is set to "1". For testing set value to "0" and then to "1" while LMT is active. Does LMT work?
4) Correct gesture? Gestures are all multitouch gestures, e.g. swipe two fingers down
5) Which ROM version are you using? Can you please post \windows\touch.dll from ROM dump?

If it still won't work I have to add logging support in PenTrac.dll and LMT.exe to see what's wrong...
 
noname81
Old
#9  
Senior Member
Thanks Meter 4,039
Posts: 1,179
Join Date: Jun 2009
Hi Senfsaft,

good to hear the app is working on one HD2 except mine! :) Exclusion list? Not yet, but not a problem for upcoming releases.
 
kanesw
Old
#10  
kanesw's Avatar
Senior Member
Thanks Meter 0
Posts: 105
Join Date: Nov 2009
Location: Oxford/Nottingham
Quote:
Originally Posted by noname81 View Post
Hm, I reinstalled the cab and everthing works fine. Can you please check the following things:

1) file \windows\PenTrac.dll exists
2) file \Program Files\LMT\LMT.exe exists
3) When starting LMT, the reg value HKLM\HARDWARE\DEVICEMAP\TOUCH\MultiTouchDemo is set to "1". For testing set value to "0" and then to "1" while LMT is active. Does LMT work?
4) Correct gesture? Gestures are all multitouch gestures, e.g. swipe two fingers down
5) Which ROM version are you using? Can you please post \windows\touch.dll from ROM dump?

If it still won't work I have to add logging support in PenTrac.dll and LMT.exe to see what's wrong...
After running LMT the registry value was still set to 0. Changing it to 1 has fixed the issues i had
HD2 - Vodafone

My truly embarrassing phone evolution.

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes