|  |  | @ -26,12 +26,14 @@ public class LockManager { | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   private int orientation = AccelerometerListener.ORIENTATION_UNKNOWN; |  |  |  |   private int orientation = AccelerometerListener.ORIENTATION_UNKNOWN; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |   private boolean proximityDisabled = false; | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   public enum PhoneState { |  |  |  |   public enum PhoneState { | 
			
		
	
		
		
			
				
					
					|  |  |  |     IDLE, |  |  |  |     IDLE, | 
			
		
	
		
		
			
				
					
					|  |  |  |     PROCESSING,  //used when the phone is active but before the user should be alerted.
 |  |  |  |     PROCESSING,  //used when the phone is active but before the user should be alerted.
 | 
			
		
	
		
		
			
				
					
					|  |  |  |     INTERACTIVE, |  |  |  |     INTERACTIVE, | 
			
		
	
		
		
			
				
					
					|  |  |  |     IN_CALL, |  |  |  |     IN_CALL, | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |     IN_VIDEO | 
			
		
	
		
		
			
				
					
					|  |  |  |   } |  |  |  |   } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   private enum LockState { |  |  |  |   private enum LockState { | 
			
		
	
	
		
		
			
				
					|  |  | @ -78,8 +80,7 @@ public class LockManager { | 
			
		
	
		
		
			
				
					
					|  |  |  |   } |  |  |  |   } | 
			
		
	
		
		
			
				
					
					|  |  |  | 
 |  |  |  | 
 | 
			
		
	
		
		
			
				
					
					|  |  |  |   private void updateInCallLockState() { |  |  |  |   private void updateInCallLockState() { | 
			
		
	
		
		
			
				
					
					|  |  |  |     if (orientation != AccelerometerListener.ORIENTATION_HORIZONTAL |  |  |  |     if (orientation != AccelerometerListener.ORIENTATION_HORIZONTAL && wifiLockEnforced && !proximityDisabled) { | 
			
				
				
			
		
	
		
		
			
				
					
					|  |  |  |       && wifiLockEnforced) { |  |  |  |  | 
			
		
	
		
		
	
		
		
			
				
					
					|  |  |  |       setLockState(LockState.PROXIMITY); |  |  |  |       setLockState(LockState.PROXIMITY); | 
			
		
	
		
		
			
				
					
					|  |  |  |     } else { |  |  |  |     } else { | 
			
		
	
		
		
			
				
					
					|  |  |  |       setLockState(LockState.FULL); |  |  |  |       setLockState(LockState.FULL); | 
			
		
	
	
		
		
			
				
					|  |  | @ -100,7 +101,13 @@ public class LockManager { | 
			
		
	
		
		
			
				
					
					|  |  |  |         setLockState(LockState.FULL); |  |  |  |         setLockState(LockState.FULL); | 
			
		
	
		
		
			
				
					
					|  |  |  |         accelerometerListener.enable(false); |  |  |  |         accelerometerListener.enable(false); | 
			
		
	
		
		
			
				
					
					|  |  |  |         break; |  |  |  |         break; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |       case IN_VIDEO: | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         proximityDisabled = true; | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         accelerometerListener.enable(false); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         updateInCallLockState(); | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         break; | 
			
		
	
		
		
			
				
					
					|  |  |  |       case IN_CALL: |  |  |  |       case IN_CALL: | 
			
		
	
		
		
			
				
					
					|  |  |  |  |  |  |  |         proximityDisabled = false; | 
			
		
	
		
		
			
				
					
					|  |  |  |         accelerometerListener.enable(true); |  |  |  |         accelerometerListener.enable(true); | 
			
		
	
		
		
			
				
					
					|  |  |  |         updateInCallLockState(); |  |  |  |         updateInCallLockState(); | 
			
		
	
		
		
			
				
					
					|  |  |  |         break; |  |  |  |         break; | 
			
		
	
	
		
		
			
				
					|  |  | 
 |