diff --git a/src/video_display.cpp b/src/video_display.cpp
index 2df9ec3c05e4cf0f5d40cbbe1e49bd5c5b2a321a..494e62504a92919d241b7d6d811253b546bbdb3e 100644
--- a/src/video_display.cpp
+++ b/src/video_display.cpp
@@ -190,8 +190,12 @@ void VideoDisplay::Render() try {
 	if (!viewport_height || !viewport_width)
 		PositionVideo();
 
-	videoOut->Render(viewport_left, viewport_bottom, viewport_width, viewport_height);
-	E(glViewport(0, std::min(viewport_bottom, 0), videoSize.GetWidth(), videoSize.GetHeight()));
+	// Note: Right now, GetContentScaleFactor() always returns 1
+	// This should change with wxWidgets 3.2, and thus fix HiDPI scaling issues
+	videoOut->Render(viewport_left, viewport_bottom, viewport_width * GetContentScaleFactor(),
+			viewport_height * GetContentScaleFactor());
+	E(glViewport(0, std::min(viewport_bottom, 0), videoSize.GetWidth() * GetContentScaleFactor(),
+				videoSize.GetHeight() * GetContentScaleFactor()));
 
 	E(glMatrixMode(GL_PROJECTION));
 	E(glLoadIdentity());