Loading packages/PrintSpooler/res/layout/print_job_config_activity_container.xml +8 −5 Original line number Diff line number Diff line Loading @@ -15,9 +15,12 @@ --> <com.android.printspooler.PrintDialogFrame xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <FrameLayout android:id="@+id/content_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/container_background"> </FrameLayout> </com.android.printspooler.PrintDialogFrame> packages/PrintSpooler/src/com/android/printspooler/PrintDialogFrame.java +31 −6 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ public class PrintDialogFrame extends FrameLayout { public final int mMaxWidth; public int mHeight; public PrintDialogFrame(Context context, AttributeSet attrs) { super(context, attrs); mMaxWidth = context.getResources().getDimensionPixelSize( Loading @@ -32,13 +34,36 @@ public class PrintDialogFrame extends FrameLayout { @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); int measuredWidth = getMeasuredWidth(); final int widthMode = MeasureSpec.getMode(widthMeasureSpec); if (widthMode == MeasureSpec.AT_MOST) { switch (widthMode) { case MeasureSpec.UNSPECIFIED: { measuredWidth = mMaxWidth; } break; case MeasureSpec.AT_MOST: { final int receivedWidth = MeasureSpec.getSize(widthMeasureSpec); final int computedWidth = Math.min(mMaxWidth, receivedWidth); widthMeasureSpec = MeasureSpec.makeMeasureSpec(computedWidth, MeasureSpec.EXACTLY); measuredWidth = Math.min(mMaxWidth, receivedWidth); } break; } super.onMeasure(widthMeasureSpec, heightMeasureSpec); mHeight = Math.max(mHeight, getMeasuredHeight()); int measuredHeight = getMeasuredHeight(); final int heightMode = MeasureSpec.getMode(heightMeasureSpec); switch (heightMode) { case MeasureSpec.UNSPECIFIED: { measuredHeight = mHeight; } break; case MeasureSpec.AT_MOST: { final int receivedHeight = MeasureSpec.getSize(heightMeasureSpec); measuredHeight = Math.min(mHeight, receivedHeight); } break; } setMeasuredDimension(measuredWidth, measuredHeight); } } packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java +13 −3 Original line number Diff line number Diff line Loading @@ -59,12 +59,14 @@ import android.text.TextWatcher; import android.util.ArrayMap; import android.util.AttributeSet; import android.util.Log; import android.view.Gravity; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.View; import android.view.View.MeasureSpec; import android.view.View.OnAttachStateChangeListener; import android.view.View.OnClickListener; import android.view.ViewGroup.LayoutParams; import android.view.ViewConfiguration; import android.view.ViewGroup; import android.view.ViewPropertyAnimator; Loading @@ -75,6 +77,7 @@ import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.Spinner; import android.widget.TextView; Loading Loading @@ -1409,7 +1412,9 @@ public class PrintJobConfigActivity extends Activity { postSwitchCallback.run(); } } }); }, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER)); } break; } } break; Loading @@ -1426,7 +1431,9 @@ public class PrintJobConfigActivity extends Activity { postSwitchCallback.run(); } } }); }, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT, Gravity.CENTER)); } break; } } break; Loading Loading @@ -1474,7 +1481,8 @@ public class PrintJobConfigActivity extends Activity { getLayoutInflater().inflate(showLayoutId, contentContainer, true); } private void animateUiSwitch(int showLayoutId, final Runnable postAnimateCommand) { private void animateUiSwitch(int showLayoutId, final Runnable postAnimateCommand, final LayoutParams containerParams) { // Find everything we will shuffle around. final ViewGroup contentContainer = (ViewGroup) findViewById(R.id.content_container); final View hidingView = contentContainer.getChildAt(0); Loading Loading @@ -1511,6 +1519,8 @@ public class PrintJobConfigActivity extends Activity { contentContainer.setScaleY(1.0f); contentContainer.addView(showingView); contentContainer.setLayoutParams(containerParams); // Third animation - show the new content. AutoCancellingAnimator.animate(showingView).withLayer().alpha(1.0f) .withEndAction(new Runnable() { Loading Loading
packages/PrintSpooler/res/layout/print_job_config_activity_container.xml +8 −5 Original line number Diff line number Diff line Loading @@ -15,9 +15,12 @@ --> <com.android.printspooler.PrintDialogFrame xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent"> <FrameLayout android:id="@+id/content_container" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" android:layout_width="fill_parent" android:layout_height="fill_parent" android:background="@color/container_background"> </FrameLayout> </com.android.printspooler.PrintDialogFrame>
packages/PrintSpooler/src/com/android/printspooler/PrintDialogFrame.java +31 −6 Original line number Diff line number Diff line Loading @@ -24,6 +24,8 @@ public class PrintDialogFrame extends FrameLayout { public final int mMaxWidth; public int mHeight; public PrintDialogFrame(Context context, AttributeSet attrs) { super(context, attrs); mMaxWidth = context.getResources().getDimensionPixelSize( Loading @@ -32,13 +34,36 @@ public class PrintDialogFrame extends FrameLayout { @Override protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { super.onMeasure(widthMeasureSpec, heightMeasureSpec); int measuredWidth = getMeasuredWidth(); final int widthMode = MeasureSpec.getMode(widthMeasureSpec); if (widthMode == MeasureSpec.AT_MOST) { switch (widthMode) { case MeasureSpec.UNSPECIFIED: { measuredWidth = mMaxWidth; } break; case MeasureSpec.AT_MOST: { final int receivedWidth = MeasureSpec.getSize(widthMeasureSpec); final int computedWidth = Math.min(mMaxWidth, receivedWidth); widthMeasureSpec = MeasureSpec.makeMeasureSpec(computedWidth, MeasureSpec.EXACTLY); measuredWidth = Math.min(mMaxWidth, receivedWidth); } break; } super.onMeasure(widthMeasureSpec, heightMeasureSpec); mHeight = Math.max(mHeight, getMeasuredHeight()); int measuredHeight = getMeasuredHeight(); final int heightMode = MeasureSpec.getMode(heightMeasureSpec); switch (heightMode) { case MeasureSpec.UNSPECIFIED: { measuredHeight = mHeight; } break; case MeasureSpec.AT_MOST: { final int receivedHeight = MeasureSpec.getSize(heightMeasureSpec); measuredHeight = Math.min(mHeight, receivedHeight); } break; } setMeasuredDimension(measuredWidth, measuredHeight); } }
packages/PrintSpooler/src/com/android/printspooler/PrintJobConfigActivity.java +13 −3 Original line number Diff line number Diff line Loading @@ -59,12 +59,14 @@ import android.text.TextWatcher; import android.util.ArrayMap; import android.util.AttributeSet; import android.util.Log; import android.view.Gravity; import android.view.KeyEvent; import android.view.MotionEvent; import android.view.View; import android.view.View.MeasureSpec; import android.view.View.OnAttachStateChangeListener; import android.view.View.OnClickListener; import android.view.ViewGroup.LayoutParams; import android.view.ViewConfiguration; import android.view.ViewGroup; import android.view.ViewPropertyAnimator; Loading @@ -75,6 +77,7 @@ import android.widget.ArrayAdapter; import android.widget.BaseAdapter; import android.widget.Button; import android.widget.EditText; import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.Spinner; import android.widget.TextView; Loading Loading @@ -1409,7 +1412,9 @@ public class PrintJobConfigActivity extends Activity { postSwitchCallback.run(); } } }); }, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT, Gravity.CENTER)); } break; } } break; Loading @@ -1426,7 +1431,9 @@ public class PrintJobConfigActivity extends Activity { postSwitchCallback.run(); } } }); }, new FrameLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.MATCH_PARENT, Gravity.CENTER)); } break; } } break; Loading Loading @@ -1474,7 +1481,8 @@ public class PrintJobConfigActivity extends Activity { getLayoutInflater().inflate(showLayoutId, contentContainer, true); } private void animateUiSwitch(int showLayoutId, final Runnable postAnimateCommand) { private void animateUiSwitch(int showLayoutId, final Runnable postAnimateCommand, final LayoutParams containerParams) { // Find everything we will shuffle around. final ViewGroup contentContainer = (ViewGroup) findViewById(R.id.content_container); final View hidingView = contentContainer.getChildAt(0); Loading Loading @@ -1511,6 +1519,8 @@ public class PrintJobConfigActivity extends Activity { contentContainer.setScaleY(1.0f); contentContainer.addView(showingView); contentContainer.setLayoutParams(containerParams); // Third animation - show the new content. AutoCancellingAnimator.animate(showingView).withLayer().alpha(1.0f) .withEndAction(new Runnable() { Loading