• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2021-2023 Huawei Device Co., Ltd.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at
6  *
7  *     http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 #ifndef FOUNDATION_ACE_FRAMEWORKS_BASE_UTILS_SYSTEM_PROPERTIES_H
17 #define FOUNDATION_ACE_FRAMEWORKS_BASE_UTILS_SYSTEM_PROPERTIES_H
18 
19 #include <atomic>
20 #include <cstdint>
21 #include <memory>
22 #include <optional>
23 #include <string>
24 
25 #include "base/utils/device_config.h"
26 #include "base/utils/device_type.h"
27 #include "base/utils/macros.h"
28 
29 namespace OHOS::Ace {
30 
31 enum class ResolutionType : int32_t {
32     RESOLUTION_NONE = -2,
33     RESOLUTION_ANY = -1,
34     RESOLUTION_LDPI = 120,
35     RESOLUTION_MDPI = 160,
36     RESOLUTION_HDPI = 240,
37     RESOLUTION_XHDPI = 320,
38     RESOLUTION_XXHDPI = 480,
39     RESOLUTION_XXXHDPI = 640,
40 };
41 
42 enum class FoldScreenType: int32_t {
43     UNKNOWN = 0,
44     BIG_FOLDER = 1,
45     SMALL_FOLDER = 2,
46     OUTER_FOLDER = 3,
47     SUPER_FOLDER = 5,
48 };
49 
50 constexpr int32_t MCC_UNDEFINED = 0;
51 constexpr int32_t MNC_UNDEFINED = 0;
52 extern const char ENABLE_DEBUG_BOUNDARY_KEY[];
53 extern const char ENABLE_TRACE_LAYOUT_KEY[];
54 extern const char ENABLE_TRACE_INPUTEVENT_KEY[];
55 extern const char ENABLE_SECURITY_DEVELOPERMODE_KEY[];
56 extern const char ENABLE_DEBUG_STATEMGR_KEY[];
57 
58 enum class LongScreenType : int32_t {
59     LONG = 0,
60     NOT_LONG,
61     LONG_SCREEN_UNDEFINED,
62 };
63 
64 enum class ScreenShape : int32_t {
65     ROUND = 0,
66     NOT_ROUND,
67     SCREEN_SHAPE_UNDEFINED,
68 };
69 
70 union DebugFlags {
flag_(flag)71     DebugFlags(int64_t flag = 0) : flag_(flag) {}
72     int64_t flag_;
73     struct {
74         bool containerMultiThread_ : 1;
75         bool getHostOnDetach_ : 1;
76         bool claimDeathObj_ : 1;
77         bool aceObjTypeCvt_ : 1;
78         bool jsObjTypeCvt_ : 1;
79         bool objDestroyInUse_ : 1;
80         bool useInvalidIter_ : 1;
81     } bits_;
82 };
83 
84 class ACE_FORCE_EXPORT SystemProperties final {
85 public:
86     /*
87      * Init device type for Ace.
88      */
89     static void InitDeviceType(DeviceType deviceType);
90 
91     /*
92      * Init device info for Ace.
93      */
94     static void InitDeviceInfo(
95         int32_t deviceWidth, int32_t deviceHeight, int32_t orientation, double resolution, bool isRound);
96 
97     /*
98      * Init device type according to system property.
99      */
100     static void InitDeviceTypeBySystemProperty();
101 
102     /**
103      * Init fold screen type according to system property.
104      */
105     static void InitFoldScreenTypeBySystemProperty();
106 
107     /*
108      * Get type of current device.
109      */
110     static DeviceType GetDeviceType();
111 
112     /*
113      * Get if current device need avoid window.
114      */
115     static bool GetNeedAvoidWindow();
116 
117     /*
118      * check SystemCapability.
119      */
120     static bool IsSyscapExist(const char* cap);
121 
122     /**
123      * Set type of current device.
124      * @param deviceType
125      */
SetDeviceType(DeviceType deviceType)126     static void SetDeviceType(DeviceType deviceType)
127     {
128         deviceType_ = deviceType;
129     }
130 
131     /*
132      * Get current orientation of device.
133      */
GetDeviceOrientation()134     static DeviceOrientation GetDeviceOrientation()
135     {
136         return orientation_;
137     }
138 
139     /*
140      * Get width of device.
141      */
GetDeviceWidth()142     static int32_t GetDeviceWidth()
143     {
144         return deviceWidth_;
145     }
146 
147     /*
148      * Get height of device.
149      */
GetDeviceHeight()150     static int32_t GetDeviceHeight()
151     {
152         return deviceHeight_;
153     }
154 
155     /*
156      * Set physical width of device.
157      */
SetDevicePhysicalWidth(int32_t devicePhysicalWidth)158     static void SetDevicePhysicalWidth(int32_t devicePhysicalWidth)
159     {
160         devicePhysicalWidth_ = devicePhysicalWidth;
161     }
162 
163     /*
164      * Set physical height of device.
165      */
SetDevicePhysicalHeight(int32_t devicePhysicalHeight)166     static void SetDevicePhysicalHeight(int32_t devicePhysicalHeight)
167     {
168         devicePhysicalHeight_ = devicePhysicalHeight;
169     }
170 
171     /*
172      * Get physical width of device.
173      */
GetDevicePhysicalWidth()174     static int32_t GetDevicePhysicalWidth()
175     {
176         return devicePhysicalWidth_;
177     }
178 
179     /*
180      * Get physical height of device.
181      */
GetDevicePhysicalHeight()182     static int32_t GetDevicePhysicalHeight()
183     {
184         return devicePhysicalHeight_;
185     }
186 
187     /*
188      * Get wght scale of device.
189      */
190     static float GetFontWeightScale();
191 
SetFontWeightScale(const float fontWeightScale)192     static void SetFontWeightScale(const float fontWeightScale)
193     {
194         if (fontWeightScale_ != fontWeightScale) {
195             fontWeightScale_ = fontWeightScale;
196         }
197     }
198 
199     /*
200      * Get size scale of device.
201      */
202     static float GetFontScale();
203 
SetFontScale(const float fontScale)204     static void SetFontScale(const float fontScale)
205     {
206         if (fontScale != fontScale_) {
207             fontScale_ = fontScale;
208         }
209     }
210 
211     /*
212      * Get density of default display.
213      */
GetResolution()214     static double GetResolution()
215     {
216         return resolution_;
217     }
218 
219     /*
220      * Set resolution of device.
221      */
SetResolution(double resolution)222     static void SetResolution(double resolution)
223     {
224         resolution_ = resolution;
225     }
226 
GetIsScreenRound()227     static bool GetIsScreenRound()
228     {
229         return isRound_;
230     }
231 
GetBrand()232     static const std::string& GetBrand()
233     {
234         return brand_;
235     }
236 
GetManufacturer()237     static const std::string& GetManufacturer()
238     {
239         return manufacturer_;
240     }
241 
GetModel()242     static const std::string& GetModel()
243     {
244         return model_;
245     }
246 
GetProduct()247     static const std::string& GetProduct()
248     {
249         return product_;
250     }
251 
GetApiVersion()252     static const std::string& GetApiVersion()
253     {
254         return apiVersion_;
255     }
256 
GetReleaseType()257     static const std::string& GetReleaseType()
258     {
259         return releaseType_;
260     }
261 
GetParamDeviceType()262     static const std::string& GetParamDeviceType()
263     {
264         return paramDeviceType_;
265     }
266 
267     static std::string GetLanguage();
268 
269     static bool GetContainerDeleteFlag();
270 
271     static std::string GetRegion();
272 
273     static std::string GetNewPipePkg();
274 
275     static float GetAnimationScale();
276 
277     static std::string GetPartialUpdatePkg();
278 
279     static int32_t GetSvgMode();
280 
281     static bool GetDebugPixelMapSaveEnabled();
282 
283     static bool IsPixelRoundEnabled();
284 
GetRosenBackendEnabled()285     static bool GetRosenBackendEnabled()
286     {
287         return rosenBackendEnabled_;
288     }
289 
GetHookModeEnabled()290     static bool GetHookModeEnabled()
291     {
292         return isHookModeEnabled_;
293     }
294 
GetDeveloperModeOn()295     static bool GetDeveloperModeOn()
296     {
297         return developerModeOn_;
298     }
299 
GetDebugBoundaryEnabled()300     static bool GetDebugBoundaryEnabled()
301     {
302         return debugBoundaryEnabled_.load();
303     }
304 
GetDebugOffsetLogEnabled()305     static bool GetDebugOffsetLogEnabled()
306     {
307         return debugOffsetLogEnabled_;
308     }
309 
GetDebugAutoUIEnabled()310     static bool GetDebugAutoUIEnabled()
311     {
312         return debugAutoUIEnabled_;
313     }
314 
GetDownloadByNetworkEnabled()315     static bool GetDownloadByNetworkEnabled()
316     {
317         return downloadByNetworkEnabled_;
318     }
319 
GetRecycleImageEnabled()320     static bool GetRecycleImageEnabled()
321     {
322         return recycleImageEnabled_;
323     }
324 
GetSvgTraceEnabled()325     static bool GetSvgTraceEnabled()
326     {
327         return svgTraceEnable_;
328     }
329 
GetLayoutTraceEnabled()330     static bool GetLayoutTraceEnabled()
331     {
332         return layoutTraceEnable_.load();
333     }
334 
GetSyncDebugTraceEnabled()335     static bool GetSyncDebugTraceEnabled()
336     {
337         return syncDebugTraceEnable_;
338     }
339 
GetPixelRoundEnabled()340     static bool GetPixelRoundEnabled()
341     {
342         return pixelRoundEnable_;
343     }
344 
GetTextTraceEnabled()345     static bool GetTextTraceEnabled()
346     {
347         return textTraceEnable_;
348     }
349 
GetSyntaxTraceEnabled()350     static bool GetSyntaxTraceEnabled()
351     {
352         return syntaxTraceEnable_;
353     }
354 
GetAccessTraceEnabled()355     static bool GetAccessTraceEnabled()
356     {
357         return accessTraceEnable_;
358     }
359 
GetVsyncModeTraceEnabled()360     static bool GetVsyncModeTraceEnabled()
361     {
362         return vsyncModeTraceEnable_;
363     }
364 
GetTraceInputEventEnabled()365     static bool GetTraceInputEventEnabled()
366     {
367         return traceInputEventEnable_.load();
368     }
369 
GetStateManagerEnabled()370     static bool GetStateManagerEnabled()
371     {
372         return stateManagerEnable_.load();
373     }
374 
SetStateManagerEnabled(bool stateManagerEnable)375     static void SetStateManagerEnabled(bool stateManagerEnable)
376     {
377         stateManagerEnable_.store(stateManagerEnable);
378     }
379 
SetFaultInjectEnabled(bool faultInjectEnable)380     static void SetFaultInjectEnabled(bool faultInjectEnable)
381     {
382         faultInjectEnabled_ = faultInjectEnable;
383     }
384 
GetFaultInjectEnabled()385     static bool GetFaultInjectEnabled()
386     {
387         return faultInjectEnabled_;
388     }
389 
GetBuildTraceEnabled()390     static bool GetBuildTraceEnabled()
391     {
392         return buildTraceEnable_;
393     }
394 
395     static bool GetCacheNavigationNodeEnable();
396 
GetAccessibilityEnabled()397     static bool GetAccessibilityEnabled()
398     {
399         return accessibilityEnabled_;
400     }
401 
GetCanvasDebugMode()402     static uint32_t GetCanvasDebugMode()
403     {
404         return canvasDebugMode_;
405     }
406 
407     static bool GetDebugEnabled();
408 
DetectContainerMultiThread()409     static bool DetectContainerMultiThread()
410     {
411         return debugEnabled_ && debugFlags_.bits_.containerMultiThread_;
412     }
413 
DetectGetHostOnDetach()414     static bool DetectGetHostOnDetach()
415     {
416         return debugEnabled_ && debugFlags_.bits_.getHostOnDetach_;
417     }
418 
DetectClaimDeathObj()419     static bool DetectClaimDeathObj()
420     {
421         return debugEnabled_ && debugFlags_.bits_.claimDeathObj_;
422     }
423 
DetectAceObjTypeConvertion()424     static bool DetectAceObjTypeConvertion()
425     {
426         return debugEnabled_ && debugFlags_.bits_.aceObjTypeCvt_;
427     }
428 
DetectJsObjTypeConvertion()429     static bool DetectJsObjTypeConvertion()
430     {
431         return debugEnabled_ && debugFlags_.bits_.jsObjTypeCvt_;
432     }
433 
DetectObjDestroyInUse()434     static bool DetectObjDestroyInUse()
435     {
436         return debugEnabled_ && debugFlags_.bits_.objDestroyInUse_;
437     }
438 
DetectUseInvalidIterator()439     static bool DetectUseInvalidIterator()
440     {
441         return debugEnabled_ && debugFlags_.bits_.useInvalidIter_;
442     }
443 
GetMeasureDebugTraceEnabled()444     static bool GetMeasureDebugTraceEnabled()
445     {
446         return measureDebugTraceEnable_;
447     }
448 
GetSafeAreaDebugTraceEnabled()449     static bool GetSafeAreaDebugTraceEnabled()
450     {
451         return safeAreaDebugTraceEnable_;
452     }
453 
454     static bool GetLayoutDetectEnabled();
455 
GetGpuUploadEnabled()456     static bool GetGpuUploadEnabled()
457     {
458         return gpuUploadEnabled_;
459     }
460 
GetImageFrameworkEnabled()461     static bool GetImageFrameworkEnabled()
462     {
463         return imageFrameworkEnable_;
464     }
465 
466     /*
467      * Set device orientation.
468      */
469     static void SetDeviceOrientation(int32_t orientation);
470 
471     static constexpr char INVALID_PARAM[] = "N/A";
472 
GetMcc()473     static int32_t GetMcc()
474     {
475         return mcc_;
476     }
477 
GetMnc()478     static int32_t GetMnc()
479     {
480         return mnc_;
481     }
482 
SetDeviceAccess(bool isDeviceAccess)483     static void SetDeviceAccess(bool isDeviceAccess)
484     {
485         isDeviceAccess_ = isDeviceAccess;
486     }
487 
GetDeviceAccess()488     static bool GetDeviceAccess()
489     {
490         return isDeviceAccess_;
491     }
492 
493     static void InitMccMnc(int32_t mcc, int32_t mnc);
494 
GetScreenShape()495     static ScreenShape GetScreenShape()
496     {
497         return screenShape_;
498     }
499 
500     static int GetArkProperties();
501 
502     static std::string GetMemConfigProperty();
503 
504     static std::string GetArkBundleName();
505 
506     static size_t GetGcThreadNum();
507 
508     static size_t GetLongPauseTime();
509 
510     static void SetUnZipHap(bool unZipHap = true)
511     {
512         unZipHap_ = unZipHap;
513     }
514 
GetUnZipHap()515     static bool GetUnZipHap()
516     {
517         return unZipHap_;
518     }
519 
520     static bool GetAsmInterpreterEnabled();
521 
522     static std::string GetAsmOpcodeDisableRange();
523 
524     static bool IsScoringEnabled(const std::string& name);
525 
IsWindowSizeAnimationEnabled()526     static bool IsWindowSizeAnimationEnabled()
527     {
528         return windowAnimationEnabled_;
529     }
530 
IsAstcEnabled()531     static bool IsAstcEnabled()
532     {
533         return astcEnabled_;
534     }
535 
536     static bool GetWindowRectResizeEnabled();
537 
GetAstcMaxError()538     static int32_t GetAstcMaxError()
539     {
540         return astcMax_;
541     }
542 
GetAstcPsnr()543     static int32_t GetAstcPsnr()
544     {
545         return astcPsnr_;
546     }
547 
IsImageFileCacheConvertAstcEnabled()548     static bool IsImageFileCacheConvertAstcEnabled()
549     {
550         return imageFileCacheConvertAstc_;
551     }
552 
GetImageFileCacheConvertAstcThreshold()553     static int32_t GetImageFileCacheConvertAstcThreshold()
554     {
555         return imageFileCacheConvertAstcThreshold_;
556     }
557 
SetExtSurfaceEnabled(bool extSurfaceEnabled)558     static void SetExtSurfaceEnabled(bool extSurfaceEnabled)
559     {
560         extSurfaceEnabled_ = extSurfaceEnabled;
561     }
562 
GetExtSurfaceEnabled()563     static bool GetExtSurfaceEnabled()
564     {
565         return extSurfaceEnabled_;
566     }
567 
568     static bool GetAllowWindowOpenMethodEnabled();
569 
GetDumpFrameCount()570     static uint32_t GetDumpFrameCount()
571     {
572         return dumpFrameCount_;
573     }
574 
575     static bool GetIsUseMemoryMonitor();
576 
577     static bool IsFormAnimationLimited();
578 
579     static bool GetResourceDecoupling();
580 
581     static int32_t GetJankFrameThreshold();
582 
583     static bool GetTitleStyleEnabled();
584 
585     static std::string GetCustomTitleFilePath();
586 
587     static bool Is24HourClock();
588 
589     static std::optional<bool> GetRtlEnabled();
590 
GetEnableScrollableItemPool()591     static bool GetEnableScrollableItemPool()
592     {
593         return enableScrollableItemPool_;
594     }
595 
596     static bool GetDisplaySyncSkipEnabled();
597 
598     static bool GetNavigationBlurEnabled();
599 
600     static bool GetGridCacheEnabled();
601 
602     static bool GetGridIrregularLayoutEnabled();
603 
604     static bool WaterFlowUseSegmentedLayout();
605 
606     static bool GetSideBarContainerBlurEnable();
607 
608     using EnableSystemParameterCallback = void (*)(const char* key, const char* value, void* context);
609 
610     static void AddWatchSystemParameter(const char* key, void* context, EnableSystemParameterCallback callback);
611 
612     static void RemoveWatchSystemParameter(const char* key, void* context, EnableSystemParameterCallback callback);
613     static void EnableSystemParameterTraceLayoutCallback(const char* key, const char* value, void* context);
614     static void EnableSystemParameterTraceInputEventCallback(const char* key, const char* value, void* context);
615     static void EnableSystemParameterSecurityDevelopermodeCallback(const char* key, const char* value, void* context);
616     static void EnableSystemParameterDebugStatemgrCallback(const char* key, const char* value, void* context);
617     static void EnableSystemParameterDebugBoundaryCallback(const char* key, const char* value, void* context);
618     static void EnableSystemParameterPerformanceMonitorCallback(const char* key, const char* value, void* context);
619     static void OnFocusActiveChanged(const char* key, const char* value, void* context);
620     static float GetDefaultResolution();
621 
622     static void SetLayoutTraceEnabled(bool layoutTraceEnable);
623 
624     static void SetInputEventTraceEnabled(bool inputEventTraceEnable);
625 
626     static void SetSecurityDevelopermodeLayoutTraceEnabled(bool layoutTraceEnable);
627 
628     static void SetDebugBoundaryEnabled(bool debugBoundaryEnabled);
629 
630     static void SetPerformanceMonitorEnabled(bool performanceMonitorEnable);
631 
632     static void SetFocusCanBeActive(bool focusCanBeActive);
633 
GetAcePerformanceMonitorEnabled()634     static bool GetAcePerformanceMonitorEnabled()
635     {
636         return acePerformanceMonitorEnable_.load();
637     }
638 
GetFocusCanBeActive()639     static bool GetFocusCanBeActive()
640     {
641         return focusCanBeActive_.load();
642     }
643 
GetAceCommercialLogEnabled()644     static bool GetAceCommercialLogEnabled()
645     {
646         return aceCommercialLogEnable_;
647     }
648 
649     static std::string GetAtomicServiceBundleName();
650 
GetDarkModeBrightnessPercent()651     static std::pair<float, float> GetDarkModeBrightnessPercent()
652     {
653         return brightUpPercent_;
654     }
655 
GetPageCount()656     static float GetPageCount()
657     {
658         return pageCount_;
659     }
660 
661     static bool IsOpIncEnable();
662 
663     static float GetDragStartDampingRatio();
664 
665     static float GetDragStartPanDistanceThreshold();
666 
667     static bool IsSmallFoldProduct();
668 
669     static bool IsBigFoldProduct();
670 
671     static std::string GetWebDebugRenderMode();
672 
673     static std::string GetDebugInspectorId();
674 
675     static double GetSrollableVelocityScale();
676 
677     static double GetSrollableFriction();
678 
679     static double GetScrollableDistance();
680 
681     static bool GetWebDebugMaximizeResizeOptimize();
682 
683     static bool IsNeedResampleTouchPoints();
684 
GetAsyncInitializeEnabled()685     static bool GetAsyncInitializeEnabled()
686     {
687         return asyncInitializeEnabled_.load();
688     }
689 
690     static bool IsNeedSymbol();
691 
GetTaskPriorityAdjustmentEnable()692     static bool GetTaskPriorityAdjustmentEnable()
693     {
694         return taskPriorityAdjustmentEnable_;
695     }
696 
697     static int32_t GetDragDropFrameworkStatus();
698     static int32_t GetTouchAccelarate();
699 
700     static bool IsSuperFoldDisplayDevice();
701 
702 private:
703     static bool opincEnabled_;
704     static bool developerModeOn_;
705     static bool svgTraceEnable_;
706     static std::atomic<bool> layoutTraceEnable_;
707     static std::atomic<bool> traceInputEventEnable_;
708     static bool buildTraceEnable_;
709     static bool cacheNavigationNodeEnable_;
710     static bool syncDebugTraceEnable_;
711     static bool measureDebugTraceEnable_;
712     static bool safeAreaDebugTraceEnable_;
713     static bool pixelRoundEnable_;
714     static bool textTraceEnable_;
715     static bool syntaxTraceEnable_;
716     static bool accessTraceEnable_;
717     static bool vsyncModeTraceEnable_;
718     static bool accessibilityEnabled_;
719     static uint32_t canvasDebugMode_;
720     static bool isRound_;
721     static bool isDeviceAccess_;
722     static int32_t deviceWidth_;
723     static int32_t deviceHeight_;
724     static int32_t devicePhysicalWidth_;
725     static int32_t devicePhysicalHeight_;
726     static double resolution_; // density of the default display
727     static DeviceType deviceType_;
728     static bool needAvoidWindow_;
729     static DeviceOrientation orientation_;
730     static std::string brand_;
731     static std::string manufacturer_;
732     static std::string model_;
733     static std::string product_;
734     static std::string apiVersion_;
735     static std::string releaseType_;
736     static std::string paramDeviceType_;
737     static int32_t mcc_;
738     static int32_t mnc_;
739     static ScreenShape screenShape_;
740     static LongScreenType LongScreen_;
741     static bool unZipHap_;
742     static bool rosenBackendEnabled_;
743     static bool windowAnimationEnabled_;
744     static bool debugEnabled_;
745     static DebugFlags debugFlags_;
746     static bool containerDeleteFlag_;
747     static bool layoutDetectEnabled_;
748     static std::atomic<bool> debugBoundaryEnabled_;
749     static bool debugAutoUIEnabled_; // for AutoUI Test
750     static bool debugOffsetLogEnabled_;
751     static bool downloadByNetworkEnabled_;
752     static bool recycleImageEnabled_;
753     static bool gpuUploadEnabled_;
754     static bool isHookModeEnabled_;
755     static bool astcEnabled_;
756     static int32_t astcMax_;
757     static int32_t astcPsnr_;
758     static bool imageFileCacheConvertAstc_;
759     static int32_t imageFileCacheConvertAstcThreshold_;
760     static bool extSurfaceEnabled_;
761     static uint32_t dumpFrameCount_;
762     static bool resourceDecoupling_;
763     static bool enableScrollableItemPool_;
764     static bool navigationBlurEnabled_;
765     static bool gridCacheEnabled_;
766     static bool sideBarContainerBlurEnable_;
767     static std::atomic<bool> stateManagerEnable_;
768     static std::atomic<bool> acePerformanceMonitorEnable_;
769     static std::atomic<bool> asyncInitializeEnabled_;
770     static std::atomic<bool> focusCanBeActive_;
771     static bool aceCommercialLogEnable_;
772     static bool faultInjectEnabled_;
773     static bool imageFrameworkEnable_;
774     static float pageCount_;
775     static std::pair<float, float> brightUpPercent_;
776     static float dragStartDampingRatio_;
777     static float dragStartPanDisThreshold_;
778     static float fontScale_;
779     static float fontWeightScale_;
780     static bool windowRectResizeEnabled_;
781     static FoldScreenType foldScreenType_;
782     static double scrollableDistance_;
783     static bool taskPriorityAdjustmentEnable_;
784     static int32_t dragDropFrameworkStatus_;
785     static int32_t touchAccelarate_;
786 };
787 
788 } // namespace OHOS::Ace
789 
790 #endif // FOUNDATION_ACE_FRAMEWORKS_BASE_UTILS_SYSTEM_PROPERTIES_H
791