Fix conference pause, keyboard show/hide in assistant and some UI tests

This commit is contained in:
Margaux Clerc 2016-02-15 17:30:24 +01:00
parent 45b365ecb1
commit e10a0d0ab0
12 changed files with 50 additions and 34 deletions

View file

@ -26,7 +26,7 @@
android:gravity="center"/> android:gravity="center"/>
<ImageView <ImageView
android:id="@+id/cancel" android:id="@+id/assistant_cancel"
android:src="@drawable/dialer_back" android:src="@drawable/dialer_back"
android:background="@drawable/toolbar_button" android:background="@drawable/toolbar_button"
android:contentDescription="@string/content_description_dialer" android:contentDescription="@string/content_description_dialer"

View file

@ -422,8 +422,6 @@
</LinearLayout> </LinearLayout>
</RelativeLayout>
<org.linphone.ui.Numpad <org.linphone.ui.Numpad
android:id="@+id/numpad" android:id="@+id/numpad"
android:background="@color/colorF" android:background="@color/colorF"
@ -431,11 +429,14 @@
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:visibility="gone" android:visibility="gone"
android:layout_margin="10dp" android:layout_marginTop="50dp"
android:layout_marginBottom="10dp"
android:layout_above="@id/menu" android:layout_above="@id/menu"
android:layout_centerHorizontal="true" android:layout_centerHorizontal="true"
android:layout_centerVertical="true"/> android:layout_centerVertical="true"/>
</RelativeLayout>
<RelativeLayout <RelativeLayout
android:id="@+id/side_menu_content" android:id="@+id/side_menu_content"
android:background="@color/colorH" android:background="@color/colorH"

View file

@ -30,7 +30,7 @@
<ImageView <ImageView
android:contentDescription="@string/content_description_pause" android:contentDescription="@string/content_description_pause"
android:id="@+id/conferenceStatus" android:id="@+id/conference_pause"
android:layout_width="wrap_content" android:layout_width="wrap_content"
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_alignParentRight="true" android:layout_alignParentRight="true"

View file

@ -28,7 +28,7 @@
android:paddingRight="10dp"/> android:paddingRight="10dp"/>
<ImageView <ImageView
android:id="@+id/call_pause" android:id="@+id/conference_pause"
android:src="@drawable/pause_small_over_selected" android:src="@drawable/pause_small_over_selected"
android:contentDescription="@string/content_description_pause" android:contentDescription="@string/content_description_pause"
android:layout_width="40dp" android:layout_width="40dp"

View file

@ -189,11 +189,14 @@ public class CallActivity extends Activity implements OnClickListener, SensorEve
if (state == State.StreamsRunning) { if (state == State.StreamsRunning) {
switchVideo(isVideoEnabled(call)); switchVideo(isVideoEnabled(call));
//Check media in progress //Check media in progress
if(LinphonePreferences.instance().isVideoEnabled() && !call.mediaInProgress()){ if(!call.mediaInProgress()){
if(LinphonePreferences.instance().isVideoEnabled()) {
enabledVideoButton(true); enabledVideoButton(true);
enabledPauseButton(true);
} }
enabledPauseButton(true);
} else {
enabledPauseButton(false);
}
enableAndRefreshInCallActions(); enableAndRefreshInCallActions();
if (status != null) { if (status != null) {
@ -623,7 +626,7 @@ public class CallActivity extends Activity implements OnClickListener, SensorEve
LinphoneCall call = (LinphoneCall) v.getTag(); LinphoneCall call = (LinphoneCall) v.getTag();
pauseOrResumeCall(call); pauseOrResumeCall(call);
} }
else if (id == R.id.conferenceStatus) { else if (id == R.id.conference_pause) {
pauseOrResumeConference(); pauseOrResumeConference();
} }
} }
@ -1352,6 +1355,10 @@ public class CallActivity extends Activity implements OnClickListener, SensorEve
mSensorManager.registerListener(this, mProximity, SensorManager.SENSOR_DELAY_NORMAL); mSensorManager.registerListener(this, mProximity, SensorManager.SENSOR_DELAY_NORMAL);
removeCallbacks(); removeCallbacks();
} }
if(LinphoneManager.getLc().getCurrentCall() != null && !LinphoneManager.getLc().getCurrentCall().mediaInProgress()){
enabledPauseButton(true);
}
} }
private void handleViewIntent() { private void handleViewIntent() {
@ -1674,7 +1681,7 @@ public class CallActivity extends Activity implements OnClickListener, SensorEve
private void displayConferenceHeader(){ private void displayConferenceHeader(){
conferenceList.setVisibility(View.VISIBLE); conferenceList.setVisibility(View.VISIBLE);
RelativeLayout headerConference = (RelativeLayout) inflater.inflate(R.layout.conference_header, container, false); RelativeLayout headerConference = (RelativeLayout) inflater.inflate(R.layout.conference_header, container, false);
conferenceStatus = (ImageView) headerConference.findViewById(R.id.conferenceStatus); conferenceStatus = (ImageView) headerConference.findViewById(R.id.conference_pause);
conferenceStatus.setOnClickListener(this); conferenceStatus.setOnClickListener(this);
conferenceList.addView(headerConference); conferenceList.addView(headerConference);

View file

@ -146,7 +146,7 @@ public class AssistantActivity extends Activity implements OnClickListener {
private void initUI() { private void initUI() {
back = (ImageView) findViewById(R.id.back); back = (ImageView) findViewById(R.id.back);
back.setOnClickListener(this); back.setOnClickListener(this);
cancel = (ImageView) findViewById(R.id.cancel); cancel = (ImageView) findViewById(R.id.assistant_cancel);
cancel.setOnClickListener(this); cancel.setOnClickListener(this);
} }
@ -160,7 +160,8 @@ public class AssistantActivity extends Activity implements OnClickListener {
public void onClick(View v) { public void onClick(View v) {
int id = v.getId(); int id = v.getId();
if (id == R.id.cancel) { if (id == R.id.assistant_cancel) {
hideKeyboard();
LinphonePreferences.instance().firstLaunchSuccessful(); LinphonePreferences.instance().firstLaunchSuccessful();
if (getResources().getBoolean(R.bool.setup_cancel_move_to_back)) { if (getResources().getBoolean(R.bool.setup_cancel_move_to_back)) {
moveTaskToBack(true); moveTaskToBack(true);
@ -169,6 +170,7 @@ public class AssistantActivity extends Activity implements OnClickListener {
finish(); finish();
} }
} else if (id == R.id.back) { } else if (id == R.id.back) {
hideKeyboard();
onBackPressed(); onBackPressed();
} }
} }
@ -196,6 +198,12 @@ public class AssistantActivity extends Activity implements OnClickListener {
} }
} }
public void hideKeyboard(){
InputMethodManager imm = (InputMethodManager) getSystemService(Activity.INPUT_METHOD_SERVICE);
View view = getCurrentFocus();
imm.hideSoftInputFromWindow(view.getWindowToken(), 0);
}
private void launchEchoCancellerCalibration(boolean sendEcCalibrationResult) { private void launchEchoCancellerCalibration(boolean sendEcCalibrationResult) {
boolean needsEchoCalibration = LinphoneManager.getLc().needsEchoCalibration(); boolean needsEchoCalibration = LinphoneManager.getLc().needsEchoCalibration();
if (needsEchoCalibration && mPrefs.isFirstLaunch()) { if (needsEchoCalibration && mPrefs.isFirstLaunch()) {

View file

@ -163,7 +163,7 @@ public class AccountAssistant extends SampleTest {
@LargeTest @LargeTest
public void testFCancelWizard() { public void testFCancelWizard() {
startAssistant(); startAssistant();
solo.clickOnView(solo.getView(org.linphone.R.id.cancel)); solo.clickOnView(solo.getView(org.linphone.R.id.assistant_cancel));
solo.waitForActivity("LinphoneActivity", 2000); solo.waitForActivity("LinphoneActivity", 2000);
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);

View file

@ -158,7 +158,7 @@ public class CallsAudio extends SampleTest {
LinphoneTestManager.getInstance().autoAnswer = true; LinphoneTestManager.getInstance().autoAnswer = true;
solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.clickOnView(solo.getView(org.linphone.R.id.outgoing_hang_up));
solo.waitForActivity("LinphoneActivity", 5000); solo.waitForActivity("LinphoneActivity", 5000);
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
} }

View file

@ -267,7 +267,7 @@ public class CallsVideo extends SampleTest {
waitForCallPaused(LinphoneManager.getLc().getCalls()[0]); waitForCallPaused(LinphoneManager.getLc().getCalls()[0]);
solo.clickOnView(solo.getView(org.linphone.R.id.video_frame)); solo.clickOnView(solo.getView(org.linphone.R.id.video_frame));
solo.clickOnView(solo.getView(org.linphone.R.id.pause)); solo.clickOnView(solo.getView(org.linphone.R.id.call_pause));
solo.sleep(1000); solo.sleep(1000);
waitForCallResumed(LinphoneManager.getLc().getCalls()[0]); waitForCallResumed(LinphoneManager.getLc().getCalls()[0]);
@ -348,7 +348,7 @@ public class CallsVideo extends SampleTest {
solo.waitForActivity("LinphoneActivity", 2000); solo.waitForActivity("LinphoneActivity", 2000);
solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class); solo.assertCurrentActivity("Expected Linphone Activity", LinphoneActivity.class);
solo.clickOnView(solo.getView(org.linphone.R.id.side_menu_button)); solo.clickOnView(solo.getView(org.linphone.R.id.side_menu_button));
solo.clickOnText(aContext.getString(org.linphone.R.string.menu_settings)); solo.clickOnText(aContext.getString(org.linphone.R.id.menu_settings));
} }
private void goToAudioCodecsSettings() { private void goToAudioCodecsSettings() {

View file

@ -57,7 +57,7 @@ public class ConferenceAndMultiCall extends SampleTest {
public void testCRemoveOneFromConference() { public void testCRemoveOneFromConference() {
startConference(); startConference();
solo.clickOnView(solo.getView(org.linphone.R.id.conferenceStatus)); solo.clickOnView(solo.getView(org.linphone.R.id.conference_pause));
Assert.assertEquals(1, LinphoneTestManager.getLc(1).getCallsNb()); Assert.assertEquals(1, LinphoneTestManager.getLc(1).getCallsNb());
Assert.assertEquals(1, LinphoneTestManager.getLc(2).getCallsNb()); Assert.assertEquals(1, LinphoneTestManager.getLc(2).getCallsNb());
@ -103,8 +103,7 @@ public class ConferenceAndMultiCall extends SampleTest {
waitForCallState(call2,LinphoneCall.State.StreamsRunning); waitForCallState(call2,LinphoneCall.State.StreamsRunning);
waitForCallState(call1,LinphoneCall.State.PausedByRemote); waitForCallState(call1,LinphoneCall.State.PausedByRemote);
ArrayList<View> views = solo.getViews(solo.getView(2)); solo.clickOnView(solo.getView(org.linphone.R.id.pause));
solo.clickOnView(views.get(2)); // Second call pause button
solo.sleep(2000); solo.sleep(2000);
waitForCallState(call2,LinphoneCall.State.PausedByRemote); waitForCallState(call2,LinphoneCall.State.PausedByRemote);
waitForCallState(call1,LinphoneCall.State.PausedByRemote); waitForCallState(call1,LinphoneCall.State.PausedByRemote);
@ -130,7 +129,7 @@ public class ConferenceAndMultiCall extends SampleTest {
solo.clickOnView(solo.getView(org.linphone.R.id.call)); solo.clickOnView(solo.getView(org.linphone.R.id.call));
solo.sleep(2000); solo.sleep(2000);
solo.clickOnView(solo.getView(org.linphone.R.id.hang_up)); solo.clickOnView(solo.getView(org.linphone.R.id.outgoing_hang_up));
waitForCallState(LinphoneTestManager.getLc(1).getCalls()[0],LinphoneCall.State.PausedByRemote); waitForCallState(LinphoneTestManager.getLc(1).getCalls()[0],LinphoneCall.State.PausedByRemote);
solo.clickOnView(solo.getView(org.linphone.R.id.pause)); solo.clickOnView(solo.getView(org.linphone.R.id.pause));

View file

@ -36,7 +36,7 @@ public class Contacts extends SampleTest {
solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name)); solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name));
solo.clickOnView(solo.getView(org.linphone.R.id.delete_contact)); solo.clickOnView(solo.getView(org.linphone.R.id.delete_contact));
solo.sleep(1000); solo.sleep(1000);
solo.clickOnView(solo.getView(org.linphone.R.id.delete)); solo.clickOnView(solo.getView(org.linphone.R.id.delete_button));
Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name)));
} }
@ -78,7 +78,7 @@ public class Contacts extends SampleTest {
solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name)); solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name));
solo.clickOnView(solo.getView(org.linphone.R.id.editContact)); solo.clickOnView(solo.getView(org.linphone.R.id.editContact));
solo.clickOnView(solo.getView(org.linphone.R.id.delete)); solo.clickOnView(solo.getView(org.linphone.R.id.delete));
solo.enterText(3, iContext.getString(org.linphone.test.R.string.contact_sip)); solo.enterText(2, iContext.getString(org.linphone.test.R.string.contact_sip));
solo.clickOnView(solo.getView(org.linphone.R.id.ok)); solo.clickOnView(solo.getView(org.linphone.R.id.ok));
Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_sip))); Assert.assertTrue(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_sip)));
@ -115,7 +115,7 @@ public class Contacts extends SampleTest {
solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name)); solo.clickOnText(iContext.getString(org.linphone.test.R.string.contact_name));
solo.clickOnView(solo.getView(org.linphone.R.id.deleteContact)); solo.clickOnView(solo.getView(org.linphone.R.id.deleteContact));
solo.sleep(1000); solo.sleep(1000);
solo.clickOnView(solo.getView(org.linphone.R.id.delete)); solo.clickOnView(solo.getView(org.linphone.R.id.delete_button));
Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name))); Assert.assertFalse(solo.searchText(iContext.getString(org.linphone.test.R.string.contact_name)));
} }

View file

@ -58,6 +58,7 @@ public class History extends SampleTest {
solo.clickOnView(solo.getView(org.linphone.R.id.edit)); solo.clickOnView(solo.getView(org.linphone.R.id.edit));
solo.sleep(500); solo.sleep(500);
solo.clickOnCheckBox(1);
solo.clickOnView(solo.getView(org.linphone.R.id.delete)); solo.clickOnView(solo.getView(org.linphone.R.id.delete));
solo.sleep(500); solo.sleep(500);
solo.clickOnView(solo.getView(org.linphone.R.id.delete_button)); solo.clickOnView(solo.getView(org.linphone.R.id.delete_button));