public void RenderSurface(WMSurface surface) { int posAttrib = desktopPipeline.GetAttribLocation("position"); GL.EnableVertexAttribArray(posAttrib); int texAttrib = desktopPipeline.GetAttribLocation("texcoord"); GL.EnableVertexAttribArray(texAttrib); surface.Geometry(posAttrib, texAttrib); //surface.Geometry(posAttrib, 0); int texture = surface.Texture(); GL.BindTexture(TextureTarget.Texture2D, texture); desktopPipeline.Draw(); //Console.WriteLine("Rendering surface"); //GL.DisableVertexAttribArray(posAttrib); //GL.DisableVertexAttribArray(texAttrib); GL.Flush(); surface.SendDone(); //surface.callback.Remove(); //surface.callback = null; }
public override void CreateSurface(IntPtr clientPtr, IntPtr resourcePtr, UInt32 id) { WMSurface surface = new WMSurface(clientPtr, 3, id); // Make new Surface : WlSurface resource WindowManager.Surfaces.Add(surface); //Starfury.CurrentVirtualDesktop.Surfaces.Add(surface); //WindowManager.CurrentVirtualDesktop.Surfaces.Add(surface); }
public WMSubsurface(IntPtr client, Int32 version, UInt32 id, IntPtr resource) : base(client, version, id, resource) { IntPtr surfacePtr = resource; Resource r = this.client.FindResource(surfacePtr); if (r != null) { this.surface = (WMSurface)r; } }
public void FirstCommit(WMSurface surface) { }