Merge branch 'master' of ssh://github.com/86Box/86Box
This commit is contained in:
@@ -1453,6 +1453,10 @@ void MainWindow::keyPressEvent(QKeyEvent* event)
|
|||||||
{
|
{
|
||||||
if (send_keyboard_input && !(kbd_req_capture && !mouse_capture && !video_fullscreen))
|
if (send_keyboard_input && !(kbd_req_capture && !mouse_capture && !video_fullscreen))
|
||||||
{
|
{
|
||||||
|
// Windows keys in Qt have one-to-one mapping.
|
||||||
|
if (event->key() == Qt::Key_Super_L || event->key() == Qt::Key_Super_R) {
|
||||||
|
keyboard_input(1, event->key() == Qt::Key_Super_L ? 0x15B : 0x15C);
|
||||||
|
} else
|
||||||
#ifdef Q_OS_MACOS
|
#ifdef Q_OS_MACOS
|
||||||
processMacKeyboardInput(true, event);
|
processMacKeyboardInput(true, event);
|
||||||
#else
|
#else
|
||||||
@@ -1480,6 +1484,9 @@ void MainWindow::keyReleaseEvent(QKeyEvent* event)
|
|||||||
if (!send_keyboard_input)
|
if (!send_keyboard_input)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
|
if (event->key() == Qt::Key_Super_L || event->key() == Qt::Key_Super_R) {
|
||||||
|
keyboard_input(0, event->key() == Qt::Key_Super_L ? 0x15B : 0x15C);
|
||||||
|
} else
|
||||||
#ifdef Q_OS_MACOS
|
#ifdef Q_OS_MACOS
|
||||||
processMacKeyboardInput(false, event);
|
processMacKeyboardInput(false, event);
|
||||||
#else
|
#else
|
||||||
|
@@ -964,10 +964,10 @@ void VulkanRenderer2::startNextFrame()
|
|||||||
m_devFuncs->vkCmdBindVertexBuffers(cb, 0, 1, &m_buf, &vbOffset);
|
m_devFuncs->vkCmdBindVertexBuffers(cb, 0, 1, &m_buf, &vbOffset);
|
||||||
|
|
||||||
VkViewport viewport;
|
VkViewport viewport;
|
||||||
viewport.x = destination.x();
|
viewport.x = destination.x() * m_window->devicePixelRatio();
|
||||||
viewport.y = destination.y();
|
viewport.y = destination.y() * m_window->devicePixelRatio();
|
||||||
viewport.width = destination.width();
|
viewport.width = destination.width() * m_window->devicePixelRatio();
|
||||||
viewport.height = destination.height();
|
viewport.height = destination.height() * m_window->devicePixelRatio();
|
||||||
viewport.minDepth = 0;
|
viewport.minDepth = 0;
|
||||||
viewport.maxDepth = 1;
|
viewport.maxDepth = 1;
|
||||||
m_devFuncs->vkCmdSetViewport(cb, 0, 1, &viewport);
|
m_devFuncs->vkCmdSetViewport(cb, 0, 1, &viewport);
|
||||||
|
@@ -797,6 +797,7 @@ VulkanWindowRenderer::VulkanWindowRenderer(QWidget* parent)
|
|||||||
parentWidget = parent;
|
parentWidget = parent;
|
||||||
instance.setLayers(QByteArrayList() << "VK_LAYER_KHRONOS_validation");
|
instance.setLayers(QByteArrayList() << "VK_LAYER_KHRONOS_validation");
|
||||||
instance.setExtensions(QByteArrayList() << "VK_EXT_debug_report");
|
instance.setExtensions(QByteArrayList() << "VK_EXT_debug_report");
|
||||||
|
instance.setApiVersion(QVersionNumber(1, 0));
|
||||||
if (!instance.create()) {
|
if (!instance.create()) {
|
||||||
throw std::runtime_error("Could not create Vulkan instance");
|
throw std::runtime_error("Could not create Vulkan instance");
|
||||||
}
|
}
|
||||||
@@ -808,6 +809,7 @@ VulkanWindowRenderer::VulkanWindowRenderer(QWidget* parent)
|
|||||||
qDebug() << instance.layers();
|
qDebug() << instance.layers();
|
||||||
setVulkanInstance(&instance);
|
setVulkanInstance(&instance);
|
||||||
setPhysicalDeviceIndex(0);
|
setPhysicalDeviceIndex(0);
|
||||||
|
setPreferredColorFormats({VK_FORMAT_B8G8R8A8_UNORM, VK_FORMAT_R8G8B8A8_UNORM, VK_FORMAT_A8B8G8R8_UNORM_PACK32});
|
||||||
setFlags(Flag::PersistentResources);
|
setFlags(Flag::PersistentResources);
|
||||||
buf_usage = std::vector<std::atomic_flag>(1);
|
buf_usage = std::vector<std::atomic_flag>(1);
|
||||||
buf_usage[0].clear();
|
buf_usage[0].clear();
|
||||||
|
Reference in New Issue
Block a user