Merge "Fix Wi-Fi Easy Connect QR code scanner problems"

This commit is contained in:
Arc Wang
2019-03-29 01:57:35 +00:00
committed by Android (Google) Code Review
4 changed files with 12 additions and 57 deletions

View File

@@ -43,7 +43,7 @@
android:layout_marginBottom="8dp"
style="?android:attr/progressBarStyleHorizontal"/>
<com.android.settings.wifi.qrcode.QrPreviewLayout
<FrameLayout
android:layout_width="@dimen/qrcode_preview_size"
android:layout_height="@dimen/qrcode_preview_size">
<TextureView
@@ -54,7 +54,7 @@
android:id="@+id/decorate_view"
android:layout_width="wrap_content"
android:layout_height="match_parent"/>
</com.android.settings.wifi.qrcode.QrPreviewLayout>
</FrameLayout>
<TextView
android:id="@+id/error_message"

View File

@@ -43,18 +43,21 @@
android:layout_marginBottom="8dp"
style="?android:attr/progressBarStyleHorizontal"/>
<com.android.settings.wifi.qrcode.QrPreviewLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
<androidx.constraintlayout.widget.ConstraintLayout
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
<TextureView
android:id="@+id/preview_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
android:layout_height="0dp"
app:layout_constraintDimensionRatio="1:1"/>
<com.android.settings.wifi.qrcode.QrDecorateView
android:id="@+id/decorate_view"
android:layout_width="match_parent"
android:layout_height="wrap_content"/>
</com.android.settings.wifi.qrcode.QrPreviewLayout>
android:layout_height="0dp"
app:layout_constraintDimensionRatio="1:1"/>
</androidx.constraintlayout.widget.ConstraintLayout>
<TextView
android:id="@+id/error_message"

View File

@@ -134,6 +134,7 @@ public class WifiDppQrCodeScannerFragment extends WifiDppQrCodeBaseFragment impl
if (msg.arg1 == ARG_RESTART_CAMERA) {
mProgressBar.setVisibility(View.INVISIBLE);
mDecorateView.setFocused(false);
restartCamera();
}
break;

View File

@@ -1,49 +0,0 @@
/*
* Copyright (C) 2018 The Android Open Source Project
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License
*/
package com.android.settings.wifi.qrcode;
import android.content.Context;
import android.util.AttributeSet;
import android.widget.FrameLayout;
/**
* A customize square {@link FrameLayout}.
* This is used for camera preview. Choose the smaller size of both dimensions as length and width.
*/
public class QrPreviewLayout extends FrameLayout {
public QrPreviewLayout(Context context) {
super(context);
}
public QrPreviewLayout(Context context, AttributeSet attrs) {
super(context, attrs);
}
public QrPreviewLayout(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
// Choose the smaller size of the two dimensions.
if (MeasureSpec.getSize(widthMeasureSpec) > MeasureSpec.getSize(heightMeasureSpec)) {
super.onMeasure(heightMeasureSpec, heightMeasureSpec);
} else {
super.onMeasure(widthMeasureSpec, widthMeasureSpec);
}
}
}