Some text added under image buttons + animation for history delete all button like iOS
This commit is contained in:
parent
ac6361fe2a
commit
a5084da2c8
17 changed files with 296 additions and 71 deletions
Before Width: | Height: | Size: 305 B After Width: | Height: | Size: 305 B |
|
@ -2,8 +2,6 @@
|
|||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:state_pressed="true"
|
||||
android:drawable="@drawable/history_delete_over" />
|
||||
<item android:state_enabled="false"
|
||||
android:drawable="@drawable/history_delete_disabled" />
|
||||
<item
|
||||
android:drawable="@drawable/history_delete_default" />
|
||||
</selector>
|
||||
|
|
7
res/drawable/switch_button_text_color.xml
Normal file
7
res/drawable/switch_button_text_color.xml
Normal file
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<selector xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<item android:state_enabled="false"
|
||||
android:color="@color/text_button" />
|
||||
|
||||
<item android:color="@color/text_button_selected" />
|
||||
</selector>
|
|
@ -10,30 +10,42 @@
|
|||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_new_discussion"
|
||||
android:id="@+id/newDiscussion"
|
||||
android:src="@drawable/chat_new"
|
||||
android:background="@drawable/chat_new"
|
||||
android:text="@string/button_new_chat"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_edit"
|
||||
android:id="@+id/edit"
|
||||
android:src="@drawable/chat_edit"
|
||||
android:background="@drawable/chat_edit"
|
||||
android:text="@string/button_edit"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_validate"
|
||||
android:id="@+id/ok"
|
||||
android:src="@drawable/chat_ok"
|
||||
android:background="@drawable/chat_ok"
|
||||
android:text="@string/button_ok"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:visibility="gone"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
|
|
@ -11,20 +11,28 @@
|
|||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_edit"
|
||||
android:id="@+id/editContact"
|
||||
android:src="@drawable/contact_edit"
|
||||
android:background="@drawable/contact_edit"
|
||||
android:text="@string/button_edit"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_add_contact"
|
||||
android:id="@+id/newContact"
|
||||
android:src="@drawable/contact_add"
|
||||
android:background="@drawable/contact_add"
|
||||
android:text="@string/button_add_contact"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
|
|
|
@ -10,30 +10,42 @@
|
|||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_all_contacts"
|
||||
android:id="@+id/allContacts"
|
||||
android:src="@drawable/all_contacts"
|
||||
android:background="@drawable/all_contacts"
|
||||
android:text="@string/button_all_contacts"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@drawable/switch_button_text_color"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_linphone_contacts"
|
||||
android:id="@+id/linphoneContacts"
|
||||
android:src="@drawable/linphone_contacts"
|
||||
android:background="@drawable/linphone_contacts"
|
||||
android:text="@string/button_sip_contacts"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@drawable/switch_button_text_color"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_add_contact"
|
||||
android:id="@+id/newContact"
|
||||
android:src="@drawable/new_contact"
|
||||
android:background="@drawable/new_contact"
|
||||
android:text="@string/button_add_contact"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
|
|
|
@ -8,52 +8,73 @@
|
|||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
android:orientation="horizontal"
|
||||
android:background="@drawable/toolsbar_background">
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_delete"
|
||||
android:id="@+id/deleteAll"
|
||||
android:src="@drawable/history_delete"
|
||||
android:background="@drawable/history_delete"
|
||||
android:text="@string/button_delete_all"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_all_calls"
|
||||
android:id="@+id/allCalls"
|
||||
android:src="@drawable/history_all"
|
||||
android:background="@drawable/history_all"
|
||||
android:text="@string/button_all_call"
|
||||
android:gravity="center"
|
||||
android:paddingTop="20dp"
|
||||
android:textColor="@drawable/switch_button_text_color"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_missed_calls"
|
||||
android:id="@+id/missedCalls"
|
||||
android:src="@drawable/history_missed"
|
||||
android:background="@drawable/history_missed"
|
||||
android:text="@string/button_missed_call"
|
||||
android:gravity="center"
|
||||
android:paddingTop="20dp"
|
||||
android:textColor="@drawable/switch_button_text_color"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_edit"
|
||||
android:id="@+id/edit"
|
||||
android:src="@drawable/history_edit"
|
||||
android:background="@drawable/history_edit"
|
||||
android:text="@string/button_edit"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_validate"
|
||||
android:id="@+id/ok"
|
||||
android:src="@drawable/history_ok"
|
||||
android:background="@drawable/history_ok"
|
||||
android:text="@string/button_ok"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:visibility="gone"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
|
|
@ -8,52 +8,73 @@
|
|||
<LinearLayout
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:orientation="horizontal">
|
||||
android:orientation="horizontal"
|
||||
android:background="@drawable/toolsbar_background">
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_delete"
|
||||
android:id="@+id/deleteAll"
|
||||
android:src="@drawable/history_delete"
|
||||
android:background="@drawable/history_delete"
|
||||
android:text="@string/button_delete_all"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_all_calls"
|
||||
android:id="@+id/allCalls"
|
||||
android:src="@drawable/history_all"
|
||||
android:background="@drawable/history_all"
|
||||
android:text="@string/button_all_call"
|
||||
android:gravity="center"
|
||||
android:paddingTop="20dp"
|
||||
android:textColor="@drawable/switch_button_text_color"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_missed_calls"
|
||||
android:id="@+id/missedCalls"
|
||||
android:src="@drawable/history_missed"
|
||||
android:background="@drawable/history_missed"
|
||||
android:text="@string/button_missed_call"
|
||||
android:gravity="center"
|
||||
android:paddingTop="20dp"
|
||||
android:textColor="@drawable/switch_button_text_color"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_edit"
|
||||
android:id="@+id/edit"
|
||||
android:src="@drawable/history_edit"
|
||||
android:background="@drawable/history_edit"
|
||||
android:text="@string/button_edit"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
android:scaleType="centerCrop"
|
||||
android:adjustViewBounds="true"
|
||||
android:layout_weight="1"/>
|
||||
|
||||
<ImageView
|
||||
<TextView
|
||||
android:contentDescription="@string/content_description_validate"
|
||||
android:id="@+id/ok"
|
||||
android:src="@drawable/history_ok"
|
||||
android:background="@drawable/history_ok"
|
||||
android:text="@string/button_ok"
|
||||
android:gravity="center"
|
||||
android:paddingTop="25dp"
|
||||
android:textColor="@color/text_button"
|
||||
android:visibility="gone"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
|
|
|
@ -273,6 +273,16 @@
|
|||
<string name="button_setup_back">Retour</string>
|
||||
<string name="button_setup_next">Allons-y</string>
|
||||
|
||||
<string name="button_new_chat">Nouveau chat</string>
|
||||
<string name="button_edit">Modifier</string>
|
||||
<string name="button_ok">Valider</string>
|
||||
<string name="button_all_contacts">Tous</string>
|
||||
<string name="button_sip_contacts">SIP</string>
|
||||
<string name="button_add_contact">Nouveau contact</string>
|
||||
<string name="button_all_call">Tous</string>
|
||||
<string name="button_missed_call">Manqués</string>
|
||||
<string name="button_delete_all">Tout supprimer</string>
|
||||
|
||||
<string name="share_picture_size_small">Petite</string>
|
||||
<string name="share_picture_size_medium">Moyenne</string>
|
||||
<string name="share_picture_size_large">Grande</string>
|
||||
|
|
|
@ -6,6 +6,8 @@
|
|||
<color name="text_over">#ffb9c4cb</color>
|
||||
<color name="text_default">#ff5b656f</color>
|
||||
<color name="text_header">#ff7e8e9e</color>
|
||||
<color name="text_button">#ff41484f</color>
|
||||
<color name="text_button_selected">#ffa6b3bf</color>
|
||||
|
||||
<color name="numpad_background_bottom">#ffe4edf2</color>
|
||||
<color name="numpad_background_dialer">#ffd8d8d8</color>
|
||||
|
|
|
@ -324,6 +324,16 @@
|
|||
<string name="button_setup_back">Back</string>
|
||||
<string name="button_setup_next">Let\'s go</string>
|
||||
|
||||
<string name="button_new_chat">New conversation</string>
|
||||
<string name="button_edit">Edit</string>
|
||||
<string name="button_ok">Okay</string>
|
||||
<string name="button_all_contacts">All</string>
|
||||
<string name="button_sip_contacts">SIP</string>
|
||||
<string name="button_add_contact">New contact</string>
|
||||
<string name="button_all_call">All</string>
|
||||
<string name="button_missed_call">Missed</string>
|
||||
<string name="button_delete_all">Delete All</string>
|
||||
|
||||
<string name="share_picture_size_small">Small</string>
|
||||
<string name="share_picture_size_medium">Medium</string>
|
||||
<string name="share_picture_size_large">Large</string>
|
||||
|
|
|
@ -47,7 +47,7 @@ public class ChatListFragment extends Fragment implements OnClickListener, OnIte
|
|||
private LayoutInflater mInflater;
|
||||
private List<String> mConversations, mDrafts;
|
||||
private ListView chatList;
|
||||
private ImageView edit, ok, newDiscussion;
|
||||
private TextView edit, ok, newDiscussion;
|
||||
private EditText fastNewChat;
|
||||
private boolean isEditMode = false;
|
||||
|
||||
|
@ -61,11 +61,11 @@ public class ChatListFragment extends Fragment implements OnClickListener, OnIte
|
|||
chatList.setOnItemClickListener(this);
|
||||
registerForContextMenu(chatList);
|
||||
|
||||
edit = (ImageView) view.findViewById(R.id.edit);
|
||||
edit = (TextView) view.findViewById(R.id.edit);
|
||||
edit.setOnClickListener(this);
|
||||
newDiscussion = (ImageView) view.findViewById(R.id.newDiscussion);
|
||||
newDiscussion = (TextView) view.findViewById(R.id.newDiscussion);
|
||||
newDiscussion.setOnClickListener(this);
|
||||
ok = (ImageView) view.findViewById(R.id.ok);
|
||||
ok = (TextView) view.findViewById(R.id.ok);
|
||||
ok.setOnClickListener(this);
|
||||
|
||||
fastNewChat = (EditText) view.findViewById(R.id.newFastChat);
|
||||
|
|
|
@ -30,7 +30,6 @@ import android.view.LayoutInflater;
|
|||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.TableLayout;
|
||||
import android.widget.TextView;
|
||||
|
||||
|
@ -39,7 +38,7 @@ import android.widget.TextView;
|
|||
*/
|
||||
public class ContactFragment extends Fragment implements OnClickListener {
|
||||
private Contact contact;
|
||||
private ImageView editContact, newContact;
|
||||
private TextView editContact, newContact;
|
||||
private LayoutInflater inflater;
|
||||
private View view;
|
||||
|
||||
|
@ -64,9 +63,9 @@ public class ContactFragment extends Fragment implements OnClickListener {
|
|||
this.inflater = inflater;
|
||||
view = inflater.inflate(R.layout.contact, container, false);
|
||||
|
||||
editContact = (ImageView) view.findViewById(R.id.editContact);
|
||||
editContact = (TextView) view.findViewById(R.id.editContact);
|
||||
editContact.setOnClickListener(this);
|
||||
newContact = (ImageView) view.findViewById(R.id.newContact);
|
||||
newContact = (TextView) view.findViewById(R.id.newContact);
|
||||
newContact.setOnClickListener(this);
|
||||
|
||||
return view;
|
||||
|
|
|
@ -47,7 +47,7 @@ import android.widget.TextView;
|
|||
public class ContactsFragment extends Fragment implements OnClickListener, OnItemClickListener {
|
||||
private LayoutInflater mInflater;
|
||||
private ListView contactsList;
|
||||
private ImageView allContacts, linphoneContacts, newContact;
|
||||
private TextView allContacts, linphoneContacts, newContact;
|
||||
private boolean onlyDisplayLinphoneContacts;
|
||||
private int lastKnownPosition;
|
||||
private AlphabetIndexer indexer;
|
||||
|
@ -68,13 +68,13 @@ public class ContactsFragment extends Fragment implements OnClickListener, OnIte
|
|||
contactsList = (ListView) view.findViewById(R.id.contactsList);
|
||||
contactsList.setOnItemClickListener(this);
|
||||
|
||||
allContacts = (ImageView) view.findViewById(R.id.allContacts);
|
||||
allContacts = (TextView) view.findViewById(R.id.allContacts);
|
||||
allContacts.setOnClickListener(this);
|
||||
|
||||
linphoneContacts = (ImageView) view.findViewById(R.id.linphoneContacts);
|
||||
linphoneContacts = (TextView) view.findViewById(R.id.linphoneContacts);
|
||||
linphoneContacts.setOnClickListener(this);
|
||||
|
||||
newContact = (ImageView) view.findViewById(R.id.newContact);
|
||||
newContact = (TextView) view.findViewById(R.id.newContact);
|
||||
newContact.setOnClickListener(this);
|
||||
newContact.setEnabled(LinphoneManager.getLc().getCallsNb() == 0);
|
||||
|
||||
|
|
|
@ -38,6 +38,9 @@ import android.view.ContextMenu.ContextMenuInfo;
|
|||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.view.animation.Animation;
|
||||
import android.view.animation.AnimationUtils;
|
||||
import android.view.animation.Animation.AnimationListener;
|
||||
import android.view.ViewGroup;
|
||||
import android.widget.BaseExpandableListAdapter;
|
||||
import android.widget.ExpandableListView;
|
||||
|
@ -53,7 +56,7 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnChil
|
|||
private Handler mHandler = new Handler();
|
||||
private ExpandableListView historyList;
|
||||
private LayoutInflater mInflater;
|
||||
private ImageView allCalls, missedCalls, edit, ok, deleteAll;
|
||||
private TextView allCalls, missedCalls, edit, ok, deleteAll;
|
||||
private boolean onlyDisplayMissedCalls, isEditMode;
|
||||
private SparseArray<List<LinphoneCallLog>> mLogs;
|
||||
|
||||
|
@ -67,23 +70,23 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnChil
|
|||
historyList.setOnChildClickListener(this);
|
||||
historyList.setOnGroupClickListener(this);
|
||||
|
||||
deleteAll = (ImageView) view.findViewById(R.id.deleteAll);
|
||||
deleteAll = (TextView) view.findViewById(R.id.deleteAll);
|
||||
deleteAll.setOnClickListener(this);
|
||||
deleteAll.setEnabled(false);
|
||||
deleteAll.setVisibility(View.INVISIBLE);
|
||||
|
||||
allCalls = (ImageView) view.findViewById(R.id.allCalls);
|
||||
allCalls = (TextView) view.findViewById(R.id.allCalls);
|
||||
allCalls.setOnClickListener(this);
|
||||
|
||||
missedCalls = (ImageView) view.findViewById(R.id.missedCalls);
|
||||
missedCalls = (TextView) view.findViewById(R.id.missedCalls);
|
||||
missedCalls.setOnClickListener(this);
|
||||
|
||||
allCalls.setEnabled(false);
|
||||
onlyDisplayMissedCalls = false;
|
||||
|
||||
edit = (ImageView) view.findViewById(R.id.edit);
|
||||
edit = (TextView) view.findViewById(R.id.edit);
|
||||
edit.setOnClickListener(this);
|
||||
|
||||
ok = (ImageView) view.findViewById(R.id.ok);
|
||||
ok = (TextView) view.findViewById(R.id.ok);
|
||||
ok.setOnClickListener(this);
|
||||
|
||||
return view;
|
||||
|
@ -195,13 +198,13 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnChil
|
|||
else if (id == R.id.ok) {
|
||||
edit.setVisibility(View.VISIBLE);
|
||||
ok.setVisibility(View.GONE);
|
||||
deleteAll.setEnabled(false);
|
||||
hideDeleteAllButton();
|
||||
isEditMode = false;
|
||||
}
|
||||
else if (id == R.id.edit) {
|
||||
edit.setVisibility(View.GONE);
|
||||
ok.setVisibility(View.VISIBLE);
|
||||
deleteAll.setEnabled(true);
|
||||
showDeleteAllButton();
|
||||
isEditMode = true;
|
||||
}
|
||||
else if (id == R.id.deleteAll) {
|
||||
|
@ -247,6 +250,66 @@ public class HistoryFragment extends Fragment implements OnClickListener, OnChil
|
|||
return false;
|
||||
}
|
||||
|
||||
private void hideDeleteAllButton() {
|
||||
if (deleteAll == null || deleteAll.getVisibility() != View.VISIBLE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (getActivity().getResources().getBoolean(R.bool.disable_animations)) {
|
||||
deleteAll.setVisibility(View.INVISIBLE);
|
||||
} else {
|
||||
Animation animation = AnimationUtils.loadAnimation(getActivity(), R.anim.slide_out_right_to_left);
|
||||
animation.setAnimationListener(new AnimationListener() {
|
||||
@Override
|
||||
public void onAnimationStart(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationRepeat(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationEnd(Animation animation) {
|
||||
deleteAll.setVisibility(View.INVISIBLE);
|
||||
animation.setAnimationListener(null);
|
||||
}
|
||||
});
|
||||
deleteAll.startAnimation(animation);
|
||||
}
|
||||
}
|
||||
|
||||
private void showDeleteAllButton() {
|
||||
if (deleteAll == null || deleteAll.getVisibility() == View.VISIBLE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (getActivity().getResources().getBoolean(R.bool.disable_animations)) {
|
||||
deleteAll.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
Animation animation = AnimationUtils.loadAnimation(getActivity(), R.anim.slide_in_left_to_right);
|
||||
animation.setAnimationListener(new AnimationListener() {
|
||||
@Override
|
||||
public void onAnimationStart(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationRepeat(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationEnd(Animation animation) {
|
||||
deleteAll.setVisibility(View.VISIBLE);
|
||||
animation.setAnimationListener(null);
|
||||
}
|
||||
});
|
||||
deleteAll.startAnimation(animation);
|
||||
}
|
||||
}
|
||||
|
||||
class CallHistoryAdapter extends BaseExpandableListAdapter {
|
||||
private Bitmap missedCall, outgoingCall, incomingCall;
|
||||
|
||||
|
|
|
@ -38,6 +38,9 @@ import android.view.MenuItem;
|
|||
import android.view.View;
|
||||
import android.view.View.OnClickListener;
|
||||
import android.view.ViewGroup;
|
||||
import android.view.animation.Animation;
|
||||
import android.view.animation.Animation.AnimationListener;
|
||||
import android.view.animation.AnimationUtils;
|
||||
import android.widget.AdapterView;
|
||||
import android.widget.AdapterView.AdapterContextMenuInfo;
|
||||
import android.widget.AdapterView.OnItemClickListener;
|
||||
|
@ -52,7 +55,7 @@ import android.widget.TextView;
|
|||
public class HistorySimpleFragment extends Fragment implements OnClickListener, OnItemClickListener {
|
||||
private ListView historyList;
|
||||
private LayoutInflater mInflater;
|
||||
private ImageView allCalls, missedCalls, edit, ok, deleteAll;
|
||||
private TextView allCalls, missedCalls, edit, ok, deleteAll;
|
||||
private boolean onlyDisplayMissedCalls, isEditMode;
|
||||
private List<LinphoneCallLog> mLogs;
|
||||
|
||||
|
@ -66,23 +69,23 @@ public class HistorySimpleFragment extends Fragment implements OnClickListener,
|
|||
historyList.setOnItemClickListener(this);
|
||||
registerForContextMenu(historyList);
|
||||
|
||||
deleteAll = (ImageView) view.findViewById(R.id.deleteAll);
|
||||
deleteAll = (TextView) view.findViewById(R.id.deleteAll);
|
||||
deleteAll.setOnClickListener(this);
|
||||
deleteAll.setEnabled(false);
|
||||
deleteAll.setVisibility(View.INVISIBLE);
|
||||
|
||||
allCalls = (ImageView) view.findViewById(R.id.allCalls);
|
||||
allCalls = (TextView) view.findViewById(R.id.allCalls);
|
||||
allCalls.setOnClickListener(this);
|
||||
|
||||
missedCalls = (ImageView) view.findViewById(R.id.missedCalls);
|
||||
missedCalls = (TextView) view.findViewById(R.id.missedCalls);
|
||||
missedCalls.setOnClickListener(this);
|
||||
|
||||
allCalls.setEnabled(false);
|
||||
onlyDisplayMissedCalls = false;
|
||||
|
||||
edit = (ImageView) view.findViewById(R.id.edit);
|
||||
edit = (TextView) view.findViewById(R.id.edit);
|
||||
edit.setOnClickListener(this);
|
||||
|
||||
ok = (ImageView) view.findViewById(R.id.ok);
|
||||
ok = (TextView) view.findViewById(R.id.ok);
|
||||
ok.setOnClickListener(this);
|
||||
|
||||
return view;
|
||||
|
@ -133,13 +136,13 @@ public class HistorySimpleFragment extends Fragment implements OnClickListener,
|
|||
else if (id == R.id.ok) {
|
||||
edit.setVisibility(View.VISIBLE);
|
||||
ok.setVisibility(View.GONE);
|
||||
deleteAll.setEnabled(false);
|
||||
hideDeleteAllButton();
|
||||
isEditMode = false;
|
||||
}
|
||||
else if (id == R.id.edit) {
|
||||
edit.setVisibility(View.GONE);
|
||||
ok.setVisibility(View.VISIBLE);
|
||||
deleteAll.setEnabled(true);
|
||||
showDeleteAllButton();
|
||||
isEditMode = true;
|
||||
}
|
||||
else if (id == R.id.deleteAll) {
|
||||
|
@ -172,6 +175,66 @@ public class HistorySimpleFragment extends Fragment implements OnClickListener,
|
|||
}
|
||||
}
|
||||
|
||||
private void hideDeleteAllButton() {
|
||||
if (deleteAll == null || deleteAll.getVisibility() != View.VISIBLE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (getActivity().getResources().getBoolean(R.bool.disable_animations)) {
|
||||
deleteAll.setVisibility(View.INVISIBLE);
|
||||
} else {
|
||||
Animation animation = AnimationUtils.loadAnimation(getActivity(), R.anim.slide_out_right_to_left);
|
||||
animation.setAnimationListener(new AnimationListener() {
|
||||
@Override
|
||||
public void onAnimationStart(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationRepeat(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationEnd(Animation animation) {
|
||||
deleteAll.setVisibility(View.INVISIBLE);
|
||||
animation.setAnimationListener(null);
|
||||
}
|
||||
});
|
||||
deleteAll.startAnimation(animation);
|
||||
}
|
||||
}
|
||||
|
||||
private void showDeleteAllButton() {
|
||||
if (deleteAll == null || deleteAll.getVisibility() == View.VISIBLE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (getActivity().getResources().getBoolean(R.bool.disable_animations)) {
|
||||
deleteAll.setVisibility(View.VISIBLE);
|
||||
} else {
|
||||
Animation animation = AnimationUtils.loadAnimation(getActivity(), R.anim.slide_in_left_to_right);
|
||||
animation.setAnimationListener(new AnimationListener() {
|
||||
@Override
|
||||
public void onAnimationStart(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationRepeat(Animation animation) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onAnimationEnd(Animation animation) {
|
||||
deleteAll.setVisibility(View.VISIBLE);
|
||||
animation.setAnimationListener(null);
|
||||
}
|
||||
});
|
||||
deleteAll.startAnimation(animation);
|
||||
}
|
||||
}
|
||||
|
||||
class CallHistoryAdapter extends BaseAdapter {
|
||||
private Bitmap missedCall, outgoingCall, incomingCall;
|
||||
|
||||
|
|
|
@ -59,7 +59,6 @@ import android.support.v4.app.Fragment;
|
|||
import android.support.v4.app.Fragment.SavedState;
|
||||
import android.support.v4.app.FragmentActivity;
|
||||
import android.support.v4.app.FragmentManager;
|
||||
import android.support.v4.app.FragmentManager.BackStackEntry;
|
||||
import android.support.v4.app.FragmentTransaction;
|
||||
import android.view.Gravity;
|
||||
import android.view.KeyEvent;
|
||||
|
|
Loading…
Reference in a new issue