diff options
author | Chuck Liao <chuckliao@google.com> | 2020-02-11 19:38:37 +0800 |
---|---|---|
committer | Chuck Liao <chuckliao@google.com> | 2020-02-18 14:42:26 +0800 |
commit | a35ce9d3065525520a44b17bfd88ddeb9ec8dbe9 (patch) | |
tree | 0a7fc92a4761d5a6bd8237e0fa7658820f562397 | |
parent | 1ef481409c616d4ade4164b730545a81d79a6872 (diff) | |
download | ThemePicker-a35ce9d3065525520a44b17bfd88ddeb9ec8dbe9.tar.gz |
Move PreviewPager related code from ThemePicker/ to WallPaperPicker2/.
Since there's a view pager in the new UI design for wallpaper picker.
Bug: 149374062
Test:
. build/envsetup.sh
tapas WallpaperPicker2 (and ThemePicker/WallpaperPickerGoogleDebug/WallpaperPickerGoogleRelease)
make -j40
Change-Id: I78e12419fb7008653db185d1d341e8659a8764de
54 files changed, 13 insertions, 1575 deletions
diff --git a/res/anim/major_a_b_dot_01_animation.xml b/res/anim/major_a_b_dot_01_animation.xml deleted file mode 100644 index 89fc4c7e..00000000 --- a/res/anim/major_a_b_dot_01_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 3.25,4.0 c 0.79167,0.0 3.95833,0.0 4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/major_a_b_dot_animation.xml b/res/anim/major_a_b_dot_animation.xml deleted file mode 100644 index f24534f4..00000000 --- a/res/anim/major_a_b_dot_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyName="pathData" - android:valueFrom="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueTo="M -4.75,-2.75 l 9.5,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l -9.5,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueType="pathType" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/major_b_a_dot_01_animation.xml b/res/anim/major_b_a_dot_01_animation.xml deleted file mode 100644 index a53ad371..00000000 --- a/res/anim/major_b_a_dot_01_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 8.0,4.0 c -0.79167,0.0 -3.95833,0.0 -4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/major_b_a_dot_animation.xml b/res/anim/major_b_a_dot_animation.xml deleted file mode 100644 index d89512ea..00000000 --- a/res/anim/major_b_a_dot_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyName="pathData" - android:valueFrom="M -4.75,-2.75 l 9.5,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l -9.5,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueTo="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueType="pathType" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/major_b_c_dot_01_animation.xml b/res/anim/major_b_c_dot_01_animation.xml deleted file mode 100644 index e84994ff..00000000 --- a/res/anim/major_b_c_dot_01_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 8.0,4.0 c 0.79167,0.0 3.95833,0.0 4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/major_b_c_dot_animation.xml b/res/anim/major_b_c_dot_animation.xml deleted file mode 100644 index d89512ea..00000000 --- a/res/anim/major_b_c_dot_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyName="pathData" - android:valueFrom="M -4.75,-2.75 l 9.5,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l -9.5,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueTo="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueType="pathType" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/major_c_b_dot_01_animation.xml b/res/anim/major_c_b_dot_01_animation.xml deleted file mode 100644 index 9df1f014..00000000 --- a/res/anim/major_c_b_dot_01_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 12.75,4.0 c -0.79167,0.0 -3.95833,0.0 -4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/major_c_b_dot_animation.xml b/res/anim/major_c_b_dot_animation.xml deleted file mode 100644 index f24534f4..00000000 --- a/res/anim/major_c_b_dot_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyName="pathData" - android:valueFrom="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueTo="M -4.75,-2.75 l 9.5,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l -9.5,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" - android:valueType="pathType" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/minor_a_b_dot_02_animation.xml b/res/anim/minor_a_b_dot_02_animation.xml deleted file mode 100644 index 89fc4c7e..00000000 --- a/res/anim/minor_a_b_dot_02_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 3.25,4.0 c 0.79167,0.0 3.95833,0.0 4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/minor_b_a_dot_02_animation.xml b/res/anim/minor_b_a_dot_02_animation.xml deleted file mode 100644 index a53ad371..00000000 --- a/res/anim/minor_b_a_dot_02_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 8.0,4.0 c -0.79167,0.0 -3.95833,0.0 -4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/minor_b_c_dot_02_animation.xml b/res/anim/minor_b_c_dot_02_animation.xml deleted file mode 100644 index e84994ff..00000000 --- a/res/anim/minor_b_c_dot_02_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 8.0,4.0 c 0.79167,0.0 3.95833,0.0 4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/anim/minor_c_b_dot_02_animation.xml b/res/anim/minor_c_b_dot_02_animation.xml deleted file mode 100644 index 9df1f014..00000000 --- a/res/anim/minor_c_b_dot_02_animation.xml +++ /dev/null @@ -1,25 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<set - xmlns:android="http://schemas.android.com/apk/res/android" > - <objectAnimator - android:duration="250" - android:propertyXName="translateX" - android:propertyYName="translateY" - android:pathData="M 12.75,4.0 c -0.79167,0.0 -3.95833,0.0 -4.75,0.0" - android:interpolator="@android:interpolator/fast_out_slow_in" /> -</set> diff --git a/res/color/indicator_arrow_color.xml b/res/color/indicator_arrow_color.xml deleted file mode 100644 index 198d002d..00000000 --- a/res/color/indicator_arrow_color.xml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2019 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. ---> -<selector xmlns:android="http://schemas.android.com/apk/res/android"> - <item - android:state_enabled="false" - android:color="@color/preview_pager_arrow_disabled" /> - <item - android:state_enabled="true" - android:color="?android:attr/colorAccent" /> -</selector> diff --git a/res/drawable/ic_arrow_back_24px.xml b/res/drawable/ic_arrow_back_24px.xml deleted file mode 100644 index 3eb00c73..00000000 --- a/res/drawable/ic_arrow_back_24px.xml +++ /dev/null @@ -1,24 +0,0 @@ -<!-- - Copyright (C) 2018 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. ---> -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="24.0" - android:viewportHeight="24.0"> - <path - android:fillColor="?android:attr/colorForeground" - android:pathData="M16.41,5.41l-1.41,-1.41l-8,8l8,8l1.41,-1.41l-6.58,-6.59"/> -</vector> diff --git a/res/drawable/ic_arrow_forward_24px.xml b/res/drawable/ic_arrow_forward_24px.xml deleted file mode 100644 index a7284b26..00000000 --- a/res/drawable/ic_arrow_forward_24px.xml +++ /dev/null @@ -1,24 +0,0 @@ -<!-- - Copyright (C) 2018 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. ---> -<vector xmlns:android="http://schemas.android.com/apk/res/android" - android:width="24dp" - android:height="24dp" - android:viewportWidth="24.0" - android:viewportHeight="24.0"> - <path - android:fillColor="?android:attr/colorForeground" - android:pathData="M7.59,18.59l1.41,1.41l8,-8l-8,-8l-1.41,1.41l6.58,6.59"/> -</vector> diff --git a/res/drawable/major_a_b.xml b/res/drawable/major_a_b.xml deleted file mode 100644 index 3878fbd8..00000000 --- a/res/drawable/major_a_b.xml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="major_a_b" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" - android:tint="?android:attr/colorControlNormal"> - <group - android:name="dot_01" - android:translateX="3.25" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/major_a_b_animation.xml b/res/drawable/major_a_b_animation.xml deleted file mode 100644 index d9f0c80b..00000000 --- a/res/drawable/major_a_b_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/major_a_b" > - <target - android:name="dot_01" - android:animation="@anim/major_a_b_dot_01_animation" /> - <target - android:name="dot" - android:animation="@anim/major_a_b_dot_animation" /> -</animated-vector> diff --git a/res/drawable/major_b_a.xml b/res/drawable/major_b_a.xml deleted file mode 100644 index 6fc80ad5..00000000 --- a/res/drawable/major_b_a.xml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="major_b_a" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" - android:tint="?android:attr/colorControlNormal" > - <group - android:name="dot_01" - android:translateX="8" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M -4.75,-2.75 l 9.5,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l -9.5,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/major_b_a_animation.xml b/res/drawable/major_b_a_animation.xml deleted file mode 100644 index 2e0900a9..00000000 --- a/res/drawable/major_b_a_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/major_b_a" > - <target - android:name="dot_01" - android:animation="@anim/major_b_a_dot_01_animation" /> - <target - android:name="dot" - android:animation="@anim/major_b_a_dot_animation" /> -</animated-vector> diff --git a/res/drawable/major_b_c.xml b/res/drawable/major_b_c.xml deleted file mode 100644 index 8d51e204..00000000 --- a/res/drawable/major_b_c.xml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="major_b_c" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" - android:tint="?android:attr/colorControlNormal" > - <group - android:name="dot_01" - android:translateX="8" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M -4.75,-2.75 l 9.5,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l -9.5,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/major_b_c_animation.xml b/res/drawable/major_b_c_animation.xml deleted file mode 100644 index ccf16083..00000000 --- a/res/drawable/major_b_c_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/major_b_c" > - <target - android:name="dot_01" - android:animation="@anim/major_b_c_dot_01_animation" /> - <target - android:name="dot" - android:animation="@anim/major_b_c_dot_animation" /> -</animated-vector> diff --git a/res/drawable/major_c_b.xml b/res/drawable/major_c_b.xml deleted file mode 100644 index 99301877..00000000 --- a/res/drawable/major_c_b.xml +++ /dev/null @@ -1,37 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="major_c_b" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" - android:tint="?android:attr/colorControlNormal" > - <group - android:name="dot_01" - android:translateX="12.75" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/major_c_b_animation.xml b/res/drawable/major_c_b_animation.xml deleted file mode 100644 index 21ea528a..00000000 --- a/res/drawable/major_c_b_animation.xml +++ /dev/null @@ -1,26 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/major_c_b" > - <target - android:name="dot_01" - android:animation="@anim/major_c_b_dot_01_animation" /> - <target - android:name="dot" - android:animation="@anim/major_c_b_dot_animation" /> -</animated-vector> diff --git a/res/drawable/minor_a_b.xml b/res/drawable/minor_a_b.xml deleted file mode 100644 index 522d2e9e..00000000 --- a/res/drawable/minor_a_b.xml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="minor_a_b" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" > - <group - android:name="dot_02" - android:translateX="3.25" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/minor_a_b_animation.xml b/res/drawable/minor_a_b_animation.xml deleted file mode 100644 index 9784b849..00000000 --- a/res/drawable/minor_a_b_animation.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/minor_a_b" > - <target - android:name="dot_02" - android:animation="@anim/minor_a_b_dot_02_animation" /> -</animated-vector> diff --git a/res/drawable/minor_b_a.xml b/res/drawable/minor_b_a.xml deleted file mode 100644 index 4f3029ab..00000000 --- a/res/drawable/minor_b_a.xml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="minor_b_a" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" > - <group - android:name="dot_02" - android:translateX="8" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/minor_b_a_animation.xml b/res/drawable/minor_b_a_animation.xml deleted file mode 100644 index 4cb26c17..00000000 --- a/res/drawable/minor_b_a_animation.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/minor_b_a" > - <target - android:name="dot_02" - android:animation="@anim/minor_b_a_dot_02_animation" /> -</animated-vector> diff --git a/res/drawable/minor_b_c.xml b/res/drawable/minor_b_c.xml deleted file mode 100644 index 07570710..00000000 --- a/res/drawable/minor_b_c.xml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="minor_b_c" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" > - <group - android:name="dot_02" - android:translateX="8" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/minor_b_c_animation.xml b/res/drawable/minor_b_c_animation.xml deleted file mode 100644 index c2aa8b70..00000000 --- a/res/drawable/minor_b_c_animation.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/minor_b_c" > - <target - android:name="dot_02" - android:animation="@anim/minor_b_c_dot_02_animation" /> -</animated-vector> diff --git a/res/drawable/minor_c_b.xml b/res/drawable/minor_c_b.xml deleted file mode 100644 index ba056fb9..00000000 --- a/res/drawable/minor_c_b.xml +++ /dev/null @@ -1,36 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:name="minor_c_b" - android:width="16dp" - android:viewportWidth="16" - android:height="8dp" - android:viewportHeight="8" > - <group - android:name="dot_02" - android:translateX="12.75" - android:translateY="4" > - <group - android:name="dot_group" > - <path - android:name="dot" - android:fillColor="#FFFFFFFF" - android:pathData="M 0.0,-2.75 l 0.0,0.0 c 1.51878306195,0.0 2.75,1.23121693805 2.75,2.75 l 0.0,0.0 c 0.0,1.51878306195 -1.23121693805,2.75 -2.75,2.75 l 0.0,0.0 c -1.51878306195,0.0 -2.75,-1.23121693805 -2.75,-2.75 l 0.0,0.0 c 0.0,-1.51878306195 1.23121693805,-2.75 2.75,-2.75 Z" /> - </group> - </group> -</vector> diff --git a/res/drawable/minor_c_b_animation.xml b/res/drawable/minor_c_b_animation.xml deleted file mode 100644 index 9c9a8cc0..00000000 --- a/res/drawable/minor_c_b_animation.xml +++ /dev/null @@ -1,23 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - Copyright (C) 2018 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. ---> -<animated-vector - xmlns:android="http://schemas.android.com/apk/res/android" - android:drawable="@drawable/minor_c_b" > - <target - android:name="dot_02" - android:animation="@anim/minor_c_b_dot_02_animation" /> -</animated-vector> diff --git a/res/layout-land/fragment_clock_picker.xml b/res/layout-land/fragment_clock_picker.xml index c0fd678e..e2c5d347 100644 --- a/res/layout-land/fragment_clock_picker.xml +++ b/res/layout-land/fragment_clock_picker.xml @@ -33,7 +33,7 @@ android:layout_height="match_parent" android:orientation="horizontal"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/clock_preview_pager" android:layout_width="0dp" android:layout_height="match_parent" diff --git a/res/layout-land/fragment_grid_picker.xml b/res/layout-land/fragment_grid_picker.xml index 414b3901..77330a87 100644 --- a/res/layout-land/fragment_grid_picker.xml +++ b/res/layout-land/fragment_grid_picker.xml @@ -31,7 +31,7 @@ android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/grid_preview_pager" android:layout_width="0dp" android:layout_height="match_parent" diff --git a/res/layout-land/fragment_theme_picker.xml b/res/layout-land/fragment_theme_picker.xml index b70ecdfa..f2083f32 100644 --- a/res/layout-land/fragment_theme_picker.xml +++ b/res/layout-land/fragment_theme_picker.xml @@ -31,7 +31,7 @@ android:layout_height="match_parent" android:orientation="horizontal"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/theme_preview_pager" android:layout_width="0dp" android:layout_height="match_parent" diff --git a/res/layout/fragment_clock_picker.xml b/res/layout/fragment_clock_picker.xml index c51b703f..6b9f94c3 100644 --- a/res/layout/fragment_clock_picker.xml +++ b/res/layout/fragment_clock_picker.xml @@ -32,7 +32,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/clock_preview_pager" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/fragment_clock_scalable_picker.xml b/res/layout/fragment_clock_scalable_picker.xml index 41ee0f3f..db31dc59 100644 --- a/res/layout/fragment_clock_scalable_picker.xml +++ b/res/layout/fragment_clock_scalable_picker.xml @@ -29,7 +29,7 @@ android:layout_height="wrap_content" app:layout_behavior="@string/scalable_container_behavior"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/clock_preview_pager" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/fragment_grid_picker.xml b/res/layout/fragment_grid_picker.xml index 099acdf9..f6645689 100644 --- a/res/layout/fragment_grid_picker.xml +++ b/res/layout/fragment_grid_picker.xml @@ -32,7 +32,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/grid_preview_pager" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/fragment_grid_scalable_picker.xml b/res/layout/fragment_grid_scalable_picker.xml index 14cd5033..de449238 100644 --- a/res/layout/fragment_grid_scalable_picker.xml +++ b/res/layout/fragment_grid_scalable_picker.xml @@ -29,7 +29,7 @@ android:layout_height="wrap_content" app:layout_behavior="@string/scalable_container_behavior"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/grid_preview_pager" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/fragment_theme_picker.xml b/res/layout/fragment_theme_picker.xml index 42c98173..1de5a3c9 100644 --- a/res/layout/fragment_theme_picker.xml +++ b/res/layout/fragment_theme_picker.xml @@ -32,7 +32,7 @@ android:layout_width="match_parent" android:layout_height="match_parent"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/theme_preview_pager" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/fragment_theme_scalable_picker.xml b/res/layout/fragment_theme_scalable_picker.xml index fd5b5b68..e03df3e7 100644 --- a/res/layout/fragment_theme_scalable_picker.xml +++ b/res/layout/fragment_theme_scalable_picker.xml @@ -29,7 +29,7 @@ android:layout_height="wrap_content" app:layout_behavior="@string/scalable_container_behavior"> - <com.android.customization.widget.PreviewPager + <com.android.wallpaper.widget.PreviewPager android:id="@+id/theme_preview_pager" android:layout_width="match_parent" android:layout_height="wrap_content" diff --git a/res/layout/preview_pager.xml b/res/layout/preview_pager.xml deleted file mode 100644 index 43f8fb60..00000000 --- a/res/layout/preview_pager.xml +++ /dev/null @@ -1,83 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - - Copyright (C) 2018 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. ---> -<LinearLayout - xmlns:android="http://schemas.android.com/apk/res/android" - xmlns:tools="http://schemas.android.com/tools" - android:layout_width="match_parent" - android:layout_height="match_parent" - android:orientation="vertical"> - - <androidx.viewpager.widget.ViewPager - android:id="@+id/preview_viewpager" - android:layout_width="match_parent" - android:layout_height="0dp" - android:layout_weight="1"/> - - <FrameLayout - android:id="@+id/indicator_container" - android:layout_width="match_parent" - android:layout_height="@dimen/indicator_container_height" - android:layout_gravity="bottom"> - - <com.android.customization.widget.PageIndicator - android:id="@+id/page_indicator" - android:layout_width="wrap_content" - android:layout_height="wrap_content" - android:layout_gravity="center" /> - - <FrameLayout - android:id="@+id/arrow_previous" - android:layout_width="@dimen/indicator_arrow_touch_area_size" - android:layout_height="@dimen/indicator_arrow_touch_area_size" - android:layout_gravity="center_vertical|left" - android:layout_marginStart="@dimen/indicator_arrow_container_margin_horizontal" - android:background="?android:attr/selectableItemBackgroundBorderless" - android:contentDescription="@string/previous_page_content_description" - android:visibility="gone" - tools:ignore="RtlHardcoded"> - - <ImageView - android:layout_width="@dimen/indicator_arrow_size" - android:layout_height="@dimen/indicator_arrow_size" - android:layout_gravity="center" - android:contentDescription="@null" - android:tint="@color/indicator_arrow_color" - android:src="@drawable/ic_arrow_back_24px" /> - </FrameLayout> - - <FrameLayout - android:id="@+id/arrow_next" - android:layout_width="@dimen/indicator_arrow_touch_area_size" - android:layout_height="@dimen/indicator_arrow_touch_area_size" - android:layout_gravity="center_vertical|right" - android:layout_marginEnd="@dimen/indicator_arrow_container_margin_horizontal" - android:background="?android:attr/selectableItemBackgroundBorderless" - android:contentDescription="@string/next_page_content_description" - android:visibility="gone" - tools:ignore="RtlHardcoded"> - - <ImageView - android:layout_width="@dimen/indicator_arrow_size" - android:layout_height="@dimen/indicator_arrow_size" - android:layout_gravity="center" - android:contentDescription="@null" - android:tint="@color/indicator_arrow_color" - android:src="@drawable/ic_arrow_forward_24px" /> - </FrameLayout> - </FrameLayout> -</LinearLayout>
\ No newline at end of file diff --git a/res/values-land/dimens.xml b/res/values-land/dimens.xml index 985987fa..bd37bae0 100644 --- a/res/values-land/dimens.xml +++ b/res/values-land/dimens.xml @@ -20,10 +20,7 @@ <dimen name="card_cover_title_text_size">14sp</dimen> <dimen name="card_header_icon_size">24dp</dimen> <dimen name="card_header_top_margin">6dp</dimen> - <dimen name="preview_card_padding">8dp</dimen> <dimen name="preview_card_top_padding">6dp</dimen> - <dimen name="preview_page_gap">60dp</dimen> - <dimen name="preview_page_horizontal_margin">92dp</dimen> <dimen name="preview_theme_content_margin">8dp</dimen> <dimen name="preview_theme_content_max_height">140dp</dimen> <dimen name="preview_theme_content_min_height">100dp</dimen> diff --git a/res/values-night/colors.xml b/res/values-night/colors.xml index b567d0d0..48bdefbd 100644 --- a/res/values-night/colors.xml +++ b/res/values-night/colors.xml @@ -43,6 +43,4 @@ <color name="edit_background_base">@color/material_white_100</color> <color name="cover_title_color">@color/white_88_alpha</color> - - <color name="preview_pager_background">@color/google_grey900</color> </resources> diff --git a/res/values/attrs.xml b/res/values/attrs.xml deleted file mode 100644 index ce995ccf..00000000 --- a/res/values/attrs.xml +++ /dev/null @@ -1,29 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!-- - - Copyright (C) 2019 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. ---> -<resources xmlns:android="http://schemas.android.com/apk/res/android"> - <!-- PreviewPager specific attributes. --> - <declare-styleable name="PreviewPager"> - <attr name="card_style" format="integer"> - <!-- The cards are sized so that a small part of the next card in the pager can be seen - peeking from the side. --> - <enum name="peeking" value="0" /> - <!-- Cards are sized to match the screen's aspect ratio (based on available height) --> - <enum name="screen_aspect_ratio" value="1" /> - </attr> - </declare-styleable> -</resources>
\ No newline at end of file diff --git a/res/values/colors.xml b/res/values/colors.xml index 3d646f94..f370ce71 100644 --- a/res/values/colors.xml +++ b/res/values/colors.xml @@ -20,7 +20,6 @@ <color name="black_14_alpha">#24000000</color> <color name="white_14_alpha">#24FFFFFF</color> <color name="google_grey700">#5f6368</color> - <color name="google_grey900">#202124</color> <color name="status_bar_color">#ffffffff</color> @@ -36,8 +35,6 @@ <color name="theme_preview_icon_color">@color/google_grey700</color> - <color name="preview_pager_arrow_disabled">@android:color/darker_gray</color> - <color name="text_color_dark">#2d2d2d</color> <color name="text_color_light">@color/material_white_text</color> @@ -64,6 +61,4 @@ <color name="edit_background_base">@color/google_grey700</color> <color name="cover_title_color">@color/black_87_alpha</color> - - <color name="preview_pager_background">@color/secondary_color</color> </resources> diff --git a/res/values/dimens.xml b/res/values/dimens.xml index f7d435c3..5813b934 100644 --- a/res/values/dimens.xml +++ b/res/values/dimens.xml @@ -25,17 +25,6 @@ <dimen name="check_size">20dp</dimen> <dimen name="check_offset">-4dp</dimen> - <dimen name="preview_indicator_width">16dp</dimen> - <dimen name="preview_indicator_height">8dp</dimen> - <dimen name="indicator_container_height">48dp</dimen> - <dimen name="indicator_arrow_size">24dp</dimen> - <dimen name="indicator_arrow_touch_area_size">48dp</dimen> - - <dimen name="indicator_arrow_container_margin_horizontal">4dp</dimen> - <dimen name="preview_page_gap">16dp</dimen> - <dimen name="preview_page_horizontal_margin">56dp</dimen> - <dimen name="preview_page_top_margin">16dp</dimen> - <dimen name="preview_page_bottom_margin">2dp</dimen> <dimen name="component_preview_page_bottom_margin">16dp</dimen> <!-- Dimensions for the customization option tiles --> @@ -62,15 +51,12 @@ <dimen name="option_tile_margin_horizontal">6dp</dimen> <dimen name="theme_option_label_margin">4dp</dimen> - <dimen name="preview_card_padding">20dp</dimen> <dimen name="preview_card_top_padding">@dimen/preview_card_padding</dimen> <dimen name="card_title_text_size">16sp</dimen> <dimen name="card_cover_title_text_size">24sp</dimen> <dimen name="card_header_icon_size">32dp</dimen> <dimen name="card_header_top_margin">0dp</dimen> - <dimen name="preview_pager_max_height">450dp</dimen> - <dimen name="preview_pager_min_height">350dp</dimen> <dimen name="preview_theme_max_height">400dp</dimen> <dimen name="preview_theme_min_height">180dp</dimen> <dimen name="theme_preview_header_drawable_padding">8dp</dimen> diff --git a/res/values/strings.xml b/res/values/strings.xml index f571b6b7..c940efd5 100755 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -50,13 +50,6 @@ [CHAR LIMIT=20] --> <string name="apply_btn">Apply</string> - <!-- Accessibility label for paging indicator in theme picker preview [CHAR LIMIT=NONE] --> - <string name="accessibility_preview_pager">Page <xliff:g name="current_page" example="1">%1$d</xliff:g> of <xliff:g name="num_pages" example="2">%2$d</xliff:g></string> - <!-- Content description of the next button to bring user to the next preview page.[CHAR LIMIT=NONE] --> - <string name="next_page_content_description">Next</string> - <!-- Content description of the previous button to bring user to the previous preview page. [CHAR LIMIT=NONE] --> - <string name="previous_page_content_description">Previous</string> - <!-- Content description indicating that the selected option is currently applied to the device. [CHAR_LIMIT=NONE] --> <string name="option_applied_description"><xliff:g name="style_name">%1$s</xliff:g>, currently applied</string> diff --git a/res/values/styles.xml b/res/values/styles.xml index 7998c7dd..d612a32a 100644 --- a/res/values/styles.xml +++ b/res/values/styles.xml @@ -72,20 +72,6 @@ <item name="android:textSize">@dimen/theme_option_title_font_text_size</item> </style> - <!-- Preview cards --> - <style name="PreviewCard" parent="CardView"> - <item name="cardCornerRadius">?android:dialogCornerRadius</item> - <item name="android:clipChildren">true</item> - <item name="contentPadding">@dimen/preview_card_padding</item> - <item name="cardBackgroundColor">?android:colorPrimary</item> - </style> - - <style name="FullContentPreviewCard" parent="PreviewCard"> - <item name="android:clipChildren">true</item> - <item name="contentPadding">0dp</item> - <item name="cardBackgroundColor">?android:colorPrimary</item> - </style> - <style name="CardTitleTextAppearance" parent="TitleTextAppearance"> <item name="android:textStyle">bold</item> <item name="android:textSize">@dimen/card_title_text_size</item> diff --git a/src/com/android/customization/picker/BasePreviewAdapter.java b/src/com/android/customization/picker/BasePreviewAdapter.java index 53f750a1..dab923af 100644 --- a/src/com/android/customization/picker/BasePreviewAdapter.java +++ b/src/com/android/customization/picker/BasePreviewAdapter.java @@ -29,7 +29,7 @@ import androidx.core.view.ViewCompat; import androidx.viewpager.widget.PagerAdapter; import com.android.customization.picker.BasePreviewAdapter.PreviewPage; -import com.android.customization.widget.PreviewPager; +import com.android.wallpaper.widget.PreviewPager; import java.util.ArrayList; import java.util.List; diff --git a/src/com/android/customization/picker/clock/ClockFragment.java b/src/com/android/customization/picker/clock/ClockFragment.java index 5191a9e2..48b4c0db 100644 --- a/src/com/android/customization/picker/clock/ClockFragment.java +++ b/src/com/android/customization/picker/clock/ClockFragment.java @@ -40,11 +40,11 @@ import com.android.customization.module.ThemesUserEventLogger; import com.android.customization.picker.BasePreviewAdapter; import com.android.customization.picker.BasePreviewAdapter.PreviewPage; import com.android.customization.widget.OptionSelectorController; -import com.android.customization.widget.PreviewPager; import com.android.wallpaper.R; import com.android.wallpaper.asset.Asset; import com.android.wallpaper.module.InjectorProvider; import com.android.wallpaper.picker.ToolbarFragment; +import com.android.wallpaper.widget.PreviewPager; import java.util.List; diff --git a/src/com/android/customization/picker/grid/GridFragment.java b/src/com/android/customization/picker/grid/GridFragment.java index 9947acab..49a3771f 100644 --- a/src/com/android/customization/picker/grid/GridFragment.java +++ b/src/com/android/customization/picker/grid/GridFragment.java @@ -45,7 +45,6 @@ import com.android.customization.module.ThemesUserEventLogger; import com.android.customization.picker.BasePreviewAdapter; import com.android.customization.picker.BasePreviewAdapter.PreviewPage; import com.android.customization.widget.OptionSelectorController; -import com.android.customization.widget.PreviewPager; import com.android.wallpaper.R; import com.android.wallpaper.asset.Asset; import com.android.wallpaper.asset.ContentUriAsset; @@ -53,6 +52,7 @@ import com.android.wallpaper.model.WallpaperInfo; import com.android.wallpaper.module.CurrentWallpaperInfoFactory; import com.android.wallpaper.module.InjectorProvider; import com.android.wallpaper.picker.ToolbarFragment; +import com.android.wallpaper.widget.PreviewPager; import com.bumptech.glide.Glide; import com.bumptech.glide.request.RequestOptions; diff --git a/src/com/android/customization/picker/theme/ThemeFragment.java b/src/com/android/customization/picker/theme/ThemeFragment.java index b7a39b32..b5c68e53 100644 --- a/src/com/android/customization/picker/theme/ThemeFragment.java +++ b/src/com/android/customization/picker/theme/ThemeFragment.java @@ -60,7 +60,6 @@ import com.android.customization.picker.TimeTicker; import com.android.customization.picker.theme.ThemePreviewPage.ThemeCoverPage; import com.android.customization.picker.theme.ThemePreviewPage.TimeContainer; import com.android.customization.widget.OptionSelectorController; -import com.android.customization.widget.PreviewPager; import com.android.wallpaper.R; import com.android.wallpaper.asset.Asset; import com.android.wallpaper.asset.Asset.CenterCropBitmapTask; @@ -68,6 +67,7 @@ import com.android.wallpaper.model.WallpaperInfo; import com.android.wallpaper.module.CurrentWallpaperInfoFactory; import com.android.wallpaper.module.InjectorProvider; import com.android.wallpaper.picker.ToolbarFragment; +import com.android.wallpaper.widget.PreviewPager; import java.util.List; diff --git a/src/com/android/customization/widget/PageIndicator.java b/src/com/android/customization/widget/PageIndicator.java deleted file mode 100644 index dd636ad9..00000000 --- a/src/com/android/customization/widget/PageIndicator.java +++ /dev/null @@ -1,295 +0,0 @@ -/* - * Copyright (C) 2018 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. - */ -package com.android.customization.widget; - -import android.content.Context; -import android.content.res.ColorStateList; -import android.content.res.TypedArray; -import android.graphics.drawable.Animatable2; -import android.graphics.drawable.AnimatedVectorDrawable; -import android.graphics.drawable.Drawable; -import android.util.AttributeSet; -import android.util.Log; -import android.view.View; -import android.view.ViewGroup; -import android.widget.ImageView; - -import com.android.wallpaper.R; - -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.ArrayList; - -/** - * Page indicator widget, based on QS's page indicator: - * - * Based on QS PageIndicator - * Path: frameworks/base/packages/SystemUI/src/com/android/systemui/qs/PageIndicator.java - */ -public class PageIndicator extends ViewGroup { - - private static final String TAG = "PageIndicator"; - private static final boolean DEBUG = false; - - // The size of a single dot in relation to the whole animation. - private static final float SINGLE_SCALE = .4f; - - static final float MINOR_ALPHA = .42f; - - private final ArrayList<Integer> mQueuedPositions = new ArrayList<>(); - - private final int mPageIndicatorWidth; - private final int mPageIndicatorHeight; - private final int mPageDotWidth; - - private int mPosition = -1; - private boolean mAnimating; - - private static Method sMethodForceAnimationOnUI = null; - private final Animatable2.AnimationCallback mAnimationCallback = - new Animatable2.AnimationCallback() { - - @Override - public void onAnimationEnd(Drawable drawable) { - super.onAnimationEnd(drawable); - if (drawable instanceof AnimatedVectorDrawable) { - ((AnimatedVectorDrawable) drawable).unregisterAnimationCallback( - mAnimationCallback); - } - if (DEBUG) { - Log.d(TAG, "onAnimationEnd - queued: " + mQueuedPositions.size()); - } - mAnimating = false; - if (mQueuedPositions.size() != 0) { - setPosition(mQueuedPositions.remove(0)); - } - } - }; - - - public PageIndicator(Context context, AttributeSet attrs) { - super(context, attrs); - mPageIndicatorWidth = - (int) context.getResources().getDimension(R.dimen.preview_indicator_width); - mPageIndicatorHeight = - (int) context.getResources().getDimension(R.dimen.preview_indicator_height); - mPageDotWidth = (int) (mPageIndicatorWidth * SINGLE_SCALE); - } - - public void setNumPages(int numPages) { - setVisibility(numPages > 1 ? View.VISIBLE : View.INVISIBLE); - if (mAnimating) { - Log.w(TAG, "setNumPages during animation"); - } - while (numPages < getChildCount()) { - removeViewAt(getChildCount() - 1); - } - TypedArray array = getContext().obtainStyledAttributes( - new int[]{android.R.attr.colorControlActivated}); - int color = array.getColor(0, 0); - array.recycle(); - while (numPages > getChildCount()) { - ImageView v = new ImageView(getContext()); - v.setImageResource(R.drawable.minor_a_b); - v.setImageTintList(ColorStateList.valueOf(color)); - addView(v, new LayoutParams(mPageIndicatorWidth, mPageIndicatorHeight)); - } - // Refresh state. - setIndex(mPosition >> 1); - } - - public void setLocation(float location) { - int index = (int) location; - setContentDescription(getContext().getString(R.string.accessibility_preview_pager, - (index + 1), getChildCount())); - int position = index << 1 | ((location != index) ? 1 : 0); - if (DEBUG) { - Log.d(TAG, "setLocation " + location + " " + index + " " + position); - } - - int lastPosition = mPosition; - if (mQueuedPositions.size() != 0) { - lastPosition = mQueuedPositions.get(mQueuedPositions.size() - 1); - } - if (DEBUG) { - Log.d(TAG, position + " " + lastPosition); - } - if (position == lastPosition) return; - if (mAnimating) { - if (DEBUG) { - Log.d(TAG, "Queueing transition to " + Integer.toHexString(position)); - } - mQueuedPositions.add(position); - return; - } - - setPosition(position); - } - - private void setPosition(int position) { - if (mPosition >= 0 && Math.abs(mPosition - position) == 1) { - animate(mPosition, position); - } else { - if (DEBUG) { - Log.d(TAG, "Skipping animation " + mPosition - + " " + position); - } - setIndex(position >> 1); - } - mPosition = position; - } - - private void setIndex(int index) { - final int N = getChildCount(); - for (int i = 0; i < N; i++) { - ImageView v = (ImageView) getChildAt(i); - // Clear out any animation positioning. - v.setTranslationX(0); - v.setImageResource(R.drawable.major_a_b); - v.setAlpha(getAlpha(i == index)); - } - } - - private void animate(int from, int to) { - if (DEBUG) { - Log.d(TAG, "Animating from " + Integer.toHexString(from) + " to " - + Integer.toHexString(to)); - } - int fromIndex = from >> 1; - int toIndex = to >> 1; - - // Set the position of everything, then we will manually control the two views involved - // in the animation. - setIndex(fromIndex); - - boolean fromTransition = (from & 1) != 0; - boolean isAState = fromTransition ? from > to : from < to; - int firstIndex = Math.min(fromIndex, toIndex); - int secondIndex = Math.max(fromIndex, toIndex); - if (secondIndex == firstIndex) { - secondIndex++; - } - ImageView first = (ImageView) getChildAt(firstIndex); - ImageView second = (ImageView) getChildAt(secondIndex); - if (first == null || second == null) { - // may happen during reInflation or other weird cases - return; - } - // Lay the two views on top of each other. - second.setTranslationX(first.getX() - second.getX()); - - playAnimation(first, getTransition(fromTransition, isAState, false)); - first.setAlpha(getAlpha(false)); - - playAnimation(second, getTransition(fromTransition, isAState, true)); - second.setAlpha(getAlpha(true)); - - mAnimating = true; - } - - private float getAlpha(boolean isMajor) { - return isMajor ? 1 : MINOR_ALPHA; - } - - private void playAnimation(ImageView imageView, int res) { - Drawable drawable = getContext().getDrawable(res); - if (!(drawable instanceof AnimatedVectorDrawable)) { - return; - } - final AnimatedVectorDrawable avd = (AnimatedVectorDrawable) drawable; - imageView.setImageDrawable(avd); - try { - forceAnimationOnUI(avd); - } catch (NoSuchMethodException | IllegalAccessException | InvocationTargetException e) { - Log.e(TAG, "Catch an exception in playAnimation", e); - } - avd.registerAnimationCallback(mAnimationCallback); - avd.start(); - } - - private void forceAnimationOnUI(AnimatedVectorDrawable avd) - throws NoSuchMethodException, InvocationTargetException, IllegalAccessException { - if (sMethodForceAnimationOnUI == null) { - sMethodForceAnimationOnUI = AnimatedVectorDrawable.class.getMethod( - "forceAnimationOnUI"); - } - if (sMethodForceAnimationOnUI != null) { - sMethodForceAnimationOnUI.invoke(avd); - } - } - - private int getTransition(boolean fromB, boolean isMajorAState, boolean isMajor) { - if (isMajor) { - if (fromB) { - if (isMajorAState) { - return R.drawable.major_b_a_animation; - } else { - return R.drawable.major_b_c_animation; - } - } else { - if (isMajorAState) { - return R.drawable.major_a_b_animation; - } else { - return R.drawable.major_c_b_animation; - } - } - } else { - if (fromB) { - if (isMajorAState) { - return R.drawable.minor_b_c_animation; - } else { - return R.drawable.minor_b_a_animation; - } - } else { - if (isMajorAState) { - return R.drawable.minor_c_b_animation; - } else { - return R.drawable.minor_a_b_animation; - } - } - } - } - - @Override - protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - final int N = getChildCount(); - if (N == 0) { - super.onMeasure(widthMeasureSpec, heightMeasureSpec); - return; - } - final int widthChildSpec = MeasureSpec.makeMeasureSpec(mPageIndicatorWidth, - MeasureSpec.EXACTLY); - final int heightChildSpec = MeasureSpec.makeMeasureSpec(mPageIndicatorHeight, - MeasureSpec.EXACTLY); - for (int i = 0; i < N; i++) { - getChildAt(i).measure(widthChildSpec, heightChildSpec); - } - int width = (mPageIndicatorWidth - mPageDotWidth) * (N - 1) + mPageDotWidth; - setMeasuredDimension(width, mPageIndicatorHeight); - } - - @Override - protected void onLayout(boolean changed, int l, int t, int r, int b) { - final int N = getChildCount(); - if (N == 0) { - return; - } - for (int i = 0; i < N; i++) { - int left = (mPageIndicatorWidth - mPageDotWidth) * i; - getChildAt(i).layout(left, 0, mPageIndicatorWidth + left, mPageIndicatorHeight); - } - } -} diff --git a/src/com/android/customization/widget/PreviewPager.java b/src/com/android/customization/widget/PreviewPager.java deleted file mode 100644 index 73a55549..00000000 --- a/src/com/android/customization/widget/PreviewPager.java +++ /dev/null @@ -1,246 +0,0 @@ -/* - * Copyright (C) 2018 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. - */ -package com.android.customization.widget; - -import android.content.Context; -import android.content.res.Resources; -import android.content.res.TypedArray; -import android.database.DataSetObserver; -import android.util.AttributeSet; -import android.util.DisplayMetrics; -import android.view.LayoutInflater; -import android.view.View; -import android.widget.LinearLayout; - -import androidx.annotation.Nullable; -import androidx.core.text.TextUtilsCompat; -import androidx.core.view.ViewCompat; -import androidx.viewpager.widget.PagerAdapter; -import androidx.viewpager.widget.ViewPager; -import androidx.viewpager.widget.ViewPager.OnPageChangeListener; - -import com.android.wallpaper.R; - -import java.util.Locale; - -/** - * A Widget consisting of a ViewPager linked to a PageIndicator and previous/next arrows that can be - * used to page over that ViewPager. - * To use it, set a {@link PagerAdapter} using {@link #setAdapter(PagerAdapter)}, and optionally use - * a {@link #setOnPageChangeListener(OnPageChangeListener)} to listen for page changes. - */ -public class PreviewPager extends LinearLayout { - - private static final int STYLE_PEEKING = 0; - private static final int STYLE_ASPECT_RATIO = 1; - - private final ViewPager mViewPager; - private final PageIndicator mPageIndicator; - private final View mPreviousArrow; - private final View mNextArrow; - private final ViewPager.OnPageChangeListener mPageListener; - private int mPageStyle; - - private PagerAdapter mAdapter; - private ViewPager.OnPageChangeListener mExternalPageListener; - private float mScreenAspectRatio; - - public PreviewPager(Context context) { - this(context, null); - } - - public PreviewPager(Context context, AttributeSet attrs) { - this(context, attrs, 0); - } - - public PreviewPager(Context context, AttributeSet attrs, int defStyleAttr) { - super(context, attrs, defStyleAttr); - LayoutInflater.from(context).inflate(R.layout.preview_pager, this); - Resources res = context.getResources(); - TypedArray a = context.obtainStyledAttributes(attrs, - R.styleable.PreviewPager, defStyleAttr, 0); - - mPageStyle = a.getInteger(R.styleable.PreviewPager_card_style, STYLE_PEEKING); - - a.recycle(); - - mViewPager = findViewById(R.id.preview_viewpager); - mViewPager.setPageMargin(res.getDimensionPixelOffset(R.dimen.preview_page_gap)); - mViewPager.setClipToPadding(false); - if (mPageStyle == STYLE_PEEKING) { - int screenWidth = mViewPager.getResources().getDisplayMetrics().widthPixels; - int hMargin = res.getDimensionPixelOffset(R.dimen.preview_page_horizontal_margin); - hMargin = Math.max(hMargin, screenWidth/8); - mViewPager.setPadding( - hMargin, - res.getDimensionPixelOffset(R.dimen.preview_page_top_margin), - hMargin, - res.getDimensionPixelOffset(R.dimen.preview_page_bottom_margin)); - } else if (mPageStyle == STYLE_ASPECT_RATIO) { - DisplayMetrics dm = res.getDisplayMetrics(); - mScreenAspectRatio = dm.heightPixels > dm.widthPixels - ? (float) dm.heightPixels / dm.widthPixels - : (float) dm.widthPixels / dm.heightPixels; - mViewPager.setPadding( - 0, - res.getDimensionPixelOffset(R.dimen.preview_page_top_margin), - 0, - res.getDimensionPixelOffset(R.dimen.preview_page_bottom_margin)); - } - mPageIndicator = findViewById(R.id.page_indicator); - mPreviousArrow = findViewById(R.id.arrow_previous); - mPreviousArrow.setOnClickListener(v -> { - final int previousPos = mViewPager.getCurrentItem() - 1; - mViewPager.setCurrentItem(previousPos, true); - }); - mNextArrow = findViewById(R.id.arrow_next); - mNextArrow.setOnClickListener(v -> { - final int NextPos = mViewPager.getCurrentItem() + 1; - mViewPager.setCurrentItem(NextPos, true); - }); - mPageListener = createPageListener(); - mViewPager.addOnPageChangeListener(mPageListener); - } - - @Override - protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) { - if (mPageStyle == STYLE_ASPECT_RATIO) { - int availableWidth = MeasureSpec.getSize(widthMeasureSpec); - int availableHeight = MeasureSpec.getSize(heightMeasureSpec); - int indicatorHeight = mPageIndicator.getVisibility() == VISIBLE - ? ((View) mPageIndicator.getParent()).getLayoutParams().height - : 0; - int pagerHeight = availableHeight - indicatorHeight; - if (availableWidth > 0) { - int absoluteCardWidth = (int) ((pagerHeight - mViewPager.getPaddingBottom() - - mViewPager.getPaddingTop())/ mScreenAspectRatio); - int hPadding = (availableWidth / 2) - (absoluteCardWidth / 2); - mViewPager.setPaddingRelative( - hPadding, - mViewPager.getPaddingTop(), - hPadding, - mViewPager.getPaddingBottom()); - } - } - super.onMeasure(widthMeasureSpec, heightMeasureSpec); - } - - public void forceCardWidth(int widthPixels) { - mViewPager.addOnLayoutChangeListener(new OnLayoutChangeListener() { - @Override - public void onLayoutChange(View v, int left, int top, int right, int bottom, - int oldLeft, int oldTop, int oldRight, int oldBottom) { - int hPadding = (mViewPager.getWidth() - widthPixels) / 2; - mViewPager.setPadding(hPadding, mViewPager.getPaddingTop(), - hPadding, mViewPager.getPaddingBottom()); - mViewPager.removeOnLayoutChangeListener(this); - } - }); - mViewPager.invalidate(); - } - - /** - * Call this method to set the {@link PagerAdapter} backing the {@link ViewPager} in this - * widget. - */ - public void setAdapter(PagerAdapter adapter) { - int initialPage = 0; - if (mViewPager.getAdapter() != null) { - initialPage = isRtl() ? mAdapter.getCount() - 1 - mViewPager.getCurrentItem() - : mViewPager.getCurrentItem(); - } - mAdapter = adapter; - mViewPager.setAdapter(adapter); - mViewPager.setCurrentItem(isRtl() ? mAdapter.getCount() - 1 - initialPage : initialPage); - mAdapter.registerDataSetObserver(new DataSetObserver() { - @Override - public void onChanged() { - initIndicator(); - } - }); - initIndicator(); - updateIndicator(mViewPager.getCurrentItem()); - } - - private boolean isRtl() { - if (ViewCompat.isLayoutDirectionResolved(mViewPager)) { - return ViewCompat.getLayoutDirection(mViewPager) == ViewCompat.LAYOUT_DIRECTION_RTL; - } - return TextUtilsCompat.getLayoutDirectionFromLocale(Locale.getDefault()) - == ViewCompat.LAYOUT_DIRECTION_RTL; - } - - /** - * Set a {@link OnPageChangeListener} to be notified when the ViewPager's page state changes - */ - public void setOnPageChangeListener(@Nullable ViewPager.OnPageChangeListener listener) { - mExternalPageListener = listener; - } - - private void initIndicator() { - mPageIndicator.setNumPages(mAdapter.getCount()); - mPageIndicator.setLocation(mViewPager.getCurrentItem()); - } - - private ViewPager.OnPageChangeListener createPageListener() { - return new ViewPager.OnPageChangeListener() { - @Override - public void onPageScrolled( - int position, float positionOffset, int positionOffsetPixels) { - // For certain sizes, positionOffset never makes it to 1, so round it as we don't - // need that much precision - float location = (float) Math.round((position + positionOffset) * 100) / 100; - mPageIndicator.setLocation(location); - if (mExternalPageListener != null) { - mExternalPageListener.onPageScrolled(position, positionOffset, - positionOffsetPixels); - } - } - - @Override - public void onPageSelected(int position) { - int adapterCount = mAdapter.getCount(); - if (position < 0 || position >= adapterCount) { - return; - } - - updateIndicator(position); - if (mExternalPageListener != null) { - mExternalPageListener.onPageSelected(position); - } - } - - @Override - public void onPageScrollStateChanged(int state) { - if (mExternalPageListener != null) { - mExternalPageListener.onPageScrollStateChanged(state); - } - } - }; - } - - private void updateIndicator(int position) { - int adapterCount = mAdapter.getCount(); - if (adapterCount > 1) { - mPreviousArrow.setVisibility(position != 0 ? View.VISIBLE : View.GONE); - mNextArrow.setVisibility(position != (adapterCount - 1) ? View.VISIBLE : View.GONE); - } else { - mPageIndicator.setVisibility(View.GONE); - mPreviousArrow.setVisibility(View.GONE); - mNextArrow.setVisibility(View.GONE); - } - } -} |