Loading packages/SettingsLib/res/layout/zen_mode_condition.xml→packages/SettingsLib/res/layout/zen_mode_condition_plusminus.xml +49 −0 Original line number Diff line number Diff line Loading @@ -14,50 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. --> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="48dp" android:clipChildren="false" android:layout_marginStart="1dp" android:layout_marginEnd="0dp" android:layout_weight="1" android:orientation="horizontal" android:gravity="center_vertical" > <LinearLayout android:id="@android:id/content" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="48dp" android:gravity="center_vertical" android:layout_centerVertical="true" android:orientation="vertical" android:layout_toEndOf="@android:id/checkbox" android:layout_toStartOf="@android:id/button1"> <TextView android:id="@android:id/text1" android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="end" android:textAlignment="viewStart" android:maxLines="1" android:textColor="?android:attr/textColorPrimary" android:textSize="16sp"/> <TextView android:id="@android:id/text2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/zen_mode_condition_detail_item_interline_spacing" android:ellipsize="end" android:textAlignment="viewStart" android:maxLines="1" android:scrollbars="none" android:textColor="?android:attr/textColorSecondary" android:textSize="14sp"/> </LinearLayout> <ImageView android:id="@android:id/button1" style="@style/BorderlessButton" Loading @@ -65,7 +31,6 @@ android:layout_height="48dp" android:layout_centerVertical="true" android:scaleType="center" android:layout_toStartOf="@android:id/button2" android:contentDescription="@string/accessibility_manual_zen_less_time" android:tint="?android:attr/colorAccent" android:src="@*android:drawable/ic_minus" /> Loading @@ -75,11 +40,10 @@ style="@style/BorderlessButton" android:layout_width="48dp" android:layout_height="48dp" android:layout_alignParentEnd="true" android:scaleType="center" android:layout_centerVertical="true" android:scaleType="center" android:contentDescription="@string/accessibility_manual_zen_more_time" android:tint="?android:attr/colorAccent" android:src="@*android:drawable/ic_plus" /> </RelativeLayout> </LinearLayout> packages/SettingsLib/res/layout/zen_mode_duration_dialog.xml +5 −3 Original line number Diff line number Diff line Loading @@ -39,12 +39,14 @@ android:orientation="horizontal"> <RadioGroup android:id="@+id/zen_radio_buttons" android:layout_width="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" /> <LinearLayout android:id="@+id/zen_radio_buttons_content" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="end" android:orientation="vertical"/> </com.android.settingslib.notification.modes.ZenRadioLayout> </LinearLayout> Loading packages/SettingsLib/res/layout/zen_mode_radio_button.xml +8 −7 Original line number Diff line number Diff line Loading @@ -17,13 +17,14 @@ <RadioButton xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/checkbox" android:layout_height="48dp" android:layout_width="48dp" android:minHeight="48dp" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_marginStart="7dp" android:layout_marginEnd="4dp" android:layout_alignParentStart="true" android:gravity="center" android:paddingTop="10dp" android:paddingBottom="10dp"> </RadioButton> No newline at end of file android:paddingStart="16dp" android:textColor="?android:attr/textColorPrimary" android:textSize="16sp" android:lineSpacingExtra="@dimen/zen_mode_condition_detail_item_interline_spacing" android:gravity="center_vertical" /> packages/SettingsLib/res/layout/zen_mode_turn_on_dialog_container.xml +5 −3 Original line number Diff line number Diff line Loading @@ -39,12 +39,14 @@ android:orientation="horizontal"> <RadioGroup android:id="@+id/zen_radio_buttons" android:layout_width="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" /> <LinearLayout android:id="@+id/zen_radio_buttons_content" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="end" android:orientation="vertical"/> </com.android.settingslib.notification.modes.ZenRadioLayout> Loading packages/SettingsLib/src/com/android/settingslib/notification/modes/DndDurationDialogFactory.java +8 −49 Original line number Diff line number Diff line Loading @@ -26,13 +26,11 @@ import android.service.notification.ZenModeConfig; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.CompoundButton; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.ScrollView; import android.widget.TextView; import androidx.annotation.VisibleForTesting; import androidx.appcompat.app.AlertDialog; Loading Loading @@ -150,7 +148,7 @@ public class DndDurationDialogFactory { } View contentView = mLayoutInflater.inflate(R.layout.zen_mode_duration_dialog, null); ScrollView container = (ScrollView) contentView.findViewById(R.id.zen_duration_container); ScrollView container = contentView.findViewById(R.id.zen_duration_container); mZenRadioGroup = container.findViewById(R.id.zen_radio_buttons); mZenRadioGroupContent = container.findViewById(R.id.zen_radio_buttons_content); Loading @@ -161,10 +159,10 @@ public class DndDurationDialogFactory { mZenRadioGroup.addView(radioButton); radioButton.setId(i); final View radioButtonContent = mLayoutInflater.inflate(R.layout.zen_mode_condition, mZenRadioGroupContent, false); radioButtonContent.setId(i + MAX_MANUAL_DND_OPTIONS); mZenRadioGroupContent.addView(radioButtonContent); final View radioButtonExtraContent = mLayoutInflater.inflate( R.layout.zen_mode_condition_plusminus, mZenRadioGroupContent, false); radioButtonExtraContent.setId(i + MAX_MANUAL_DND_OPTIONS); mZenRadioGroupContent.addView(radioButtonExtraContent); } return contentView; Loading Loading @@ -204,18 +202,6 @@ public class DndDurationDialogFactory { tag.countdownZenDuration = currZenDuration; } tag.rb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { tag.rb.setChecked(true); } tag.line1.setStateDescription( isChecked ? buttonView.getContext().getString( com.android.internal.R.string.selected) : null); } }); updateUi(tag, row, rowIndex); } Loading @@ -224,27 +210,6 @@ public class DndDurationDialogFactory { return (ConditionTag) mZenRadioGroupContent.getChildAt(index).getTag(); } private void setupUi(ConditionTag tag, View row) { if (tag.lines == null) { tag.lines = row.findViewById(android.R.id.content); } if (tag.line1 == null) { tag.line1 = (TextView) row.findViewById(android.R.id.text1); } // text2 is not used in zen duration dialog row.findViewById(android.R.id.text2).setVisibility(View.GONE); tag.lines.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { tag.rb.setChecked(true); } }); } private void updateButtons(ConditionTag tag, View row, int rowIndex) { final ImageView minusButton = (ImageView) row.findViewById(android.R.id.button1); final ImageView plusButton = (ImageView) row.findViewById(android.R.id.button2); Loading @@ -254,7 +219,7 @@ public class DndDurationDialogFactory { @Override public void onClick(View v) { onClickTimeButton(row, tag, false /*down*/, rowIndex); tag.lines.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); tag.rb.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); } }); Loading @@ -262,7 +227,7 @@ public class DndDurationDialogFactory { @Override public void onClick(View v) { onClickTimeButton(row, tag, true /*up*/, rowIndex); tag.lines.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); tag.rb.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); } }); minusButton.setVisibility(View.VISIBLE); Loading @@ -285,10 +250,6 @@ public class DndDurationDialogFactory { @VisibleForTesting protected void updateUi(ConditionTag tag, View row, int rowIndex) { if (tag.lines == null) { setupUi(tag, row); } updateButtons(tag, row, rowIndex); String radioContentText = ""; Loading @@ -307,7 +268,7 @@ public class DndDurationDialogFactory { break; } tag.line1.setText(radioContentText); tag.rb.setText(radioContentText); } @VisibleForTesting Loading Loading @@ -344,8 +305,6 @@ public class DndDurationDialogFactory { @VisibleForTesting protected static class ConditionTag { public RadioButton rb; public View lines; public TextView line1; public int countdownZenDuration; // only important for countdown radio button } } Loading
packages/SettingsLib/res/layout/zen_mode_condition.xml→packages/SettingsLib/res/layout/zen_mode_condition_plusminus.xml +49 −0 Original line number Diff line number Diff line Loading @@ -14,50 +14,16 @@ See the License for the specific language governing permissions and limitations under the License. --> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="wrap_content" <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="wrap_content" android:layout_height="48dp" android:clipChildren="false" android:layout_marginStart="1dp" android:layout_marginEnd="0dp" android:layout_weight="1" android:orientation="horizontal" android:gravity="center_vertical" > <LinearLayout android:id="@android:id/content" android:layout_width="match_parent" android:layout_height="wrap_content" android:minHeight="48dp" android:gravity="center_vertical" android:layout_centerVertical="true" android:orientation="vertical" android:layout_toEndOf="@android:id/checkbox" android:layout_toStartOf="@android:id/button1"> <TextView android:id="@android:id/text1" android:layout_width="match_parent" android:layout_height="wrap_content" android:ellipsize="end" android:textAlignment="viewStart" android:maxLines="1" android:textColor="?android:attr/textColorPrimary" android:textSize="16sp"/> <TextView android:id="@android:id/text2" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_marginTop="@dimen/zen_mode_condition_detail_item_interline_spacing" android:ellipsize="end" android:textAlignment="viewStart" android:maxLines="1" android:scrollbars="none" android:textColor="?android:attr/textColorSecondary" android:textSize="14sp"/> </LinearLayout> <ImageView android:id="@android:id/button1" style="@style/BorderlessButton" Loading @@ -65,7 +31,6 @@ android:layout_height="48dp" android:layout_centerVertical="true" android:scaleType="center" android:layout_toStartOf="@android:id/button2" android:contentDescription="@string/accessibility_manual_zen_less_time" android:tint="?android:attr/colorAccent" android:src="@*android:drawable/ic_minus" /> Loading @@ -75,11 +40,10 @@ style="@style/BorderlessButton" android:layout_width="48dp" android:layout_height="48dp" android:layout_alignParentEnd="true" android:scaleType="center" android:layout_centerVertical="true" android:scaleType="center" android:contentDescription="@string/accessibility_manual_zen_more_time" android:tint="?android:attr/colorAccent" android:src="@*android:drawable/ic_plus" /> </RelativeLayout> </LinearLayout>
packages/SettingsLib/res/layout/zen_mode_duration_dialog.xml +5 −3 Original line number Diff line number Diff line Loading @@ -39,12 +39,14 @@ android:orientation="horizontal"> <RadioGroup android:id="@+id/zen_radio_buttons" android:layout_width="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" /> <LinearLayout android:id="@+id/zen_radio_buttons_content" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="end" android:orientation="vertical"/> </com.android.settingslib.notification.modes.ZenRadioLayout> </LinearLayout> Loading
packages/SettingsLib/res/layout/zen_mode_radio_button.xml +8 −7 Original line number Diff line number Diff line Loading @@ -17,13 +17,14 @@ <RadioButton xmlns:android="http://schemas.android.com/apk/res/android" android:id="@android:id/checkbox" android:layout_height="48dp" android:layout_width="48dp" android:minHeight="48dp" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout_marginStart="7dp" android:layout_marginEnd="4dp" android:layout_alignParentStart="true" android:gravity="center" android:paddingTop="10dp" android:paddingBottom="10dp"> </RadioButton> No newline at end of file android:paddingStart="16dp" android:textColor="?android:attr/textColorPrimary" android:textSize="16sp" android:lineSpacingExtra="@dimen/zen_mode_condition_detail_item_interline_spacing" android:gravity="center_vertical" />
packages/SettingsLib/res/layout/zen_mode_turn_on_dialog_container.xml +5 −3 Original line number Diff line number Diff line Loading @@ -39,12 +39,14 @@ android:orientation="horizontal"> <RadioGroup android:id="@+id/zen_radio_buttons" android:layout_width="wrap_content" android:layout_width="0dp" android:layout_weight="1" android:layout_height="wrap_content" /> <LinearLayout android:id="@+id/zen_radio_buttons_content" android:layout_width="fill_parent" android:layout_height="fill_parent" android:layout_width="wrap_content" android:layout_height="match_parent" android:layout_gravity="end" android:orientation="vertical"/> </com.android.settingslib.notification.modes.ZenRadioLayout> Loading
packages/SettingsLib/src/com/android/settingslib/notification/modes/DndDurationDialogFactory.java +8 −49 Original line number Diff line number Diff line Loading @@ -26,13 +26,11 @@ import android.service.notification.ZenModeConfig; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.CompoundButton; import android.widget.ImageView; import android.widget.LinearLayout; import android.widget.RadioButton; import android.widget.RadioGroup; import android.widget.ScrollView; import android.widget.TextView; import androidx.annotation.VisibleForTesting; import androidx.appcompat.app.AlertDialog; Loading Loading @@ -150,7 +148,7 @@ public class DndDurationDialogFactory { } View contentView = mLayoutInflater.inflate(R.layout.zen_mode_duration_dialog, null); ScrollView container = (ScrollView) contentView.findViewById(R.id.zen_duration_container); ScrollView container = contentView.findViewById(R.id.zen_duration_container); mZenRadioGroup = container.findViewById(R.id.zen_radio_buttons); mZenRadioGroupContent = container.findViewById(R.id.zen_radio_buttons_content); Loading @@ -161,10 +159,10 @@ public class DndDurationDialogFactory { mZenRadioGroup.addView(radioButton); radioButton.setId(i); final View radioButtonContent = mLayoutInflater.inflate(R.layout.zen_mode_condition, mZenRadioGroupContent, false); radioButtonContent.setId(i + MAX_MANUAL_DND_OPTIONS); mZenRadioGroupContent.addView(radioButtonContent); final View radioButtonExtraContent = mLayoutInflater.inflate( R.layout.zen_mode_condition_plusminus, mZenRadioGroupContent, false); radioButtonExtraContent.setId(i + MAX_MANUAL_DND_OPTIONS); mZenRadioGroupContent.addView(radioButtonExtraContent); } return contentView; Loading Loading @@ -204,18 +202,6 @@ public class DndDurationDialogFactory { tag.countdownZenDuration = currZenDuration; } tag.rb.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() { @Override public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) { if (isChecked) { tag.rb.setChecked(true); } tag.line1.setStateDescription( isChecked ? buttonView.getContext().getString( com.android.internal.R.string.selected) : null); } }); updateUi(tag, row, rowIndex); } Loading @@ -224,27 +210,6 @@ public class DndDurationDialogFactory { return (ConditionTag) mZenRadioGroupContent.getChildAt(index).getTag(); } private void setupUi(ConditionTag tag, View row) { if (tag.lines == null) { tag.lines = row.findViewById(android.R.id.content); } if (tag.line1 == null) { tag.line1 = (TextView) row.findViewById(android.R.id.text1); } // text2 is not used in zen duration dialog row.findViewById(android.R.id.text2).setVisibility(View.GONE); tag.lines.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { tag.rb.setChecked(true); } }); } private void updateButtons(ConditionTag tag, View row, int rowIndex) { final ImageView minusButton = (ImageView) row.findViewById(android.R.id.button1); final ImageView plusButton = (ImageView) row.findViewById(android.R.id.button2); Loading @@ -254,7 +219,7 @@ public class DndDurationDialogFactory { @Override public void onClick(View v) { onClickTimeButton(row, tag, false /*down*/, rowIndex); tag.lines.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); tag.rb.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); } }); Loading @@ -262,7 +227,7 @@ public class DndDurationDialogFactory { @Override public void onClick(View v) { onClickTimeButton(row, tag, true /*up*/, rowIndex); tag.lines.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); tag.rb.setAccessibilityLiveRegion(View.ACCESSIBILITY_LIVE_REGION_POLITE); } }); minusButton.setVisibility(View.VISIBLE); Loading @@ -285,10 +250,6 @@ public class DndDurationDialogFactory { @VisibleForTesting protected void updateUi(ConditionTag tag, View row, int rowIndex) { if (tag.lines == null) { setupUi(tag, row); } updateButtons(tag, row, rowIndex); String radioContentText = ""; Loading @@ -307,7 +268,7 @@ public class DndDurationDialogFactory { break; } tag.line1.setText(radioContentText); tag.rb.setText(radioContentText); } @VisibleForTesting Loading Loading @@ -344,8 +305,6 @@ public class DndDurationDialogFactory { @VisibleForTesting protected static class ConditionTag { public RadioButton rb; public View lines; public TextView line1; public int countdownZenDuration; // only important for countdown radio button } }