1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-05-31 19:38:12 +00:00
serenity/Userland
Andreas Kling 6bb53d6a80 LibGUI: Handle GUI::Window non-volatile backing store issues better
Instead of crashing when we can't make the back buffer non-volatile,
we now transition the window into single-buffered mode instead
(assuming it was originally in double-buffered mode.)

This reduces GUI fidelity a bit (by potentially making windows flicker
during repaint) but since it's only triggered in low-memory conditions,
it seems like a reasonable thing to sacrifice in order for the system
to carry on.

This patch also stops us from allocating entirely new backing stores
after the old ones were purged. If they were purged but reallocated
just fine, there's no need to allocate new memory again. We already
have fresh zero-filled pages in the existing bitmap at this point.
2021-07-25 14:39:28 +02:00
..
Applets DesktopPicker: Make sure the applet always ends up in the same place 2021-07-22 09:17:01 +02:00
Applications LibGUI+Browser: Do not paste bitmaps 2021-07-25 12:36:23 +02:00
Demos Userland: Add GUI::Window::add_menu() and use it everywhere 2021-07-21 21:24:26 +02:00
DevTools GML Playground: Add Vim emulation 2021-07-24 01:13:42 +02:00
DynamicLoader DynamicLoader: Don't truncate dynamic section address on x86_64 2021-07-22 23:34:33 +02:00
Games Solitaire: Use AK::get_random_uniform() instead of rand()/srand() 2021-07-24 01:40:51 +02:00
Libraries LibGUI: Handle GUI::Window non-volatile backing store issues better 2021-07-25 14:39:28 +02:00
Services CrashDaemon: Remove BACKTRACE_DEBUG debugging code 2021-07-22 23:34:33 +02:00
Shell Shell: Don't assume that only the current shell may continue children 2021-07-17 02:00:24 +04:30
Utilities Utilities: Add count option for ping 2021-07-25 00:32:32 +02:00
CMakeLists.txt Tests: Establish root Tests directory, move Userland/Tests there 2021-05-06 17:54:28 +02:00