diff --git a/briar-android/res/drawable/bluetooth.png b/briar-android/res/drawable/bluetooth.png new file mode 100644 index 0000000000000000000000000000000000000000..b5e6ef06fc3ae965337813ee01dcfc195e59dfb5 Binary files /dev/null and b/briar-android/res/drawable/bluetooth.png differ diff --git a/briar-android/res/layout/invitation_bluetooth_start.xml b/briar-android/res/layout/invitation_bluetooth_start.xml new file mode 100644 index 0000000000000000000000000000000000000000..855e9d0791a40af83b0b82a9ab78be92918a6fa7 --- /dev/null +++ b/briar-android/res/layout/invitation_bluetooth_start.xml @@ -0,0 +1,53 @@ +<?xml version="1.0" encoding="utf-8"?> +<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:orientation="vertical" + android:layout_width="match_parent" + android:layout_height="match_parent" + android:padding="7dp"> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="@string/your_nickname" + android:id="@+id/yourNicknameView" + android:padding="7dp"/> + + <Spinner + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:id="@+id/spinner" + android:spinnerMode="dropdown" + android:padding="7dp"/> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="@string/face_to_face" + android:id="@+id/faceToFaceView" + android:padding="7dp"/> + + <ImageView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:id="@+id/imageView" + android:src="@drawable/bluetooth" + android:scaleType="fitCenter" + android:baselineAlignBottom="false" + android:cropToPadding="false" + android:layout_weight="1"/> + + <TextView + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:text="@string/bluetooth_explanation" + android:id="@+id/explanationView" + android:padding="7dp"/> + + <Button + android:layout_width="wrap_content" + android:layout_height="wrap_content" + android:text="@string/continue_button" + android:id="@+id/continueButton" + android:layout_gravity="center_horizontal" + android:layout_weight="0"/> +</LinearLayout> \ No newline at end of file diff --git a/briar-android/res/values/strings.xml b/briar-android/res/values/strings.xml index 6532d77d8a105c55ee96a9684282b88ab136f3fe..0076ca171c04067c12ba51f4b549e85566f79a02 100644 --- a/briar-android/res/values/strings.xml +++ b/briar-android/res/values/strings.xml @@ -36,8 +36,9 @@ <string name="contact_list_title">Contacts</string> <string name="no_contacts">No contacts</string> <string name="add_contact_title">Add a Contact</string> - <string name="your_nickname">Your nickname: </string> + <string name="your_nickname">Please select the identity you want to use:</string> <string name="face_to_face">For security reasons you must be face-to-face with the person you want to add as a contact.\n\nThis will prevent anyone from impersonating you or reading your messages in future.</string> + <string name="bluetooth_explanation">Contacts need to add each other at the same time. Please continue together and allow Bluetooth to be enabled for the process to work.</string> <string name="continue_button">Continue</string> <string name="your_invitation_code">Your invitation code is</string> <string name="enter_invitation_code">Please enter your contact\'s invitation code:</string> diff --git a/briar-android/src/org/briarproject/android/invitation/ChooseIdentityView.java b/briar-android/src/org/briarproject/android/invitation/ChooseIdentityView.java index 5ecd1898fadb719cd74b7ff691af18c64d8da260..fc2e4524a34ec771acc93a605167c87f96a3abb9 100644 --- a/briar-android/src/org/briarproject/android/invitation/ChooseIdentityView.java +++ b/briar-android/src/org/briarproject/android/invitation/ChooseIdentityView.java @@ -21,6 +21,7 @@ import org.briarproject.api.LocalAuthor; import android.content.Context; import android.content.Intent; +import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; @@ -35,7 +36,6 @@ implements OnItemSelectedListener, OnClickListener { private LocalAuthorSpinnerAdapter adapter = null; private Spinner spinner = null; - private Button continueButton = null; ChooseIdentityView(Context ctx) { super(ctx); @@ -45,34 +45,17 @@ implements OnItemSelectedListener, OnClickListener { removeAllViews(); Context ctx = getContext(); - LinearLayout innerLayout = new LinearLayout(ctx); - innerLayout.setLayoutParams(MATCH_WRAP); - innerLayout.setOrientation(HORIZONTAL); - innerLayout.setGravity(CENTER); - - TextView yourNickname = new TextView(ctx); - yourNickname.setTextSize(18); - yourNickname.setPadding(pad, pad, pad, pad); - yourNickname.setText(R.string.your_nickname); - innerLayout.addView(yourNickname); + LayoutInflater inflater = (LayoutInflater) ctx.getSystemService + (Context.LAYOUT_INFLATER_SERVICE); + View view = inflater.inflate(R.layout.invitation_bluetooth_start, this); adapter = new LocalAuthorSpinnerAdapter(ctx, false); - spinner = new Spinner(ctx); + spinner = (Spinner) view.findViewById(R.id.spinner); spinner.setAdapter(adapter); spinner.setOnItemSelectedListener(this); - innerLayout.addView(spinner); - addView(innerLayout); - - TextView faceToFace = new TextView(ctx); - faceToFace.setPadding(pad, pad, pad, pad); - faceToFace.setText(R.string.face_to_face); - addView(faceToFace); - continueButton = new Button(ctx); - continueButton.setLayoutParams(WRAP_WRAP); - continueButton.setText(R.string.continue_button); + Button continueButton = (Button) view.findViewById(R.id.continueButton); continueButton.setOnClickListener(this); - addView(continueButton); container.loadLocalAuthors(); }