dislay: Fixed side-effect of processing powerkey. 59/119959/1 accepted/tizen/common/20170321.102331 accepted/tizen/ivi/20170321.095238 accepted/tizen/mobile/20170321.095129 accepted/tizen/tv/20170321.095201 accepted/tizen/unified/20170321.095258 accepted/tizen/wearable/20170321.095223 submit/tizen/20170321.032951
authorwchang kim <wchang.kim@samsung.com>
Tue, 21 Mar 2017 01:52:42 +0000 (10:52 +0900)
committerwchang kim <wchang.kim@samsung.com>
Tue, 21 Mar 2017 01:52:42 +0000 (10:52 +0900)
- When powerkey is pressed, key-filter should check the configuration of
  doublekey and lcdalwayson.
- TV : doublekey is no, lcdalwayson is yes -> longkey_pressed
- Mobile : doublekey is no, lcdalwayson is no -> lcdoff_powerkey()
- Wearable : doublekey is yes, lcdalwayson is no -> ignore

Change-Id: I95b02a46aca84632c4dda451b1f847596429e32d

src/display/key-filter.c

index 407ba3e..ede465f 100644 (file)
@@ -364,13 +364,24 @@ static int lcdoff_powerkey(void)
 
 static bool release_short_powerkey(void)
 {
-       if (!display_conf.lcd_always_on) {
+    // mobile d - no, a - no
+    // wearable d - yes, a - no
+    // tv d - no, a - yes
+       if (!display_conf.powerkey_doublepress && !display_conf.lcd_always_on) {
                lcdoff_powerkey();
                return true;
+       } else if (display_conf.powerkey_doublepress && !display_conf.lcd_always_on) {
+               if (skip_lcd_off) {
+                       return false;
+               } else {
+                       return true;
+               }
+       } else if (!display_conf.powerkey_doublepress && display_conf.lcd_always_on) {
+               longkey_pressed();
+               return false;
        }
 
-       longkey_pressed();
-       return false;
+       return true;
 }
 
 static int process_power_key(struct input_event *pinput)