Patch WebOS Bypassing Lock Screen

webOS 2.2 and newer
(I think this changed from 2.2 onwards?)

About
Since the 1.1 update (see About), upon connecting an e-mail account to Exchange (EAS), if a policy enforcement exists on that server, it will be enforced on the webOS device as well.

Modification
The place to bypass the PIN in the codebase has changed quite a bit -- the patch is now done to com.palm.app.phone/phoneAppPinCode/source/PhonePinCard.js.

Conveniently, the webOS team left a nice, simple way to bypass it all around line 66:

// DEFAULT: just handle known launch mode } else { //always unlock - for testing //this.$.updatePinAppState.call({state: 'unlock'}); return;

this.handleLaunchLockMode; }

About
The 1.1 update allowed me to connect to Exchange (EAS) with a policy enforced. Of course, having my screen lock every single time I turn off the screen seems a little harsh. The policy asks for a 10-minute timeout, but the way it's implemented in WebOS, the screen locks whenever the screen turns off.

Modification
Below is a modification to automatically unlock the screen. This method seems to still work with the 1.3.5 update.

Edit /usr/palm/applications/com.palm.app.phone/app/controllers/pin-assistant.js

Immediately after " setup: function { " (line 32 in 1.1, line 33 in 1.3.1 and 1.3.5, line number may vary in other versions)

add the line: this.unlock; return;

What you've done is edit the "setup" function to immediately call the unlock function and return (skipping anything else it would normally do).

Reboot, and your screen should automatically unlock as soon as you slide it open.

Should work like a charm!