Print memory usage stats on F6

Co-Authored-By: Tomeu Vizoso <tomeu.vizoso@collabora.com>
[GTK][EFL] Implement Linux backend for MemoryPressureHandler

Uses the pressure_level mechanism from the memory subsystem to get
notified of when the application reaches the "low" memory pressure
level.

For more details:

https://www.kernel.org/doc/Documentation/cgroups/memory.txt
[GStreamer] Call MediaPlayer::durationChanged() after the duration is discovered
introducing a new env var to print RGB info

using RGB_DEBUG_FILE is possible to know which RGB format
cairo is creating for its surfaces.
MediaPlayerPrivateGStreamer: set the fakevideodec is used for any codec if USE_FAKEVIDEODEC is set
SetupAutoconfHeader.m4: add PLATFORM(RPI) flag

Atuomatically set if bcm_host.h header and bcm_host lib exist
[GStreamer] Add RGB16 support

Useful on Raspberry Pi
[GStreamer] Fix buffering flag and add deinterlace/colorbalance flags
[GStreamer][RPI] Turn off deinterlacing, colorbalance, subtitles and audio visualizer

Using playbin "flags" property
RPI CPU is not capable for that
Page visibility for wk1
Enable throttling of DOM timers for hidden pages
Enable disabling CSS animations when the page is hidden
[WidgetBackingStoreCairo] use cairo.ImageSurface context instead of cairo.XLibSurface context

2x faster for copy
[ChromeClientGtk] use cairo backing store on RPI+X11
RenderLayer: disable painting outlines for video renderers

Avoid a frame copy.

It avoid to call MediaPlayerPrivateGStreamerBase::paint twice
for each frame. So previously we were acting like a 50 FPS
on a 25 FPS video.

Gain between 5-10% CPU on RPI with a 640x360_25fps video
[RPi] add an extra paranoid check to make sure PLATFORM(RPI) is defined
webkitwebview: disable double buffering

Remove 1 copy and it does not flicker because webkit internally use cairo backing store
that also server for double buffering.

I had to set the gdk window to be native otherwise it receives extra events
which results of 3 XCopyArea.

(Patch modified by Marco Barisione to make single buffering
unconditional.)
[GTK] Depend on a newer cairo to make single buffered views not flicker
[ChromeClientGtk] new env var WEBKIT_MAX_PAINTING_FPS to configure webkit painting

This is about general user experience in webkit.

By default the maximun webkit web page repainting is 60 FPS
when navigating through the web.

I think this is too much on RPI and it should be set to 25 or 30.

Note that this is not a timer. This is a threshold.
Either the page or the user or the video can ask redrawing.
Webkit just limit this if too much redrwaing is asked.v

I think 60  is too much on RPI because if we reach 60, we will
get bad experience a lot before.
I think it should be set to 25 or 30.

But let's do some experiment before.

So run:

WEBKIT_MAX_PAINTING_FPS=25 epiphany-browser
Decode JPEGs to RGB565