diff options
author | Etan Cohen <etancohen@google.com> | 2015-05-22 05:24:42 +0000 |
---|---|---|
committer | Etan Cohen <etancohen@google.com> | 2015-05-22 05:24:42 +0000 |
commit | 5ef863567bada9e2dfe86811f84b8d717b43bbf6 (patch) | |
tree | fabdc816a435f7a07c0ac30bcd3b8abd4868935e | |
parent | bbb338a3edd047ecf6f739f9ac2979c172b5aa30 (diff) |
Revert "Merge commit 'b219fca' into merge"
This reverts commit b0e30fdf2e63d423dd455a0551c3fd90c9fd3d17.
Change-Id: I0d15d0572cfd386e32eb084fd2da586ca413843a
5 files changed, 53 insertions, 25 deletions
diff --git a/InCallUI/res/layout-land/call_card_fragment.xml b/InCallUI/res/layout-land/call_card_fragment.xml index 2c4cbfca0..c02af1b03 100644 --- a/InCallUI/res/layout-land/call_card_fragment.xml +++ b/InCallUI/res/layout-land/call_card_fragment.xml @@ -22,28 +22,12 @@ android:layout_alignParentTop="true" android:layout_alignParentStart="true" > - <fragment android:name="com.android.incallui.VideoCallFragment" - android:layout_alignParentStart="true" - android:layout_gravity="start|center_vertical" - android:id="@+id/videoCallFragment" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:layout_alignParentBottom="true" /> - - <!-- Secondary "Call info" block, for the background ("on hold") call. --> - <include layout="@layout/secondary_call_info" - android:id="@+id/secondary_call_info" - android:layout_width="match_parent" - android:layout_height="wrap_content" - android:layout_alignParentBottom="true" /> - <LinearLayout android:id="@+id/primary_call_info_container" android:layout_alignParentStart="true" android:layout_centerVertical="true" android:layout_width="wrap_content" android:layout_height="match_parent" - android:layout_above="@id/secondary_call_info" android:orientation="vertical" android:elevation="@dimen/primary_call_elevation" android:background="@drawable/rounded_call_card_background" @@ -65,6 +49,11 @@ android:layout_height="wrap_content" android:layout_gravity="bottom" android:layout_marginBottom="@dimen/call_buttons_bottom_margin" /> + <!-- Secondary "Call info" block, for the background ("on hold") call. --> + <include layout="@layout/secondary_call_info" + android:layout_width="match_parent" + android:layout_height="wrap_content" + android:layout_gravity="bottom" /> </FrameLayout> @@ -115,6 +104,13 @@ </FrameLayout> + <fragment android:name="com.android.incallui.VideoCallFragment" + android:layout_alignParentStart="true" + android:layout_gravity="start|center_vertical" + android:id="@+id/videoCallFragment" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + <!-- Placeholder for the dialpad which is replaced with the dialpad fragment when shown. --> <FrameLayout android:id="@+id/answer_and_dialpad_container" diff --git a/InCallUI/res/layout-land/video_call_views.xml b/InCallUI/res/layout-land/video_call_views.xml new file mode 100644 index 000000000..8961ea4bf --- /dev/null +++ b/InCallUI/res/layout-land/video_call_views.xml @@ -0,0 +1,35 @@ +<?xml version="1.0" encoding="utf-8"?> + +<!-- + ~ Copyright (C) 2014 The Android Open Source Project + ~ + ~ Licensed under the Apache License, Version 2.0 (the "License"); + ~ you may not use this file except in compliance with the License. + ~ You may obtain a copy of the License at + ~ + ~ http://www.apache.org/licenses/LICENSE-2.0 + ~ + ~ Unless required by applicable law or agreed to in writing, software + ~ distributed under the License is distributed on an "AS IS" BASIS, + ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + ~ See the License for the specific language governing permissions and + ~ limitations under the License + --> + +<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" + android:layout_width="match_parent" + android:layout_height="match_parent" > + + <TextureView + android:id="@+id/incomingVideo" + android:layout_gravity="center" + android:layout_width="match_parent" + android:layout_height="match_parent" /> + <!-- The width and height are replaced at runtime based on the selected camera. --> + <TextureView + android:id="@+id/previewVideo" + android:layout_gravity="bottom|right" + android:layout_margin="@dimen/video_preview_margin" + android:layout_width="70dp" + android:layout_height="120dp" /> +</FrameLayout> diff --git a/InCallUI/src/com/android/incallui/CallCardFragment.java b/InCallUI/src/com/android/incallui/CallCardFragment.java index 01efae141..468b36baa 100644 --- a/InCallUI/src/com/android/incallui/CallCardFragment.java +++ b/InCallUI/src/com/android/incallui/CallCardFragment.java @@ -582,16 +582,18 @@ public class CallCardFragment extends BaseFragment<CallCardPresenter, CallCardPr mSecondaryCallInfo.setVisibility(View.VISIBLE); } - updateFabPositionForSecondaryCallInfo(); // We need to translate the secondary caller info, but we need to know its position after // the layout has occurred so use a {@code ViewTreeObserver}. final ViewTreeObserver observer = getView().getViewTreeObserver(); - observer.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() { @Override public boolean onPreDraw() { // We don't want to continue getting called. - getView().getViewTreeObserver().removeOnPreDrawListener(this); + if (observer.isAlive()) { + observer.removeOnPreDrawListener(this); + } + + updateFabPositionForSecondaryCallInfo(); // Get the height of the secondary call info now, and then re-hide the view prior // to doing the actual animation. diff --git a/InCallUI/src/com/android/incallui/InCallActivity.java b/InCallUI/src/com/android/incallui/InCallActivity.java index 99a7a1e73..d1bebe738 100644 --- a/InCallUI/src/com/android/incallui/InCallActivity.java +++ b/InCallUI/src/com/android/incallui/InCallActivity.java @@ -209,7 +209,7 @@ public class InCallActivity extends Activity implements FragmentDisplayManager { return; } - int newRotation; + int newRotation = Surface.ROTATION_0; // We only shift if we're within 22.5 (23) degrees of the target // orientation. This avoids flopping back and forth when holding // the device at 45 degrees or so. @@ -223,9 +223,6 @@ public class InCallActivity extends Activity implements FragmentDisplayManager { newRotation = Surface.ROTATION_180; } else if (orientation >= 247 && orientation <= 293) { newRotation = Surface.ROTATION_90; - } else { - // Device is between orientations, so leave orientation the same. - return; } // Orientation is the current device orientation in degrees. Ultimately we want diff --git a/InCallUI/src/com/android/incallui/VideoCallPresenter.java b/InCallUI/src/com/android/incallui/VideoCallPresenter.java index 3e1bc82e4..6763fbe8c 100644 --- a/InCallUI/src/com/android/incallui/VideoCallPresenter.java +++ b/InCallUI/src/com/android/incallui/VideoCallPresenter.java @@ -241,7 +241,6 @@ public class VideoCallPresenter extends Presenter<VideoCallPresenter.VideoCallUi InCallVideoCallCallbackNotifier.getInstance().addSessionModificationListener(this); mCurrentVideoState = VideoProfile.STATE_AUDIO_ONLY; mCurrentCallState = Call.State.INVALID; - mDeviceOrientation = ui.getCurrentRotation(); } /** @@ -685,7 +684,6 @@ public class VideoCallPresenter extends Presenter<VideoCallPresenter.VideoCallUi final int rotation = ui.getCurrentRotation(); if (rotation != VideoCallFragment.ORIENTATION_UNKNOWN) { videoCall.setDeviceOrientation(InCallPresenter.toRotationAngle(rotation)); - onDeviceOrientationChanged(rotation); } enableCamera(videoCall, isCameraRequired(newVideoState)); |