private static void ShowConnectedView() { Logger.Info(nameof(ShowConnectedView)); if (VMWindow.Instance.IsShownOnce) { MediaManager.UnmuteEngine(); } else { MediaManager.MuteEngine(false); } InputMapper.Instance.SetMonitor(AndroidBootUp.mMonitor); GPSManager.Instance().SetMonitor(AndroidBootUp.mMonitor); Logger.Debug("Raising Layout event"); Opengl.userInteracted = true; if (!Opengl.IsSubWindowVisible()) { Logger.Info("showing window"); Opengl.glWindowAction = GlWindowAction.Show; Opengl.userInteracted = false; } LayoutManager.FixupGuestDisplay(); AndroidBootUp.isAndroidReady = true; VMWindow.Instance.BootUpTasks(); }
public static bool HideSubWindow() { IntPtr subWindow = Opengl.GetSubWindow(); if (subWindow == IntPtr.Zero) { return(false); } InteropWindow.ShowWindow(subWindow, 0); return(true); }
internal static void SetCurrentAppData(HttpListenerRequest req, HttpListenerResponse res) { Logger.Info("In SetCurrentAppData"); try { RequestData request = HTTPUtils.ParseRequest(req); AppHandler.mCurrentAppPackage = request.Data["package"]; AppHandler.mCurrentAppActivity = request.Data["activity"]; Logger.Info("SetCurrentAppData mCurrentAppPackage = " + AppHandler.mCurrentAppPackage); Logger.Info("SetCurrentAppData mCurrentAppActivity = " + AppHandler.mCurrentAppActivity); Logger.Info("Looking for: " + AppHandler.sAppPackage); if (AppHandler.sAppLaunchedFromRunApp || AppHandler.sAppIconName.Contains(AppHandler.mCurrentAppActivity)) { AppHandler.appLaunched = true; AppHandler.sAppLaunchedFromRunApp = false; } if (!Opt.Instance.sysPrep && Oem.Instance.IsSendGameManagerRequest) { string str = request.Data["callingPackage"]; HTTPUtils.SendRequestToClient("appLaunched", new Dictionary <string, string>() { { "package", AppHandler.mCurrentAppPackage }, { "activity", AppHandler.mCurrentAppActivity }, { "callingPackage", str } }, MultiInstanceStrings.VmName, 0, (Dictionary <string, string>)null, false, 1, 0, "bgp"); } if (Features.ExitOnHome() && AppHandler.appLaunched && (AppHandler.mCurrentAppPackage == "com.bluestacks.gamepophome" || AppHandler.mCurrentAppPackage == "com.bluestacks.appmart")) { Logger.Info("Reached home app. Closing frontend."); Environment.Exit(0); } Opengl.HandleAppActivity(AppHandler.mCurrentAppPackage, AppHandler.mCurrentAppActivity); InputMapper.Instance.SetPackage(AppHandler.mCurrentAppPackage); HTTPHandler.WriteSuccessJson(res); } catch (Exception ex) { Logger.Error("Exception in Server SetCurrentAppData. Err : " + ex.ToString()); HTTPHandler.WriteErrorJson(ex.Message, res); } }
public static bool Init( string vmName, IntPtr h, int x, int y, int width, int height, Opengl.GlReadyHandler glReadyHandler, Opengl.GlInitFailedHandler glInitFailedHandler) { Logger.Info("GLMode: " + Opengl.GlMode.ToString()); if (Opengl.GlMode == 0) { glReadyHandler(); Opengl.SignalGlReady(vmName); return(true); } Opengl.Graphics.PgaLoggerInit(Logger.GetHdLoggerCallback()); EventWaitHandle eventWaitHandle = new EventWaitHandle(false, EventResetMode.ManualReset); Logger.Info("Initializing System Renderer"); Opengl.Graphics.PgaServerInit(h, 0, 0, width, height, eventWaitHandle.SafeWaitHandle, RegistryManager.Instance.Guest[MultiInstanceStrings.VmName].GlRenderMode, RegistryManager.Instance.CurrentEngine); eventWaitHandle.WaitOne(); Opengl.initialized = true; if (!Opengl.GetPgaServerInitStatus()) { glInitFailedHandler(); return(false); } Opengl.Graphics.PgaSetAstcConfig((int)RegistryManager.Instance.Guest[vmName].ASTCOption); new Thread((ThreadStart)(() => { try { int num = Opengl.Graphics.PgaIsHwAstcSupported(); Logger.Info("value of isHwAstcSuppported is .." + num.ToString()); RegistryManager.Instance.Guest[vmName].IsHardwareAstcSupported = num == 1; } catch (Exception ex) { Logger.Error("error while gl3 check.." + ex.ToString()); } })) { IsBackground = true }.Start(); new Thread((ThreadStart)(() => { try { int num = Opengl.Graphics.PgaIsGLES3(); Logger.Info("value of gl3 is .." + num.ToString()); RegistryManager.Instance.GLES3 = num == 1; } catch (Exception ex) { Logger.Error("error while gl3 check.." + ex.ToString()); } })) { IsBackground = true }.Start(); glReadyHandler(); Opengl.SignalGlReady(vmName); Opengl.SetVsync(RegistryManager.Instance.Guest[vmName].EnableVSync); if (RegistryManager.Instance.Guest[vmName].ShowFPS == 1) { Opengl.ShowFPS(1); } return(true); }
public static bool ResizeSubWindow(int x, int y, int cx, int cy) { InteropWindow.SetWindowPos(Opengl.GetSubWindow(), IntPtr.Zero, x, y, cx, cy, 16468U); return(true); }
public static bool IsSubWindowVisible() { IntPtr subWindow = Opengl.GetSubWindow(); return(!(subWindow == IntPtr.Zero) && InteropWindow.IsWindowVisible(subWindow)); }