Use kobakei's speed dial library.

This commit is contained in:
akwizgran
2018-09-27 17:20:20 +01:00
committed by Torsten Grote
parent 08391a31d0
commit dac10b5e5a
5 changed files with 96 additions and 40 deletions

View File

@@ -2,6 +2,7 @@ package org.briarproject.briar.android.contact;
import android.content.Intent;
import android.os.Bundle;
import android.support.design.widget.FloatingActionButton;
import android.support.design.widget.Snackbar;
import android.support.v4.app.ActivityCompat;
import android.support.v4.app.ActivityOptionsCompat;
@@ -14,9 +15,7 @@ import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import com.leinardi.android.speeddial.SpeedDialActionItem;
import com.leinardi.android.speeddial.SpeedDialView;
import android.widget.TextView;
import org.briarproject.bramble.api.contact.Contact;
import org.briarproject.bramble.api.contact.ContactId;
@@ -56,6 +55,9 @@ import java.util.logging.Logger;
import javax.annotation.Nullable;
import javax.inject.Inject;
import io.github.kobakei.materialfabspeeddial.FabSpeedDial;
import io.github.kobakei.materialfabspeeddial.FabSpeedDial.OnMenuItemClickListener;
import static android.os.Build.VERSION.SDK_INT;
import static android.support.design.widget.Snackbar.LENGTH_INDEFINITE;
import static android.support.v4.app.ActivityOptionsCompat.makeSceneTransitionAnimation;
@@ -69,7 +71,7 @@ import static org.briarproject.briar.android.contact.ConversationActivity.CONTAC
@MethodsNotNullByDefault
@ParametersNotNullByDefault
public class ContactListFragment extends BaseFragment implements EventListener,
SpeedDialView.OnActionSelectedListener {
OnMenuItemClickListener {
public static final String TAG = ContactListFragment.class.getName();
private static final Logger LOG = Logger.getLogger(TAG);
@@ -120,11 +122,12 @@ public class ContactListFragment extends BaseFragment implements EventListener,
getActivity().setTitle(R.string.contact_list_button);
View contentView = inflater.inflate(R.layout.fragment_contact_list, container, false);
View contentView =
inflater.inflate(R.layout.fragment_contact_list, container,
false);
SpeedDialView speedDialView = contentView.findViewById(R.id.speedDial);
speedDialView.inflate(R.menu.contact_list_actions);
speedDialView.setOnActionSelectedListener(this);
FabSpeedDial speedDialView = contentView.findViewById(R.id.speedDial);
speedDialView.addOnMenuItemClickListener(this);
OnContactClickListener<ContactListItem> onContactClickListener =
(view, item) -> {
@@ -195,23 +198,24 @@ public class ContactListFragment extends BaseFragment implements EventListener,
}
@Override
public boolean onActionSelected(SpeedDialActionItem item) {
switch (item.getId()) {
public void onMenuItemClick(FloatingActionButton fab, TextView v,
int itemId) {
switch (itemId) {
case R.id.action_add_contact:
Intent intent =
new Intent(getContext(), ContactExchangeActivity.class);
startActivity(intent);
return false;
return;
case R.id.action_open_link:
startActivity(new Intent(getContext(),
ContactInviteInputActivity.class));
return false;
return;
case R.id.action_send_link:
startActivity(new Intent(getContext(),
ContactInviteOutputActivity.class));
return false;
return;
default:
return false;
return;
}
}

View File

@@ -11,18 +11,14 @@
android:layout_height="match_parent"
app:scrollToEnd="false"/>
<com.leinardi.android.speeddial.SpeedDialOverlayLayout
android:id="@+id/overlay"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
<com.leinardi.android.speeddial.SpeedDialView
<io.github.kobakei.materialfabspeeddial.FabSpeedDial
android:id="@+id/speedDial"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="bottom|end"
app:sdMainFabClosedSrc="@drawable/ic_person_add"
app:sdMainFabOpenedSrc="@drawable/ic_close"
app:sdOverlayLayout="@id/overlay"/>
android:layout_width="match_parent"
android:layout_height="match_parent"
app:fab_fabDrawable="@drawable/ic_action_add"
app:fab_fabRippleColor="@android:color/transparent"
app:fab_menu="@menu/contact_list_actions"
app:fab_miniFabTextBackground="@color/briar_blue"
app:fab_miniFabTextColor="@android:color/white"/>
</android.support.design.widget.CoordinatorLayout>

View File

@@ -6,30 +6,21 @@
<item
android:id="@+id/action_add_contact"
android:icon="@drawable/ic_add_nearby"
android:orderInCategory="3"
android:title="@string/add_contact_nearby_title"
app:showAsAction="ifRoom"/>
<!--
<item
android:id="@+id/action_open_link"
android:icon="@drawable/ic_link"
android:title="@string/open_link_title"
app:showAsAction="never"/>
<item
android:id="@+id/action_send_link"
android:icon="@drawable/ic_link"
android:title="@string/send_link_title"
app:showAsAction="never"/>
-->
<item
android:id="@+id/action_open_link"
android:icon="@drawable/ic_link_down"
android:orderInCategory="2"
android:title="@string/open_code_title"
app:showAsAction="never"/>
<item
android:id="@+id/action_send_link"
android:icon="@drawable/ic_link_up"
android:orderInCategory="1"
android:title="@string/send_code_title"
app:showAsAction="never"/>