Home | History | Annotate | Download | only in hid
      1 // Copyright 2014 The Chromium Authors. All rights reserved.
      2 // Use of this source code is governed by a BSD-style license that can be
      3 // found in the LICENSE file.
      4 
      5 #include "device/hid/hid_usage_and_page.h"
      6 
      7 namespace device {
      8 
      9 bool HidUsageAndPage::IsProtected() const {
     10   if (usage_page == HidUsageAndPage::kPageKeyboard)
     11     return true;
     12 
     13   if (usage_page != HidUsageAndPage::kPageGenericDesktop)
     14     return false;
     15 
     16   if (usage == HidUsageAndPage::kGenericDesktopPointer ||
     17       usage == HidUsageAndPage::kGenericDesktopMouse ||
     18       usage == HidUsageAndPage::kGenericDesktopKeyboard ||
     19       usage == HidUsageAndPage::kGenericDesktopKeypad) {
     20     return true;
     21   }
     22 
     23   if (usage >= HidUsageAndPage::kGenericDesktopSystemControl &&
     24       usage <= HidUsageAndPage::kGenericDesktopSystemWarmRestart) {
     25     return true;
     26   }
     27 
     28   if (usage >= HidUsageAndPage::kGenericDesktopSystemDock &&
     29       usage <= HidUsageAndPage::kGenericDesktopSystemDisplaySwap) {
     30     return true;
     31   }
     32 
     33   return false;
     34 }
     35 
     36 }  // namespace device
     37