diff --git a/lib/RefreshCS b/lib/RefreshCS
index f92137c..95cd22c 160000
--- a/lib/RefreshCS
+++ b/lib/RefreshCS
@@ -1 +1 @@
-Subproject commit f92137ccc6a12d1f1a908c7b97acb7f7b75d1641
+Subproject commit 95cd22c48a68f93204b44bc508dec86b6be74e56
diff --git a/src/Graphics/CommandBuffer.cs b/src/Graphics/CommandBuffer.cs
index e02a7d0..9c134c5 100644
--- a/src/Graphics/CommandBuffer.cs
+++ b/src/Graphics/CommandBuffer.cs
@@ -1,6 +1,7 @@
using System;
using System.Runtime.InteropServices;
using MoonWorks.Math;
+using MoonWorks.Window;
using RefreshCS;
namespace MoonWorks.Graphics
@@ -580,15 +581,16 @@ namespace MoonWorks.Graphics
}
///
- /// Prepares a texture to be presented to the screen.
+ /// Prepares a texture to be presented to a window.
///
/// The texture to present.
- /// The area of the screen to present to.
+ /// The area of the window to present to.
/// The filter to use when the texture size differs from the destination rectangle.
public void QueuePresent(
in Texture texture,
in Rect destinationRectangle,
- Filter filter
+ Filter filter,
+ OSWindow window
) {
var refreshRect = destinationRectangle.ToRefresh();
var refreshTextureSlice = new Refresh.TextureSlice
@@ -611,20 +613,22 @@ namespace MoonWorks.Graphics
Handle,
refreshTextureSlice,
refreshRect,
- (Refresh.Filter)filter
+ (Refresh.Filter)filter,
+ window.Handle
);
}
///
- /// Prepares a texture slice to be presented to the screen.
+ /// Prepares a texture slice to be presented to a window.
///
/// The texture slice to present.
- /// The area of the screen to present to.
+ /// The area of the window to present to.
/// The filter to use when the texture size differs from the destination rectangle.
public void QueuePresent(
in TextureSlice textureSlice,
in Rect destinationRectangle,
- Filter filter
+ Filter filter,
+ OSWindow window
) {
var refreshTextureSlice = textureSlice.ToRefreshTextureSlice();
var refreshRect = destinationRectangle.ToRefresh();
@@ -634,38 +638,42 @@ namespace MoonWorks.Graphics
Handle,
refreshTextureSlice,
refreshRect,
- (Refresh.Filter) filter
+ (Refresh.Filter) filter,
+ window.Handle
);
}
///
- /// Prepares a texture slice to be presented to the screen.
+ /// Prepares a texture slice to be presented to a window.
/// This particular variant of this method will present to the entire window area.
///
/// The texture slice to present.
/// The filter to use when the texture size differs from the window size.
public void QueuePresent(
in TextureSlice textureSlice,
- Filter filter
+ Filter filter,
+ OSWindow window
) {
Refresh.Refresh_QueuePresent(
Device.Handle,
Handle,
textureSlice.ToRefreshTextureSlice(),
IntPtr.Zero,
- (Refresh.Filter) filter
+ (Refresh.Filter) filter,
+ window.Handle
);
}
///
- /// Prepares a texture to be presented to the screen.
+ /// Prepares a texture to be presented to a window.
/// This particular variant of this method will present to the entire window area.
///
/// The texture to present.
/// The filter to use when the texture size differs from the window size.
public void QueuePresent(
Texture texture,
- Filter filter
+ Filter filter,
+ OSWindow window
) {
var refreshTextureSlice = new Refresh.TextureSlice
{
@@ -687,7 +695,8 @@ namespace MoonWorks.Graphics
Handle,
refreshTextureSlice,
IntPtr.Zero,
- (Refresh.Filter) filter
+ (Refresh.Filter) filter,
+ window.Handle
);
}