A better HW Bitmap uploader

Move all HW bitmap upload operations off of RenderThread.
Ensure EGL context outlives all upload requests

Bug: 79250950
Test: builds, boots, systrace is good, CTS bitmap tests pass

Change-Id: I5ace6c516d33b1afdf1a407cd8b183f6b60c22c1
diff --git a/libs/hwui/PathParser.cpp b/libs/hwui/PathParser.cpp
index 47fcca9..ad599e9 100644
--- a/libs/hwui/PathParser.cpp
+++ b/libs/hwui/PathParser.cpp
@@ -210,9 +210,8 @@
     if (numberOfPointsExpected > 0) {
         result->failureMessage += "a multiple of ";
     }
-    result->failureMessage += std::to_string(numberOfPointsExpected)
-            + " floats. However, " + std::to_string(points)
-            + " float(s) are found. ";
+    result->failureMessage += std::to_string(numberOfPointsExpected) + " floats. However, " +
+                              std::to_string(points) + " float(s) are found. ";
 }
 
 void PathParser::getPathDataFromAsciiString(PathData* data, ParseResult* result,
@@ -242,8 +241,8 @@
         validateVerbAndPoints(pathStr[start], points.size(), result);
         if (result->failureOccurred) {
             // If either verb or points is not valid, return immediately.
-            result->failureMessage += "Failure occurred at position " +
-                                     std::to_string(start) + " of path: " + pathStr;
+            result->failureMessage += "Failure occurred at position " + std::to_string(start) +
+                                      " of path: " + pathStr;
             return;
         }
         data->verbs.push_back(pathStr[start]);
@@ -257,8 +256,8 @@
         validateVerbAndPoints(pathStr[start], 0, result);
         if (result->failureOccurred) {
             // If either verb or points is not valid, return immediately.
-            result->failureMessage += "Failure occurred at position " +
-                                     std::to_string(start) + " of path: " + pathStr;
+            result->failureMessage += "Failure occurred at position " + std::to_string(start) +
+                                      " of path: " + pathStr;
             return;
         }
         data->verbs.push_back(pathStr[start]);