1 /* 2 * Copyright (C) 2023 The Android Open Source Project 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * http://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 * 16 */ 17 18 package com.android.systemui.keyguard.ui.view.layout.sections 19 20 import android.content.res.Resources 21 import androidx.constraintlayout.widget.ConstraintSet 22 import androidx.constraintlayout.widget.ConstraintSet.BOTTOM 23 import androidx.constraintlayout.widget.ConstraintSet.LEFT 24 import androidx.constraintlayout.widget.ConstraintSet.PARENT_ID 25 import androidx.constraintlayout.widget.ConstraintSet.RIGHT 26 import com.android.systemui.R 27 import com.android.systemui.dagger.qualifiers.Main 28 import com.android.systemui.keyguard.data.repository.KeyguardSection 29 import javax.inject.Inject 30 31 class DefaultShortcutsSection @Inject constructor(@Main private val resources: Resources) : 32 KeyguardSection { 33 override fun apply(constraintSet: ConstraintSet) { 34 val width = resources.getDimensionPixelSize(R.dimen.keyguard_affordance_fixed_width) 35 val height = resources.getDimensionPixelSize(R.dimen.keyguard_affordance_fixed_height) 36 val horizontalOffsetMargin = 37 resources.getDimensionPixelSize(R.dimen.keyguard_affordance_horizontal_offset) 38 val verticalOffsetMargin = 39 resources.getDimensionPixelSize(R.dimen.keyguard_affordance_vertical_offset) 40 41 constraintSet.apply { 42 constrainWidth(R.id.start_button, width) 43 constrainHeight(R.id.start_button, height) 44 connect(R.id.start_button, LEFT, PARENT_ID, LEFT, horizontalOffsetMargin) 45 connect(R.id.start_button, BOTTOM, PARENT_ID, BOTTOM, verticalOffsetMargin) 46 47 constrainWidth(R.id.end_button, width) 48 constrainHeight(R.id.end_button, height) 49 connect(R.id.end_button, RIGHT, PARENT_ID, RIGHT, horizontalOffsetMargin) 50 connect(R.id.end_button, BOTTOM, PARENT_ID, BOTTOM, verticalOffsetMargin) 51 } 52 } 53 } 54