Patch webOS Screenlock On While Connected

From WebOS Internals
Revision as of 17:36, 20 July 2009 by PuffTheMagic (talk | contribs)
Jump to navigation Jump to search

This patch will allow you to toggle the onWhenConnected bit via the "Screen & Lock" app.

<source lang="diff"> diff --git a/app/controllers/securityconfig-assistant.js b/app/controllers/securityconfig-assistant.js index 3260f78..d6accfd 100644 --- a/app/controllers/securityconfig-assistant.js +++ b/app/controllers/securityconfig-assistant.js @@ -6,12 +6,17 @@ var SecurityconfigAssistant = Class.create({

               this.dialogBox = null;                                                                
               this.getSystemlockModeReq = SystemService.getSystemlockMode(this.handleSystemlockMode.bind(this));
               this.getSystemAlertsSetting = SystemService.getShowAlertWhenLocked(this.updateAlertSettings.bind(this));

+ this.getStayOnSetting = DisplayService.getStayOnWhenConnected(this.updateStayOnSettings.bind(this));

       },                                                                                                              
                                                                                                                       
       onOffToggleOpt: {                                                                                               
        modelProperty: 'value',                                                                                        
        enableProp: 'enabled',                                                                                         
    },                                                                                                                 

+ + stayOnToggleModel: { + value: false, + },

    switchApptoggleModel: {                                                                                            
        value: false,                                                                                                  

@@ -34,6 +39,9 @@ var SecurityconfigAssistant = Class.create({

       },                                                                                                              
                                                                                                                       
       setup: function(){                                                                                              

+ + this.controller.setupWidget('stayOnWhenConnected', this.onOffToggleOpt, this.stayOnToggleModel); + Mojo.Event.listen($('stayOnWhenConnected'),'mojo-property-change', this.toggleStayOnWhenConnected.bindAsEventListener(this));

               this.controller.setupWidget('showAlerts', this.onOffToggleOpt, this.alertToggleModel);                                        
               Mojo.Event.listen($('showAlerts'),'mojo-property-change', this.toggleShowAlerts.bindAsEventListener(this));                   

@@ -297,6 +305,12 @@ var SecurityconfigAssistant = Class.create({

               else                                                                                                                          
                       $('lockImg').hide();                                                                                                  
       },                                                                                                                                    

+ + toggleStayOnWhenConnected: function(event) { + if(!event) + return; + DisplayService.setStayOnWhenConnected(event.value); + },

       toggleShowAlerts: function(event) {                                                                                                   
               if(!event)                                                                                                                    

@@ -340,6 +354,17 @@ var SecurityconfigAssistant = Class.create({

                       this.controller.modelChanged(this.timerModel,this);                                                                   
               }                                                                                                                             
       },                                                                                                                                    

+ + updateStayOnSettings: function(payload){ + + if (!payload) + return; + if (payload.onWhenConnected != undefined) { + this.stayOnToggleModel.value = payload.onWhenConnected; + this.controller.modelChanged(this.stayOnToggleModel, this); + } + + },

       updateAlertSettings: function(payload){                                                                                               
                                                                                                                                             

diff --git a/app/views/securityconfig/securityconfig-scene.html b/app/views/securityconfig/securityconfig-scene.html index f99b124..68aa307 100644 --- a/app/views/securityconfig/securityconfig-scene.html +++ b/app/views/securityconfig/securityconfig-scene.html @@ -26,6 +26,19 @@

+

+

+ Advanced Power Options

+
+
+
+
+
+
On When Connected
+
+
+
+
                       Wallpaper

diff --git a/index.html b/index.html index 4f999c0..b39a0d3 100644 --- a/index.html +++ b/index.html @@ -11,6 +11,7 @@

         Mojo.loadScript('app/controllers/securityconfig-assistant.js');
         Mojo.loadScript('app/controllers/pin-assistant.js');
         Mojo.loadScript('app/models/SystemService.js');

+ Mojo.loadScript('app/models/DisplayService.js');

   </script>
  <link href="stylesheets/screenlock.css" media="screen" rel="stylesheet" type="text/css" />
</head>

</source>