backend/native: Only disable dmabuf screen cast when not hw accelerated

Don't attempt to predict whether we support DMA buffer screen casting
depending on EGL context type or driver name, but only whether we are
hardware accelerated. For all other cases, simply try and fall back to
shared memory if need be.

The reason we can do this now is that we only try to allocate DMA
buffers if the PipeWire client asked for it, and rely on that client to
know it can handle them.

However, in case we're not hardware accelerated, we never want to
attempt to use DMA buffer screen sharing, as we want to avoid
compositing into a DMA buffer on such hardware as doing so can be very
slow.
15 jobs for !2086 with wip/dma-buf-when-asked-for in 33 minutes and 19 seconds (queued for 2 seconds)
latest detached
Status Name Job ID Coverage
  Review
passed check-commit-log #1611820

00:02:16

passed check-merge-request #1611821

00:00:28

 
  Prepare
passed build-fedora-container@aarch64 #1611823
aarch64

00:00:26

passed build-fedora-container@x86_64 #1611822

00:00:27

 
  Code Review
passed check-code-style #1611824

00:01:14

 
  Build
passed build-mutter@aarch64 #1611826
aarch64

00:08:04

passed build-mutter@x86_64 #1611825

00:03:28

passed build-without-native-backend-and-wayland@x86_64 #1611828

00:01:29

passed build-without-opengl-and-glx@x86_64 #1611827

00:03:15

 
  Test
passed can-build-gnome-shell@x86_64 #1611831

00:01:24

passed test-mutter@aarch64 #1611830
aarch64

00:10:06

passed test-mutter@x86_64 #1611829

00:05:34

 
  Analyze
passed test-mutter-coverage@aarch64 #1611833
aarch64

00:12:23

48.0%
passed test-mutter-coverage@x86_64 #1611832

00:05:10

48.0%
manual test-mutter-coverity #1611834
allowed to fail manual