Refactor: Move sliders value indicator shape to seperate file
Part of: #162510
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [x] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [x] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
- **Update changelog post 3.29.2**
## Pre-launch Checklist
- [x] I read the [Contributor Guide] and followed the process outlined
there for submitting PRs.
- [x] I read the [Tree Hygiene] wiki page, which explains my
responsibilities.
- [x] I read and followed the [Flutter Style Guide], including [Features
we expect every widget to implement].
- [x] I signed the [CLA].
- [ ] I listed at least one issue that this PR fixes in the description
above.
- [x] I updated/added relevant documentation (doc comments with `///`).
- [ ] I added new tests to check the change I am making, or this PR is
[test-exempt].
- [ ] I followed the [breaking change policy] and added [Data Driven
Fixes] where supported.
- [x] All existing and new tests are passing.
Most of the reported Mediatek issues are API 29/30, maybe up to 31. By
34 it should work, and the mokey device we have works fine with Vulkan
and runs on CI. This is necessary to allow MediaTek devices to use HCPP
without us having to write a new rendering surface abstraction for GL.
This does _not_ enable PowerVR, which is still denylisted in the vulkan
backend.
Currently we reset the entire descriptor pool(s) each frame.
We can actually reuse the allocated descriptor sets, as that is safe to
do as soon as the cmd buffer that references them has been submitted
(AFAIK). This provides a minor speed up for a large amount of small
drawing ops, but not much beyond that.
Using MSAA w/ depth stencil requires extra work on the GPU to track
multiple samples and clear the depth/stencil textures.
See also:
https://docs.qualcomm.com/bundle/publicresource/topics/80-78185-2/best_practices.html
Its unclear _how_ much this matters, but adreno recommends minimizing
bin count and as such minimizing msaa samples. Well, we can fully
minimize it by not enabling it. Removing depth stencil was also
considered in the past, this should be removed as it requires us to
clear, which isn't free.
Its likely this won't have a huge performance impact, but seems like a
good best practice.
Fixes https://github.com/flutter/flutter/issues/163421
If we restore to the onscreen but need to generate mips (because its a
toImage call) then we could miss the mip map generation. This will
primarily happen on Android emulators as they do not support framebuffer
fetch.