tls-psk: switch layouts in animator by id
This commit is contained in:
@@ -52,7 +52,6 @@ import android.view.ViewGroup;
|
|||||||
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
|
import android.view.ViewTreeObserver.OnGlobalLayoutListener;
|
||||||
import android.widget.ImageView;
|
import android.widget.ImageView;
|
||||||
import android.widget.TextView;
|
import android.widget.TextView;
|
||||||
import android.widget.ViewAnimator;
|
|
||||||
|
|
||||||
import com.google.zxing.client.android.Intents;
|
import com.google.zxing.client.android.Intents;
|
||||||
import org.sufficientlysecure.keychain.R;
|
import org.sufficientlysecure.keychain.R;
|
||||||
@@ -67,16 +66,11 @@ import org.sufficientlysecure.keychain.ui.transfer.presenter.TransferPresenter.T
|
|||||||
import org.sufficientlysecure.keychain.ui.util.Notify;
|
import org.sufficientlysecure.keychain.ui.util.Notify;
|
||||||
import org.sufficientlysecure.keychain.ui.util.Notify.Style;
|
import org.sufficientlysecure.keychain.ui.util.Notify.Style;
|
||||||
import org.sufficientlysecure.keychain.ui.widget.ConnectionStatusView;
|
import org.sufficientlysecure.keychain.ui.widget.ConnectionStatusView;
|
||||||
|
import org.sufficientlysecure.keychain.ui.widget.ToolableViewAnimator;
|
||||||
|
|
||||||
|
|
||||||
@RequiresApi(api = VERSION_CODES.LOLLIPOP)
|
@RequiresApi(api = VERSION_CODES.LOLLIPOP)
|
||||||
public class TransferFragment extends Fragment implements TransferMvpView {
|
public class TransferFragment extends Fragment implements TransferMvpView {
|
||||||
public static final int VIEW_WAITING = 0;
|
|
||||||
public static final int VIEW_CONNECTING = 1;
|
|
||||||
public static final int VIEW_CONNECTED = 2;
|
|
||||||
public static final int VIEW_RECEIVING = 3;
|
|
||||||
public static final int VIEW_NO_WIFI = 4;
|
|
||||||
|
|
||||||
public static final int REQUEST_CODE_SCAN = 1;
|
public static final int REQUEST_CODE_SCAN = 1;
|
||||||
public static final int LOADER_ID = 1;
|
public static final int LOADER_ID = 1;
|
||||||
|
|
||||||
@@ -85,7 +79,7 @@ public class TransferFragment extends Fragment implements TransferMvpView {
|
|||||||
|
|
||||||
private ImageView vQrCodeImage;
|
private ImageView vQrCodeImage;
|
||||||
private TransferPresenter presenter;
|
private TransferPresenter presenter;
|
||||||
private ViewAnimator vTransferAnimator;
|
private ToolableViewAnimator vTransferAnimator;
|
||||||
private TextView vConnectionStatusText1;
|
private TextView vConnectionStatusText1;
|
||||||
private TextView vConnectionStatusText2;
|
private TextView vConnectionStatusText2;
|
||||||
private ConnectionStatusView vConnectionStatusView1;
|
private ConnectionStatusView vConnectionStatusView1;
|
||||||
@@ -113,7 +107,7 @@ public class TransferFragment extends Fragment implements TransferMvpView {
|
|||||||
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
|
||||||
View view = inflater.inflate(R.layout.transfer_fragment, container, false);
|
View view = inflater.inflate(R.layout.transfer_fragment, container, false);
|
||||||
|
|
||||||
vTransferAnimator = (ViewAnimator) view.findViewById(R.id.transfer_animator);
|
vTransferAnimator = (ToolableViewAnimator) view.findViewById(R.id.transfer_animator);
|
||||||
|
|
||||||
vConnectionStatusText1 = (TextView) view.findViewById(R.id.connection_status_1);
|
vConnectionStatusText1 = (TextView) view.findViewById(R.id.connection_status_1);
|
||||||
vConnectionStatusText2 = (TextView) view.findViewById(R.id.connection_status_2);
|
vConnectionStatusText2 = (TextView) view.findViewById(R.id.connection_status_2);
|
||||||
@@ -203,17 +197,17 @@ public class TransferFragment extends Fragment implements TransferMvpView {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showNotOnWifi() {
|
public void showNotOnWifi() {
|
||||||
vTransferAnimator.setDisplayedChild(VIEW_NO_WIFI);
|
vTransferAnimator.setDisplayedChildId(R.id.transfer_layout_no_wifi);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showWaitingForConnection() {
|
public void showWaitingForConnection() {
|
||||||
vTransferAnimator.setDisplayedChild(VIEW_WAITING);
|
vTransferAnimator.setDisplayedChildId(R.id.transfer_layout_waiting);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showEstablishingConnection() {
|
public void showEstablishingConnection() {
|
||||||
vTransferAnimator.setDisplayedChild(VIEW_CONNECTING);
|
vTransferAnimator.setDisplayedChildId(R.id.transfer_layout_connecting);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -226,12 +220,12 @@ public class TransferFragment extends Fragment implements TransferMvpView {
|
|||||||
vConnectionStatusView1.setConnected(true);
|
vConnectionStatusView1.setConnected(true);
|
||||||
vConnectionStatusView2.setConnected(true);
|
vConnectionStatusView2.setConnected(true);
|
||||||
|
|
||||||
vTransferAnimator.setDisplayedChild(VIEW_CONNECTED);
|
vTransferAnimator.setDisplayedChildId(R.id.transfer_layout_connected);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void showReceivingKeys() {
|
public void showReceivingKeys() {
|
||||||
vTransferAnimator.setDisplayedChild(VIEW_RECEIVING);
|
vTransferAnimator.setDisplayedChildId(R.id.transfer_layout_passive);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|||||||
@@ -99,4 +99,21 @@ public class ToolableViewAnimator extends ViewAnimator {
|
|||||||
setOutAnimation(savedOutAnim);
|
setOutAnimation(savedOutAnim);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setDisplayedChildId(int id) {
|
||||||
|
if (getDisplayedChildId() == id) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
for (int i = 0, count = getChildCount(); i < count; i++) {
|
||||||
|
if (getChildAt(i).getId() == id) {
|
||||||
|
setDisplayedChild(i);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String name = getResources().getResourceEntryName(id);
|
||||||
|
throw new IllegalArgumentException("No view with ID " + name);
|
||||||
|
}
|
||||||
|
|
||||||
|
public int getDisplayedChildId() {
|
||||||
|
return getChildAt(getDisplayedChild()).getId();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -13,6 +13,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:id="@+id/transfer_layout_waiting"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:padding="16dp">
|
android:padding="16dp">
|
||||||
@@ -92,6 +93,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:id="@+id/transfer_layout_connecting"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:padding="16dp">
|
android:padding="16dp">
|
||||||
@@ -116,6 +118,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:id="@+id/transfer_layout_connected"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
@@ -205,6 +208,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:id="@+id/transfer_layout_passive"
|
||||||
android:orientation="vertical">
|
android:orientation="vertical">
|
||||||
|
|
||||||
<RelativeLayout
|
<RelativeLayout
|
||||||
@@ -275,6 +279,7 @@
|
|||||||
<LinearLayout
|
<LinearLayout
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
|
android:id="@+id/transfer_layout_no_wifi"
|
||||||
android:gravity="center_vertical"
|
android:gravity="center_vertical"
|
||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:padding="16dp">
|
android:padding="16dp">
|
||||||
|
|||||||
Reference in New Issue
Block a user