Fixed
Status Update
Comments
st...@gmail.com <st...@gmail.com> #2
Project: platform/frameworks/support
Branch: androidx-master-dev
commit b90079595f33f58fece04026a97faa0d243acdb1
Author: Yuichi Araki <yaraki@google.com>
Date: Wed Sep 18 16:55:49 2019
Change the way to detect mismatch between POJO and query
This fixes cursor mismatch warnings with expandProjection.
Bug: 140759491
Test: QueryMethodProcessorTest
Change-Id: I7659002e5e0d1ef60fc1af2a625c0c36da0664d8
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
M room/compiler/src/test/kotlin/androidx/room/processor/QueryMethodProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/testing/TestProcessor.kt
https://android-review.googlesource.com/1123258
https://goto.google.com/android-sha1/b90079595f33f58fece04026a97faa0d243acdb1
Branch: androidx-master-dev
commit b90079595f33f58fece04026a97faa0d243acdb1
Author: Yuichi Araki <yaraki@google.com>
Date: Wed Sep 18 16:55:49 2019
Change the way to detect mismatch between POJO and query
This fixes cursor mismatch warnings with expandProjection.
Bug: 140759491
Test: QueryMethodProcessorTest
Change-Id: I7659002e5e0d1ef60fc1af2a625c0c36da0664d8
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
M room/compiler/src/test/kotlin/androidx/room/processor/QueryMethodProcessorTest.kt
M room/compiler/src/test/kotlin/androidx/room/testing/TestProcessor.kt
za...@google.com <za...@google.com> #3
we...@gmail.com <we...@gmail.com> #4
Project: platform/frameworks/support
Branch: androidx-master-dev
commit bdde5a1a970ddc9007b28de4aa29d60ffa588f08
Author: Yigit Boyar <yboyar@google.com>
Date: Thu Apr 16 16:47:05 2020
Re-factor how errors are dismissed when query is re-written
This CL changes how we handle errors/warnings if query is
re-written.
There was a bug in expandProjection where we would report warnings
for things that Room already fixes automatically ( b/140759491 ).
The solution to that problem (I7659002e5e0d1ef60fc1af2a625c0c36da0664d8)
solved it by deferring validating of columns until after re-write
decision is made. Unfortunately, this required changing PojoRowAdapter
to have a dummy mapping until it is validating, make it hard to use
as it does have a non-null mapping which is not useful.
This CL partially reverts that change and instead rely on the log
deferring logic we have in Context. This way, we don't need to break
the stability of PojoRowAdapter while still having the ability to
drop warnings that room fixes. This will also play nicer when we
have different query re-writing options that can use more information
about the query results.
Bug: 153387066
Bug: 140759491
Test: existing tests pass
Change-Id: I2ec967c763d33d7a3ff02c1a13c6953b460d1e5f
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
https://android-review.googlesource.com/1288456
Branch: androidx-master-dev
commit bdde5a1a970ddc9007b28de4aa29d60ffa588f08
Author: Yigit Boyar <yboyar@google.com>
Date: Thu Apr 16 16:47:05 2020
Re-factor how errors are dismissed when query is re-written
This CL changes how we handle errors/warnings if query is
re-written.
There was a bug in expandProjection where we would report warnings
for things that Room already fixes automatically (
The solution to that problem (I7659002e5e0d1ef60fc1af2a625c0c36da0664d8)
solved it by deferring validating of columns until after re-write
decision is made. Unfortunately, this required changing PojoRowAdapter
to have a dummy mapping until it is validating, make it hard to use
as it does have a non-null mapping which is not useful.
This CL partially reverts that change and instead rely on the log
deferring logic we have in Context. This way, we don't need to break
the stability of PojoRowAdapter while still having the ability to
drop warnings that room fixes. This will also play nicer when we
have different query re-writing options that can use more information
about the query results.
Bug: 153387066
Bug: 140759491
Test: existing tests pass
Change-Id: I2ec967c763d33d7a3ff02c1a13c6953b460d1e5f
M room/compiler/src/main/kotlin/androidx/room/log/RLog.kt
M room/compiler/src/main/kotlin/androidx/room/processor/QueryMethodProcessor.kt
M room/compiler/src/main/kotlin/androidx/room/solver/TypeAdapterStore.kt
M room/compiler/src/main/kotlin/androidx/room/solver/query/result/PojoRowAdapter.kt
to...@gmail.com <to...@gmail.com> #5
This is mandatory to properly update the tint color when A12/A13 switch dark mode.
Tint via colorProvider would solved this as building our own images does not switch until we trigger a refresh.
bb...@google.com <bb...@google.com> #6
Two approaches to consider:
- Modifying ImageProvider to take a
tint: ColorProvider
param. - Add a
colorFilter
param to theImage()
composable to mirror the Jetpack Compose api.
za...@google.com <za...@google.com>
ap...@google.com <ap...@google.com> #7
Project: platform/frameworks/support
Branch: androidx-main
commit 23d4e278207b98e0781eaedf432df98c1eb9d6f2
Author: Shamali P <shamalip@google.com>
Date: Wed Jan 18 17:14:15 2023
Adds an option to supply tint color in an Image via ColorFilter option. Chose to define a colorFilter parameter as it would keep API flexible enough to accept additional variations if possible in future. ColorFilter.tint accepts a ColorProvider, which means developers can provide DayNightColorProviders.ColorProvider(day, night) as input allowing versions that support dark modes to seamlessly switch to appropriate color. See ImageAppWidget for the demo.
Note - The default blending mode (SRC_ATOP) is applied since the RemoteViews method to supply BlendingMode was made Remotable very recently and isn't supported in all versions. An alternative for anyone looking to supply blendingMode would be to use ImageProvider(Icon icon) and set blending modes on icon (i.e. at the source). Similarly, wear tiles doesn't support supplying blendingMode and defaults to SRC_IN.
Other alternatives were: 1) Accepting tint param directly on the Image (but that approach didn't seem flexible), 2) Accepting tint/ColorFilter param on ImageProvider (but it seemed to make it look like source is applying effects, rather its remoteViews that is applying the effects. Moreoever, it would unnecessarily make ImageProvider's constructor complex).
Updates to wear-tiles in follow up CL to keep this one smaller.
Bug: 212418562
Test: Locally rendered in different versions. Also see ImageAppWidget for demo.
Relnote: Adds an option to supply tint color for images
Change-Id: I26192fa891c91e373dc25a51005416f08a593205
M glance/glance-appwidget/integration-tests/demos/src/main/java/androidx/glance/appwidget/demos/ImageAppWidget.kt
A glance/glance-appwidget/integration-tests/demos/src/main/res/drawable/ic_android.xml
M glance/glance-appwidget/src/androidMain/kotlin/androidx/glance/appwidget/translators/ImageTranslator.kt
M glance/glance-appwidget/src/test/kotlin/androidx/glance/appwidget/translators/ImageTranslatorTest.kt
M glance/glance/api/current.txt
M glance/glance/api/public_plus_experimental_current.txt
M glance/glance/api/restricted_current.txt
M glance/glance/src/androidMain/kotlin/androidx/glance/Image.kt
M glance/glance/src/test/kotlin/androidx/glance/ImageTest.kt
https://android-review.googlesource.com/2393014
Branch: androidx-main
commit 23d4e278207b98e0781eaedf432df98c1eb9d6f2
Author: Shamali P <shamalip@google.com>
Date: Wed Jan 18 17:14:15 2023
Adds an option to supply tint color in an Image via ColorFilter option. Chose to define a colorFilter parameter as it would keep API flexible enough to accept additional variations if possible in future. ColorFilter.tint accepts a ColorProvider, which means developers can provide DayNightColorProviders.ColorProvider(day, night) as input allowing versions that support dark modes to seamlessly switch to appropriate color. See ImageAppWidget for the demo.
Note - The default blending mode (SRC_ATOP) is applied since the RemoteViews method to supply BlendingMode was made Remotable very recently and isn't supported in all versions. An alternative for anyone looking to supply blendingMode would be to use ImageProvider(Icon icon) and set blending modes on icon (i.e. at the source). Similarly, wear tiles doesn't support supplying blendingMode and defaults to SRC_IN.
Other alternatives were: 1) Accepting tint param directly on the Image (but that approach didn't seem flexible), 2) Accepting tint/ColorFilter param on ImageProvider (but it seemed to make it look like source is applying effects, rather its remoteViews that is applying the effects. Moreoever, it would unnecessarily make ImageProvider's constructor complex).
Updates to wear-tiles in follow up CL to keep this one smaller.
Bug: 212418562
Test: Locally rendered in different versions. Also see ImageAppWidget for demo.
Relnote: Adds an option to supply tint color for images
Change-Id: I26192fa891c91e373dc25a51005416f08a593205
M glance/glance-appwidget/integration-tests/demos/src/main/java/androidx/glance/appwidget/demos/ImageAppWidget.kt
A glance/glance-appwidget/integration-tests/demos/src/main/res/drawable/ic_android.xml
M glance/glance-appwidget/src/androidMain/kotlin/androidx/glance/appwidget/translators/ImageTranslator.kt
M glance/glance-appwidget/src/test/kotlin/androidx/glance/appwidget/translators/ImageTranslatorTest.kt
M glance/glance/api/current.txt
M glance/glance/api/public_plus_experimental_current.txt
M glance/glance/api/restricted_current.txt
M glance/glance/src/androidMain/kotlin/androidx/glance/Image.kt
M glance/glance/src/test/kotlin/androidx/glance/ImageTest.kt
ap...@google.com <ap...@google.com> #8
Project: platform/frameworks/support
Branch: androidx-main
commit 280b65f5e9998691cee5d1e87a589fe38d8b0628
Author: Shamali P <shamalip@google.com>
Date: Tue Jan 24 16:51:51 2023
Implement ColorFilter.tint in glance wear tiles. This is in continuation withhttps://android-review.googlesource.com/2393014 that introduced the API and implemented the same for appWidgets.
Also updates the wear dependency to newer stable version 1.1.0 which has non-experimental colorFilter API.
(verified by running template demo and integration demo tests)
Bug: 212418562
Test: Locally rendered in different versions. Also see HelloTileService for demo.
Change-Id: I26192fa891c91e373dc25a51005416f08a593206
M glance/glance-wear-tiles/build.gradle
M glance/glance-wear-tiles/integration-tests/demos/src/main/java/androidx/glance/wear/tiles/demos/CountTileService.kt
M glance/glance-wear-tiles/integration-tests/demos/src/main/java/androidx/glance/wear/tiles/demos/HelloTileService.kt
A glance/glance-wear-tiles/integration-tests/demos/src/main/res/drawable/ic_waving_hand.xml
M glance/glance-wear-tiles/src/androidMain/kotlin/androidx/glance/wear/tiles/WearCompositionTranslator.kt
M glance/glance-wear-tiles/src/test/kotlin/androidx/glance/wear/tiles/WearCompositionTranslatorTest.kt
https://android-review.googlesource.com/2400081
Branch: androidx-main
commit 280b65f5e9998691cee5d1e87a589fe38d8b0628
Author: Shamali P <shamalip@google.com>
Date: Tue Jan 24 16:51:51 2023
Implement ColorFilter.tint in glance wear tiles. This is in continuation with
Also updates the wear dependency to newer stable version 1.1.0 which has non-experimental colorFilter API.
(verified by running template demo and integration demo tests)
Bug: 212418562
Test: Locally rendered in different versions. Also see HelloTileService for demo.
Change-Id: I26192fa891c91e373dc25a51005416f08a593206
M glance/glance-wear-tiles/build.gradle
M glance/glance-wear-tiles/integration-tests/demos/src/main/java/androidx/glance/wear/tiles/demos/CountTileService.kt
M glance/glance-wear-tiles/integration-tests/demos/src/main/java/androidx/glance/wear/tiles/demos/HelloTileService.kt
A glance/glance-wear-tiles/integration-tests/demos/src/main/res/drawable/ic_waving_hand.xml
M glance/glance-wear-tiles/src/androidMain/kotlin/androidx/glance/wear/tiles/WearCompositionTranslator.kt
M glance/glance-wear-tiles/src/test/kotlin/androidx/glance/wear/tiles/WearCompositionTranslatorTest.kt
sh...@google.com <sh...@google.com>
na...@google.com <na...@google.com> #9
The following release(s) address this bug.It is possible this bug has only been partially addressed:
androidx.glance:glance:1.0.0-beta01
androidx.glance:glance-appwidget:1.0.0-beta01
Description
Component used: GlanceAppWidget/Image Version used: 1.0.0-alpha01 Devices/Android versions reproduced on: all
This is a feature request, not a bug. As a developer, I would like to have a tint/color filter parameter in GlanceImage. As far as I know, if I would like to change color as a state it is impossible. I can update the image resource based on some states, but I would like to just update the color. The only option I found is to build my own bitmap and apply color to
Paint()
. This is the same as current remoteView widget :)