mirror of
https://github.com/MobileGL-Dev/MobileGL
synced 2026-11-07 01:53:24 +09:00
[Feat] (MG_Remote): the in-process display server serves unix endpoints too
mobilegl_server_serve_inprocess refused anything but tcp:// because its only supervisor was the TCP one's thread hand-off. A unix endpoint (@abstract name or filesystem path) now runs a supervisor of the same shape minus the TCP exposure machinery: AcceptPair pairs a client's control and SCM_RIGHTS connections by arrival order, there is no DataBind to route and no pre-auth gate, sessions run on threads one at a time with Busy for a second client, the latch resets between sessions and g_inProcessStop ends it. That gives the on-screen server the on-device fast path: ServerOwned windows over a unix socket with shm data, no TCP copies. The control screen's tcp-only guard for the on-screen mode goes with the refusal it mirrored.
This commit is contained in:
@@ -98,7 +98,7 @@ public final class ServerControlActivity extends Activity {
|
||||
envField = addField(contentLayout, "Extra env (optional)", "", dp(8));
|
||||
|
||||
onScreenBox = new CheckBox(this);
|
||||
onScreenBox.setText("On-screen window (render client frames onto this screen; tcp:// only)");
|
||||
onScreenBox.setText("On-screen window (render client frames onto this screen)");
|
||||
onScreenBox.setTextColor(COLOR_TEXT);
|
||||
onScreenBox.setTextSize(TypedValue.COMPLEX_UNIT_SP, 13);
|
||||
LinearLayout.LayoutParams boxParams = new LinearLayout.LayoutParams(
|
||||
@@ -155,14 +155,6 @@ public final class ServerControlActivity extends Activity {
|
||||
String token = tokenField.getText().toString();
|
||||
String env = envField.getText().toString().trim();
|
||||
|
||||
// The in-process display server only accepts tcp:// (ServerMain's in-process arm);
|
||||
// the unix forms belong to the offscreen supervisor.
|
||||
if (onScreenBox.isChecked() && !endpoint.startsWith("tcp://")) {
|
||||
setStatus("The on-screen display server serves tcp:// only; use a tcp:// endpoint "
|
||||
+ "or uncheck On-screen window.", COLOR_FAIL);
|
||||
return;
|
||||
}
|
||||
|
||||
String probeDisplay;
|
||||
Probe probe;
|
||||
if (endpoint.startsWith("tcp://")) {
|
||||
|
||||
Reference in New Issue
Block a user