Text added to incall buttons

This commit is contained in:
Sylvain Berfini 2012-09-21 11:58:38 +02:00
parent bb4bb45ea7
commit 7343d5810d
5 changed files with 123 additions and 78 deletions

View file

@ -90,13 +90,16 @@
android:layout_weight="1" android:layout_weight="1"
android:visibility="invisible" /> android:visibility="invisible" />
<ImageView <TextView
android:id="@+id/transfer" android:id="@+id/transfer"
android:background="@drawable/options_transfer"
android:text="@string/button_transfer"
android:gravity="center"
android:paddingTop="50dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:scaleType="fitXY"
android:src="@drawable/options_transfer"
android:visibility="invisible" /> android:visibility="invisible" />
<View <View
@ -142,13 +145,16 @@
android:layout_weight="1" android:layout_weight="1"
android:visibility="invisible" /> android:visibility="invisible" />
<ImageView <TextView
android:id="@+id/addCall" android:id="@+id/addCall"
android:background="@drawable/options_add_call_alt"
android:text="@string/button_add_call"
android:gravity="center"
android:paddingTop="50dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1"
android:scaleType="fitXY"
android:src="@drawable/options_add_call_alt"
android:visibility="invisible" /> android:visibility="invisible" />
<View <View
@ -183,23 +189,27 @@
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@drawable/conference" /> android:src="@drawable/conference" />
<ImageView <TextView
android:id="@+id/video" android:id="@+id/video"
android:background="@drawable/video_off"
android:text="@string/button_video"
android:gravity="center"
android:paddingTop="35dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1" />
android:contentDescription="@string/content_description_switch_video"
android:scaleType="fitXY"
android:src="@drawable/video_off" />
<ImageView <TextView
android:id="@+id/micro" android:id="@+id/micro"
android:background="@drawable/micro_on"
android:text="@string/button_micro"
android:gravity="center"
android:paddingTop="35dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1" />
android:contentDescription="@string/content_description_toggle_micro"
android:scaleType="fitXY"
android:src="@drawable/micro_on" />
<ImageView <ImageView
android:id="@+id/hangUp" android:id="@+id/hangUp"
@ -210,22 +220,27 @@
android:scaleType="fitXY" android:scaleType="fitXY"
android:src="@drawable/hangup" /> android:src="@drawable/hangup" />
<ImageView <TextView
android:id="@+id/speaker" android:id="@+id/speaker"
android:background="@drawable/speaker_off"
android:text="@string/button_speaker"
android:gravity="center"
android:paddingTop="35dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1" />
android:contentDescription="@string/content_description_toggle_speaker"
android:scaleType="fitXY"
android:src="@drawable/speaker_off" />
<ImageView <TextView
android:id="@+id/options" android:id="@+id/options"
android:background="@drawable/options"
android:text="@string/button_options"
android:gravity="center"
android:paddingTop="35dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="match_parent" android:layout_height="match_parent"
android:layout_weight="1" android:layout_weight="1" />
android:scaleType="fitXY"
android:src="@drawable/options" />
<ImageView <ImageView
android:id="@+id/dialer" android:id="@+id/dialer"

View file

@ -77,13 +77,16 @@
android:layout_weight="1" android:layout_weight="1"
android:visibility="invisible" /> android:visibility="invisible" />
<ImageView <TextView
android:id="@+id/transfer" android:id="@+id/transfer"
android:background="@drawable/options_transfer"
android:text="@string/button_transfer"
android:gravity="center"
android:paddingTop="50dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="75dp" android:layout_height="75dp"
android:layout_weight="1" android:layout_weight="1"
android:scaleType="fitXY"
android:src="@drawable/options_transfer"
android:visibility="invisible" /> android:visibility="invisible" />
</LinearLayout> </LinearLayout>
@ -111,14 +114,16 @@
android:layout_weight="1" android:layout_weight="1"
android:visibility="invisible" /> android:visibility="invisible" />
<ImageView <TextView
android:contentDescription="@string/content_description_add_call"
android:id="@+id/addCall" android:id="@+id/addCall"
android:background="@drawable/options_add_call_alt"
android:text="@string/button_add_call"
android:gravity="center"
android:paddingTop="50dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="75dp" android:layout_height="75dp"
android:layout_weight="1" android:layout_weight="1"
android:scaleType="fitXY"
android:src="@drawable/options_add_call_alt"
android:visibility="invisible" /> android:visibility="invisible" />
</LinearLayout> </LinearLayout>
@ -129,40 +134,49 @@
android:layout_weight="1" android:layout_weight="1"
android:orientation="horizontal" > android:orientation="horizontal" >
<ImageView <TextView
android:id="@+id/video" android:id="@+id/video"
android:background="@drawable/video_off"
android:text="@string/button_video"
android:gravity="center"
android:paddingTop="45dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="75dp" android:layout_height="75dp"
android:layout_weight="1" android:layout_weight="1" />
android:contentDescription="@string/content_description_switch_video"
android:scaleType="fitXY"
android:src="@drawable/video_off" />
<ImageView <TextView
android:id="@+id/micro" android:id="@+id/micro"
android:background="@drawable/micro_on"
android:text="@string/button_micro"
android:gravity="center"
android:paddingTop="45dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="75dp" android:layout_height="75dp"
android:layout_weight="1" android:layout_weight="1" />
android:contentDescription="@string/content_description_toggle_micro"
android:scaleType="fitXY"
android:src="@drawable/micro_on" />
<ImageView <TextView
android:id="@+id/speaker" android:id="@+id/speaker"
android:background="@drawable/speaker_off"
android:text="@string/button_speaker"
android:gravity="center"
android:paddingTop="45dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="75dp" android:layout_height="75dp"
android:layout_weight="1" android:layout_weight="1" />
android:contentDescription="@string/content_description_toggle_speaker"
android:scaleType="fitXY"
android:src="@drawable/speaker_off" />
<ImageView <TextView
android:id="@+id/options" android:id="@+id/options"
android:background="@drawable/options"
android:text="@string/button_options"
android:gravity="center"
android:paddingTop="45dp"
android:textColor="@color/text_button"
android:layout_width="match_parent" android:layout_width="match_parent"
android:layout_height="75dp" android:layout_height="75dp"
android:layout_weight="1" android:layout_weight="1" />
android:scaleType="fitXY"
android:src="@drawable/options" />
</LinearLayout> </LinearLayout>
<LinearLayout <LinearLayout

View file

@ -283,6 +283,13 @@
<string name="button_all_call">Tous</string> <string name="button_all_call">Tous</string>
<string name="button_missed_call">Manqués</string> <string name="button_missed_call">Manqués</string>
<string name="button_delete_all">Tout supprimer</string> <string name="button_delete_all">Tout supprimer</string>
<string name="button_transfer">Transfert</string>
<string name="button_add_call">Ajouter appel</string>
<string name="button_video">Vidéo</string>
<string name="button_micro">Micro</string>
<string name="button_speaker">Haut parleur</string>
<string name="button_options">Options</string>
<string name="share_picture_size_small">Petite</string> <string name="share_picture_size_small">Petite</string>
<string name="share_picture_size_medium">Moyenne</string> <string name="share_picture_size_medium">Moyenne</string>

View file

@ -334,6 +334,13 @@
<string name="button_all_call">All</string> <string name="button_all_call">All</string>
<string name="button_missed_call">Missed</string> <string name="button_missed_call">Missed</string>
<string name="button_delete_all">Delete All</string> <string name="button_delete_all">Delete All</string>
<string name="button_transfer">Transfer</string>
<string name="button_add_call">Add call</string>
<string name="button_video">Video</string>
<string name="button_micro">Micro</string>
<string name="button_speaker">Speaker</string>
<string name="button_options">Options</string>
<string name="share_picture_size_small">Small</string> <string name="share_picture_size_small">Small</string>
<string name="share_picture_size_medium">Medium</string> <string name="share_picture_size_medium">Medium</string>

View file

@ -50,6 +50,7 @@ import android.view.animation.AnimationUtils;
import android.widget.AdapterView; import android.widget.AdapterView;
import android.widget.ImageView; import android.widget.ImageView;
import android.widget.LinearLayout; import android.widget.LinearLayout;
import android.widget.TextView;
/** /**
* @author Sylvain Berfini * @author Sylvain Berfini
@ -64,7 +65,8 @@ public class InCallActivity extends FragmentActivity implements
private Handler mHandler = new Handler(); private Handler mHandler = new Handler();
private Handler mControlsHandler = new Handler(); private Handler mControlsHandler = new Handler();
private Runnable mControls; private Runnable mControls;
private ImageView video, micro, speaker, addCall, pause, hangUp, dialer, switchCamera, options, transfer, conference; private ImageView pause, hangUp, dialer, switchCamera, conference;
private TextView video, micro, speaker, options, addCall, transfer;
private StatusFragment status; private StatusFragment status;
private AudioCallFragment audioCallFragment; private AudioCallFragment audioCallFragment;
private VideoCallFragment videoCallFragment; private VideoCallFragment videoCallFragment;
@ -133,22 +135,22 @@ public class InCallActivity extends FragmentActivity implements
} }
private void initUI() { private void initUI() {
video = (ImageView) findViewById(R.id.video); video = (TextView) findViewById(R.id.video);
video.setOnClickListener(this); video.setOnClickListener(this);
video.setEnabled(false); video.setEnabled(false);
micro = (ImageView) findViewById(R.id.micro); micro = (TextView) findViewById(R.id.micro);
micro.setOnClickListener(this); micro.setOnClickListener(this);
micro.setEnabled(false); micro.setEnabled(false);
speaker = (ImageView) findViewById(R.id.speaker); speaker = (TextView) findViewById(R.id.speaker);
speaker.setOnClickListener(this); speaker.setOnClickListener(this);
speaker.setEnabled(false); speaker.setEnabled(false);
addCall = (ImageView) findViewById(R.id.addCall); addCall = (TextView) findViewById(R.id.addCall);
addCall.setOnClickListener(this); addCall.setOnClickListener(this);
addCall.setEnabled(false); addCall.setEnabled(false);
transfer = (ImageView) findViewById(R.id.transfer); transfer = (TextView) findViewById(R.id.transfer);
transfer.setOnClickListener(this); transfer.setOnClickListener(this);
transfer.setEnabled(false); transfer.setEnabled(false);
options = (ImageView) findViewById(R.id.options); options = (TextView) findViewById(R.id.options);
options.setOnClickListener(this); options.setOnClickListener(this);
options.setEnabled(false); options.setEnabled(false);
pause = (ImageView) findViewById(R.id.pause); pause = (ImageView) findViewById(R.id.pause);
@ -169,7 +171,7 @@ public class InCallActivity extends FragmentActivity implements
mControlsLayout = (LinearLayout) findViewById(R.id.menu); mControlsLayout = (LinearLayout) findViewById(R.id.menu);
if (!isTransferAllowed) { if (!isTransferAllowed) {
addCall.setImageResource(R.drawable.options_add_call); addCall.setBackgroundResource(R.drawable.options_add_call);
} }
if (!isAnimationDisabled) { if (!isAnimationDisabled) {
@ -193,22 +195,22 @@ public class InCallActivity extends FragmentActivity implements
video.setEnabled(false); video.setEnabled(false);
} else { } else {
if (isVideoEnabled) { if (isVideoEnabled) {
video.setImageResource(R.drawable.video_on); video.setBackgroundResource(R.drawable.video_on);
} else { } else {
video.setImageResource(R.drawable.video_off); video.setBackgroundResource(R.drawable.video_off);
} }
} }
if (isSpeakerEnabled) { if (isSpeakerEnabled) {
speaker.setImageResource(R.drawable.speaker_on); speaker.setBackgroundResource(R.drawable.speaker_on);
} else { } else {
speaker.setImageResource(R.drawable.speaker_off); speaker.setBackgroundResource(R.drawable.speaker_off);
} }
if (isMicMuted) { if (isMicMuted) {
micro.setImageResource(R.drawable.micro_off); micro.setBackgroundResource(R.drawable.micro_off);
} else { } else {
micro.setImageResource(R.drawable.micro_on); micro.setBackgroundResource(R.drawable.micro_on);
} }
if (LinphoneManager.getLc().getCallsNb() > 1) { if (LinphoneManager.getLc().getCallsNb() > 1) {
@ -323,7 +325,7 @@ public class InCallActivity extends FragmentActivity implements
LinphoneManager.getLc().updateCall(call, params); LinphoneManager.getLc().updateCall(call, params);
replaceFragmentVideoByAudio(); replaceFragmentVideoByAudio();
video.setImageResource(R.drawable.video_on); video.setBackgroundResource(R.drawable.video_on);
setCallControlsVisibleAndRemoveCallbacks(); setCallControlsVisibleAndRemoveCallbacks();
} else { } else {
@ -331,10 +333,10 @@ public class InCallActivity extends FragmentActivity implements
isSpeakerEnabled = true; isSpeakerEnabled = true;
LinphoneManager.getInstance().routeAudioToSpeaker(); LinphoneManager.getInstance().routeAudioToSpeaker();
speaker.setImageResource(R.drawable.speaker_on); speaker.setBackgroundResource(R.drawable.speaker_on);
replaceFragmentAudioByVideo(); replaceFragmentAudioByVideo();
video.setImageResource(R.drawable.video_off); video.setBackgroundResource(R.drawable.video_off);
displayVideoCallControlsIfHidden(); displayVideoCallControlsIfHidden();
} }
} }
@ -372,9 +374,9 @@ public class InCallActivity extends FragmentActivity implements
isMicMuted = !isMicMuted; isMicMuted = !isMicMuted;
lc.muteMic(isMicMuted); lc.muteMic(isMicMuted);
if (isMicMuted) { if (isMicMuted) {
micro.setImageResource(R.drawable.micro_off); micro.setBackgroundResource(R.drawable.micro_off);
} else { } else {
micro.setImageResource(R.drawable.micro_on); micro.setBackgroundResource(R.drawable.micro_on);
} }
} }
@ -382,10 +384,10 @@ public class InCallActivity extends FragmentActivity implements
isSpeakerEnabled = !isSpeakerEnabled; isSpeakerEnabled = !isSpeakerEnabled;
if (isSpeakerEnabled) { if (isSpeakerEnabled) {
LinphoneManager.getInstance().routeAudioToSpeaker(); LinphoneManager.getInstance().routeAudioToSpeaker();
speaker.setImageResource(R.drawable.speaker_on); speaker.setBackgroundResource(R.drawable.speaker_on);
} else { } else {
LinphoneManager.getInstance().routeAudioToReceiver(); LinphoneManager.getInstance().routeAudioToReceiver();
speaker.setImageResource(R.drawable.speaker_off); speaker.setBackgroundResource(R.drawable.speaker_off);
} }
LinphoneManager.getLc().enableSpeaker(isSpeakerEnabled); LinphoneManager.getLc().enableSpeaker(isSpeakerEnabled);
} }
@ -501,7 +503,7 @@ public class InCallActivity extends FragmentActivity implements
mControlsLayout.setVisibility(View.GONE); mControlsLayout.setVisibility(View.GONE);
switchCamera.setVisibility(View.INVISIBLE); switchCamera.setVisibility(View.INVISIBLE);
numpad.setVisibility(View.GONE); numpad.setVisibility(View.GONE);
options.setImageResource(R.drawable.options); options.setBackgroundResource(R.drawable.options);
} else { } else {
Animation animation = slideOutTopToBottom; Animation animation = slideOutTopToBottom;
animation.setAnimationListener(new AnimationListener() { animation.setAnimationListener(new AnimationListener() {
@ -522,7 +524,7 @@ public class InCallActivity extends FragmentActivity implements
mControlsLayout.setVisibility(View.GONE); mControlsLayout.setVisibility(View.GONE);
switchCamera.setVisibility(View.INVISIBLE); switchCamera.setVisibility(View.INVISIBLE);
numpad.setVisibility(View.GONE); numpad.setVisibility(View.GONE);
options.setImageResource(R.drawable.options); options.setBackgroundResource(R.drawable.options);
animation.setAnimationListener(null); animation.setAnimationListener(null);
} }
@ -706,7 +708,7 @@ public class InCallActivity extends FragmentActivity implements
@Override @Override
public void onAnimationEnd(Animation animation) { public void onAnimationEnd(Animation animation) {
options.setImageResource(R.drawable.options_alt); options.setBackgroundResource(R.drawable.options_alt);
if (isTransferAllowed) { if (isTransferAllowed) {
transfer.setVisibility(View.VISIBLE); transfer.setVisibility(View.VISIBLE);
} }
@ -734,7 +736,7 @@ public class InCallActivity extends FragmentActivity implements
@Override @Override
public void onAnimationEnd(Animation animation) { public void onAnimationEnd(Animation animation) {
addCall.setAnimation(null); addCall.setAnimation(null);
options.setImageResource(R.drawable.options_alt); options.setBackgroundResource(R.drawable.options_alt);
addCall.setVisibility(View.VISIBLE); addCall.setVisibility(View.VISIBLE);
if (isTransferAllowed) { if (isTransferAllowed) {
animation.setAnimationListener(new AnimationListener() { animation.setAnimationListener(new AnimationListener() {
@ -762,7 +764,7 @@ public class InCallActivity extends FragmentActivity implements
boolean isOrientationLandscape = getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE; boolean isOrientationLandscape = getResources().getConfiguration().orientation == Configuration.ORIENTATION_LANDSCAPE;
if (addCall.getVisibility() == View.VISIBLE) { if (addCall.getVisibility() == View.VISIBLE) {
options.setImageResource(R.drawable.options); options.setBackgroundResource(R.drawable.options);
if (isAnimationDisabled) { if (isAnimationDisabled) {
if (isTransferAllowed) { if (isTransferAllowed) {
transfer.setVisibility(View.INVISIBLE); transfer.setVisibility(View.INVISIBLE);
@ -781,7 +783,7 @@ public class InCallActivity extends FragmentActivity implements
transfer.setVisibility(View.VISIBLE); transfer.setVisibility(View.VISIBLE);
} }
addCall.setVisibility(View.VISIBLE); addCall.setVisibility(View.VISIBLE);
options.setImageResource(R.drawable.options_alt); options.setBackgroundResource(R.drawable.options_alt);
} else { } else {
if (isOrientationLandscape) { if (isOrientationLandscape) {
showAnimatedLandscapeCallOptions(); showAnimatedLandscapeCallOptions();