From: luozheng <1732036298@qq.com> Date: Thu, 18 Apr 2024 08:43:58 +0000 (+0800) Subject: 添加抬腕亮屏功能 X-Git-Tag: release_V1.2.70_20241020_135402~1162^2~10 X-Git-Url: http://git.snicker.com.cn/?a=commitdiff_plain;h=4b8297ca97fa71deda3cb2c0463f71b8cf4d4d03;p=mirrors%2FFD230.git 添加抬腕亮屏功能 --- diff --git a/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModel.h b/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModel.h index ddba642a2..bd01055d2 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModel.h @@ -105,14 +105,6 @@ namespace OHOS /* --------------------------------自定义封装 set与get方法 ------------------------------- */ - - bool GetRaiseToWake(void); - - unsigned GetScreenBrightnessValue(void); - - void SetScreenDuration(unsigned int value); - unsigned int GetScreenDuration(void); - bool GetClassicBlueToothState(void); void SetLanguage(int languageid); @@ -140,8 +132,15 @@ namespace OHOS void SetDnotdisturb(bool state); bool GetDnotdisturb(void); + /* ----------------------------- 屏幕与亮度相关set与get ----------------------------- */ void SetBrightness(int level); int GetBrightness(void); + + void SetScreenDuration(unsigned int value); + unsigned int GetScreenDuration(void); + + void SetRaiseToWake(bool value); + bool GetRaiseToWake(void); // -------------------------------------------------------------------------- */ private: configmodel_item configmodel_item_key_name[CONFIGMODEL_ITEM_MAX] = diff --git a/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h b/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h index 9589a2997..dbabfb475 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h +++ b/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-04-17 09:32:03 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-04-17 14:52:37 + * @LastEditTime: 2024-04-18 15:44:00 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/config/include/ConfigModelC.h */ #ifndef _CONFIG_MODEL_C_H_ @@ -41,6 +41,10 @@ void initScreenBrightness(void); */ void initializeScreenDuration(void); +/* + * @brief 初始化抬腕亮屏 + */ +void initializeRaiseToWake(void); #ifdef __cplusplus #if __cplusplus } diff --git a/code/sdk/application/wearable/fd230app/nativeui/config/src/ConfigModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/config/src/ConfigModel.cpp index 87c02022b..5b6dd0460 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/config/src/ConfigModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/config/src/ConfigModel.cpp @@ -488,14 +488,20 @@ namespace OHOS /* -------------------------------- set与get方法 ------------------------------- */ - bool ConfigModel::GetRaiseToWake(void) + /* + * @brief 设置抬腕亮屏是否开启 + */ + void ConfigModel::SetRaiseToWake(bool value) { - return get_configData_bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE); + set_condigData_Bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE,value); } - /// @brief 获取亮度值 - unsigned ConfigModel::GetScreenBrightnessValue(void) + + /* + * @brief 获取抬腕亮屏是否开启 + */ + bool ConfigModel::GetRaiseToWake(void) { - return get_configData_int(CONFIGMODEL_ITEM_SCREEN_BRIGHTNESS_VALUE) ; + return get_configData_bool(CONFIGMODEL_ITEM_RAISE_TO_WAKE); } /* @@ -750,6 +756,20 @@ void initializeScreenDuration(void) unsigned int time = OHOS::ConfigModel::GetInstance()->GetScreenDuration(); uapi_setScreenDuration(time); } + +void initializeRaiseToWake(void) +{ + WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "initializeRaiseToWake"); + bool isOpen = OHOS::ConfigModel::GetInstance()->GetRaiseToWake(); + if(isOpen == true) + { + uapi_take_to_wake(1); + } + else + { + uapi_take_to_wake(2); + } +} #ifdef __cplusplus #if __cplusplus } diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h index 015ef9dea..06c5865aa 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-04-12 20:11:04 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-04-18 10:23:37 + * @LastEditTime: 2024-04-18 15:36:31 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessModel.h */ #ifndef DISPLAY_BRIGHTNESS_MODEL_H_ @@ -15,21 +15,17 @@ namespace OHOS { public: static DisplayBrightnessModel *GetInstance(void); - void SetRaiseToBrightnessCheckBoxButtonStatus(bool value); bool RaiseToBrightnessCheckBoxButtonStatusInit(void); bool ScreenDurationRadioButtonSlectStatusInit(void); bool SelectScreenDurationLabelInit(void); void SetScreenDurationTime(unsigned int time); unsigned int GetScreenDurationTime(void); + private: DisplayBrightnessModel(); - DisplayBrightnessModel(const DisplayBrightnessModel &); - DisplayBrightnessModel &operator=(const DisplayBrightnessModel &); + DisplayBrightnessModel(const DisplayBrightnessModel &) = delete; + DisplayBrightnessModel &operator=(const DisplayBrightnessModel &) = delete; virtual ~DisplayBrightnessModel(); - - private: - bool RaiseToBrightnessCheckBoxButtonState{false}; // 抬腕按钮状态 ,默认补选中 - unsigned int ScreenDurationTime{10000}; }; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h index bf3a59fc4..445a202be 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-02-18 09:10:05 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-04-18 10:59:11 + * @LastEditTime: 2024-04-18 15:53:53 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/include/DisplayBrightnessPresenter.h */ #ifndef _DISPLAY_BRIGHTNESS_PRESENTER_H @@ -15,6 +15,8 @@ namespace OHOS { + static constexpr uint8_t WRIST_RAISE_TO_WAKE_ENABLED = 1; + static constexpr uint8_t WRIST_RAISE_TO_WAKE_DISENABLED = 2; typedef enum { DISPLAYBRIGHTNESSVIEW = 0, // 屏幕与亮度视图(slice) diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp index f58cbcad8..6cf09d50b 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp @@ -2,21 +2,19 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-04-12 20:11:04 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-04-18 10:55:38 + * @LastEditTime: 2024-04-18 15:34:22 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessModel.cpp */ #include "displaybrightness/include/DisplayBrightnessModel.h" #include "displaybrightness/include/DisplayBrightnessPresenter.h" #include "wearable_log.h" -#include "cat1_ctl.h" +#include "config/include/ConfigModel.h" namespace OHOS { DisplayBrightnessModel::DisplayBrightnessModel() { - ConfigModel *p_ConfigModel = ConfigModel::GetInstance(); - RaiseToBrightnessCheckBoxButtonState = p_ConfigModel->GetRaiseToWake(); } DisplayBrightnessModel::~DisplayBrightnessModel() {} @@ -27,16 +25,11 @@ namespace OHOS return &instance; } - /// @brief 设置抬腕亮屏按钮状态 - /// @param value true 开启 false 关闭 - void DisplayBrightnessModel::SetRaiseToBrightnessCheckBoxButtonStatus(bool value) - { - RaiseToBrightnessCheckBoxButtonState = value; - } + - /// @brief 显示与亮度及其子视图中的组件状态初始化 - /// @param value true 开启 false 关闭 - /// @return true 初始化成功 false 初始化失败 + /* + * @brief 抬腕亮屏按钮状态设置 + */ bool DisplayBrightnessModel::RaiseToBrightnessCheckBoxButtonStatusInit(void) { DisplayBrightnessPresenter *displayBrightnessPresent = DisplayBrightnessPresenter::GetInstance(); @@ -45,7 +38,7 @@ namespace OHOS WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "DisplayBrightnessViewAndSubViewComponentsStatusInit DisplayBrightnessPresenter GetInstance fail"); return false; } - displayBrightnessPresent->SetRaiseToBrightnessState(RaiseToBrightnessCheckBoxButtonState); // 抬腕按钮的状态 + displayBrightnessPresent->SetRaiseToBrightnessState(ConfigModel::GetInstance()->GetRaiseToWake()); // 抬腕按钮的状态 return true; } diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp index 442efe7b0..f9b378212 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp @@ -2,7 +2,7 @@ * @Author: luozheng 1732036298@qq.com * @Date: 2024-03-30 09:14:38 * @LastEditors: luozheng 1732036298@qq.com - * @LastEditTime: 2024-04-18 11:16:04 + * @LastEditTime: 2024-04-18 15:54:44 * @FilePath: /FD230/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessPresent.cpp */ #include "AppViewIDs.h" @@ -19,6 +19,7 @@ #include #include "map" #include "iostream" +#include "config/include/ConfigModel.h" namespace OHOS { // 当前Presenter属性实例化的内存指针 @@ -55,7 +56,6 @@ namespace OHOS if (value != false) { displayBrightnessView->SetRaiseToBrightnessCheckBoxButtonState(UICheckBox::UICheckBoxState::SELECTED); - DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(false); // 将Model层保存的状态清除 } } @@ -201,9 +201,13 @@ namespace OHOS { case UICheckBox::SELECTED: WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Raise to Wake switched on!"); + uapi_take_to_wake(WRIST_RAISE_TO_WAKE_ENABLED); + ConfigModel::GetInstance()->SetRaiseToWake(true); break; case UICheckBox::UNSELECTED: WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "Raise to Wake switched off!"); + uapi_take_to_wake(WRIST_RAISE_TO_WAKE_DISENABLED); + ConfigModel::GetInstance()->SetRaiseToWake(false); break; default: break; diff --git a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp index 56872bf9e..35e43a755 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/displaybrightness/src/DisplayBrightnessView.cpp @@ -60,18 +60,6 @@ namespace OHOS delete RaiseToBrightnessImage; RaiseToBrightnessImage = nullptr; - state = GetRaiseToBrightnessCheckBoxButtonState(); - if (state == UICheckBox::UICheckBoxState::SELECTED) - { - DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(true); - ConfigModel::GetInstance()->set_condigData_Bool(ConfigModel::ConfigItem::CONFIGMODEL_ITEM_RAISE_TO_WAKE, true); - } - else - { - DisplayBrightnessModel::GetInstance()->SetRaiseToBrightnessCheckBoxButtonStatus(false); - ConfigModel::GetInstance()->set_condigData_Bool(ConfigModel::ConfigItem::CONFIGMODEL_ITEM_RAISE_TO_WAKE, false); - } - delete RaiseToBrightnessCheckBoxButton; RaiseToBrightnessCheckBoxButton = nullptr; @@ -462,7 +450,7 @@ namespace OHOS return true; } - // 3.切换到“亮屏时长”视图 + // 2.切换到“亮屏时长”视图 bool DisplayBrightnessView::ChangeScreenDurationView(int16_t thisView) { if (DisplayBrightnessScrollView[thisView] == nullptr) diff --git a/code/sdk/application/wearable/fd230app/nativeui/producttest/src/testluminance.cpp b/code/sdk/application/wearable/fd230app/nativeui/producttest/src/testluminance.cpp index ef0b87d9e..d4df051af 100644 --- a/code/sdk/application/wearable/fd230app/nativeui/producttest/src/testluminance.cpp +++ b/code/sdk/application/wearable/fd230app/nativeui/producttest/src/testluminance.cpp @@ -94,7 +94,7 @@ namespace OHOS BrightnessControlViewSlider->SetForegroundStyle(STYLE_BACKGROUND_OPA, 0xff); BrightnessControlViewSlider->SetDraggable(true); ConfigModel *p_ConfigModel = ConfigModel::GetInstance(); - unsigned int value = p_ConfigModel->GetScreenBrightnessValue(); + unsigned int value = p_ConfigModel->GetBrightness(); BrightnessControlViewSlider->SetValue(value); diff --git a/code/sdk/drivers/peripheral/utils/custom_utils.c b/code/sdk/drivers/peripheral/utils/custom_utils.c index dfb437c0f..a2aa665ee 100644 --- a/code/sdk/drivers/peripheral/utils/custom_utils.c +++ b/code/sdk/drivers/peripheral/utils/custom_utils.c @@ -217,6 +217,7 @@ void startup_post_init_task(void) initScreenBrightness(); initializeScreenDuration(); + initializeRaiseToWake(); LOS_Msleep(5000); if ( poweron_cat1_on_bootup_flag() )