1/* 2 * Copyright (c) 2022 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 16import { CommonConstants } from '@ohos/common'; 17import { PresetStyleConstants } from '@ohos/common'; 18import { LauncherLayoutStyleConfig } from '@ohos/common'; 19import PhonePresetStyleConstants from './constants/PhonePresetStyleConstants'; 20 21/** 22 * Phone launcher config 23 */ 24export default class PhoneLauncherLayoutStyleConfig extends LauncherLayoutStyleConfig { 25 26 /** 27 * CommonDialog width 28 */ 29 mCommonDialogWidth: string = PhonePresetStyleConstants.DEFAULT_COMMONDIALOG_WIDTH; 30 31 /** 32 * systemUI top height 33 */ 34 mSysTopHeight: number = PhonePresetStyleConstants.DEFAULT_SYS_TOP_HEIGHT; 35 36 /** 37 * systemUI bottom height 38 */ 39 mSysBottomHeight: number = PhonePresetStyleConstants.DEFAULT_SYS_BOTTOM_HEIGHT; 40 41 /** 42 * systemUI height (top + bottom) 43 */ 44 mSystemUIHeight: number = PresetStyleConstants.DEFAULT_PHONE_SYSTEM_UI; 45 46 /** 47 * indicator height 48 */ 49 mIndicatorHeight: number = PresetStyleConstants.DEFAULT_PHONE_INDICATOR_HEIGHT; 50 51 /** 52 * desktop item Size 53 */ 54 mAppItemSize: number = PhonePresetStyleConstants.DEFAULT_APP_LAYOUT_SIZE; 55 56 /** 57 * desktop space margin 58 */ 59 mMargin: number = PhonePresetStyleConstants.DEFAULT_LAYOUT_MARGIN; 60 61 /** 62 * desktop grid gap 63 */ 64 mGridGutter: number = PhonePresetStyleConstants.DEFAULT_APP_LAYOUT_MIN_GUTTER; 65 66 /** 67 * icon name lines 68 */ 69 mNameLines: number = PhonePresetStyleConstants.DEFAULT_APP_NAME_LINES; 70 71 /** 72 * icon ratio 73 */ 74 mIconRatio: number = PhonePresetStyleConstants.DEFAULT_APP_TOP_RATIO; 75 76 /** 77 * icon name margin 78 */ 79 mIconNameGap: number = PhonePresetStyleConstants.DEFAULT_ICON_NAME_GAP; 80 81 /** 82 * icon name text size 83 */ 84 mNameSize: number = PhonePresetStyleConstants.DEFAULT_APP_NAME_TEXT_SIZE; 85 86 /** 87 * name height 88 */ 89 mNameHeight: number = PhonePresetStyleConstants.DEFAULT_DESKTOP_NAME_HEIGHT; 90 91 //folder 92 /** 93 * ratio of gutter with folder 94 */ 95 mFolderGutterRatio: number = PhonePresetStyleConstants.DEFAULT_FOLDER_GUTTER_RATIO; 96 97 /** 98 * ratio of margin with folder 99 */ 100 mFolderMarginRatio: number = PhonePresetStyleConstants.DEFAULT_FOLDER_PADDING_RATIO; 101 102 /** 103 * gutter of open folder 104 */ 105 mFolderOpenGutter: number = PhonePresetStyleConstants.DEFAULT_OPEN_FOLDER_GUTTER; 106 107 /** 108 * padding of open folder 109 */ 110 mFolderOpenPADDING: number = PhonePresetStyleConstants.DEFAULT_OPEN_FOLDER_PADDING; 111 112 /** 113 * margin of open folder 114 */ 115 mFolderOpenMargin: number = PhonePresetStyleConstants.DEFAULT_OPEN_FOLDER_MARGIN_TOP; 116 117 /** 118 * margin top of open folder 119 */ 120 mFolderOpenTitle: number = PhonePresetStyleConstants.DEFAULT_OPEN_FOLDER_TITLE_TOP; 121 122 /** 123 * gutter of add app 124 */ 125 mFolderAddGridGap: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_GAP; 126 127 /** 128 * margin of add app and padding of add app 129 */ 130 mFolderAddGridMargin: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_MARGIN; 131 132 /** 133 * max height of add app 134 */ 135 mFolderAddMaxHeight: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_MAX_HEIGHT; 136 137 /** 138 * toggle size of add app 139 */ 140 mFolderToggleSize: number = PhonePresetStyleConstants.DEFAULT_APP_GRID_TOGGLE_SIZE; 141 142 /** 143 * name lines of add app 144 */ 145 mFolderAddTextLines: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_TEXT_LINES; 146 147 /** 148 * text size of add app 149 */ 150 mFolderAddTextSize: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_GRID_TEXT_SIZE; 151 152 /** 153 * title size of add app 154 */ 155 mFolderAddTitleSize: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_TITLE_TEXT_SIZE; 156 157 /** 158 * ratio of padding top with icon in add app 159 */ 160 mFolderAddIconRatio: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_ICON_TOP_RATIO; 161 162 /** 163 * button size of add app 164 */ 165 mFolderAddButtonSize: number = PhonePresetStyleConstants.DEFAULT_FOLDER_ADD_BUTTON_SIZE; 166 167 //App Center 168 /** 169 * margin of app center 170 */ 171 mAppCenterMargin: number = PhonePresetStyleConstants.DEFAULT_APP_CENTER_MARGIN; 172 173 /** 174 * gutter of app center 175 */ 176 mAppCenterGutter: number = PhonePresetStyleConstants.DEFAULT_APP_CENTER_GUTTER; 177 178 /** 179 * size of app center container 180 */ 181 mAppCenterSize: number = PhonePresetStyleConstants.DEFAULT_APP_CENTER_SIZE; 182 183 /** 184 * ratio of padding top with icon in app center 185 */ 186 mAppCenterRatio: number = PhonePresetStyleConstants.DEFAULT_APP_CENTER_TOP_RATIO; 187 188 /** 189 * name lines of app center 190 */ 191 mAppCenterNameLines: number = PhonePresetStyleConstants.DEFAULT_APP_CENTER_NAME_LINES; 192 193 /** 194 * name size of app center 195 */ 196 mAppCenterNameSize: number = PhonePresetStyleConstants.DEFAULT_APP_CENTER_NAME_TEXT_SIZE; 197 198 //dock 199 /** 200 * padding of dock 201 */ 202 mDockPadding: number = PhonePresetStyleConstants.DEFAULT_DOCK_PADDING; 203 204 /** 205 * icon size of dock 206 */ 207 mDockIconSize: number = PhonePresetStyleConstants.DEFAULT_DOCK_ICON_SIZE; 208 209 /** 210 * gap of icon and icon 211 */ 212 mDockItemGap: number = PhonePresetStyleConstants.DEFAULT_DOCK_ITEM_GAP; 213 214 /** 215 * gap of dock and dock 216 */ 217 mDockGutter: number = PhonePresetStyleConstants.DEFAULT_DOCK_GUTTER; 218 219 /** 220 * save margin of dock 221 */ 222 mDockSaveMargin: number = PhonePresetStyleConstants.DEFAULT_DOCK_SAVE_MARGIN; 223 224 /** 225 * margin bottom of dock 226 */ 227 mDockMarginBottom: number = PhonePresetStyleConstants.DEFAULT_DOCK_MARGIN_BOTTOM; 228 229 /** 230 * margin bottom of dock (Immersive navigation bar) 231 */ 232 mDockMarginBottomHideBar: number = PhonePresetStyleConstants.DEFAULT_DOCK_MARGIN_BOTTOM_HIDE_BAR; 233 234 /** 235 * open folder grid height 236 */ 237 mOpenFolderGridHeight: number = PhonePresetStyleConstants.DEFAULT_OPEN_FOLDER_GRID_HEIGHT; 238 239 /** 240 * open folder swiper height 241 */ 242 mOpenFolderSwiperHeight: number = PhonePresetStyleConstants.DEFAULT_OPEN_FOLDER_SWIPER_HEIGHT; 243 244 private constructor() { 245 super(); 246 } 247 248 /** 249 * PhoneLauncherLayoutStyleConfig of instance 250 */ 251 static getInstance(): PhoneLauncherLayoutStyleConfig { 252 if (globalThis.PhoneLauncherLayoutStyleConfigInstance == null) { 253 globalThis.PhoneLauncherLayoutStyleConfigInstance = new PhoneLauncherLayoutStyleConfig(); 254 } 255 return globalThis.PhoneLauncherLayoutStyleConfigInstance; 256 } 257 258 getConfigLevel(): string { 259 return CommonConstants.LAYOUT_CONFIG_LEVEL_PRODUCT; 260 } 261 262 getFeatureName(): string { 263 return LauncherLayoutStyleConfig.LAUNCHER_PRODUCT_STYLE_CONFIG; 264 } 265} 266