[Bf-blender-cvs] [f1872566247] master: Windows: workaround to make Windows Ink tablet API work

Nicholas Rishel noreply at git.blender.org
Thu Oct 1 12:19:50 CEST 2020


Commit: f18725662474e921fb31f2c8f80d1dc2e27ed065
Author: Nicholas Rishel
Date:   Thu Oct 1 12:02:21 2020 +0200
Branches: master
https://developer.blender.org/rBf18725662474e921fb31f2c8f80d1dc2e27ed065

Windows: workaround to make Windows Ink tablet API work

Now Wintab is not initialized when starting Blender with the tablet API
preference set to native, since that disables Windows Ink.

Note that changing the tablet API requires restarting Blender for changes
to take effect. This serves as a stopgap to allow use of Windows Ink until
runtime API switching is merged.

Differential Revision: https://developer.blender.org/D9051

===================================================================

M	intern/ghost/intern/GHOST_WindowWin32.cpp
M	source/blender/makesrna/intern/rna_userdef.c

===================================================================

diff --git a/intern/ghost/intern/GHOST_WindowWin32.cpp b/intern/ghost/intern/GHOST_WindowWin32.cpp
index 55525157753..18a48c9169e 100644
--- a/intern/ghost/intern/GHOST_WindowWin32.cpp
+++ b/intern/ghost/intern/GHOST_WindowWin32.cpp
@@ -299,7 +299,7 @@ GHOST_WindowWin32::GHOST_WindowWin32(GHOST_SystemWin32 *system,
 
   // Initialize Wintab
   m_wintab.handle = ::LoadLibrary("Wintab32.dll");
-  if (m_wintab.handle) {
+  if (m_wintab.handle && m_system->getTabletAPI() != GHOST_kTabletNative) {
     // Get API functions
     m_wintab.info = (GHOST_WIN32_WTInfo)::GetProcAddress(m_wintab.handle, "WTInfoA");
     m_wintab.open = (GHOST_WIN32_WTOpen)::GetProcAddress(m_wintab.handle, "WTOpenA");
diff --git a/source/blender/makesrna/intern/rna_userdef.c b/source/blender/makesrna/intern/rna_userdef.c
index 07bf0d12092..9477f99e826 100644
--- a/source/blender/makesrna/intern/rna_userdef.c
+++ b/source/blender/makesrna/intern/rna_userdef.c
@@ -5779,8 +5779,10 @@ static void rna_def_userdef_input(BlenderRNA *brna)
 
   prop = RNA_def_property(srna, "tablet_api", PROP_ENUM, PROP_NONE);
   RNA_def_property_enum_items(prop, tablet_api);
-  RNA_def_property_ui_text(
-      prop, "Tablet API", "Select the tablet API to use for pressure sensitivity");
+  RNA_def_property_ui_text(prop,
+                           "Tablet API",
+                           "Select the tablet API to use for pressure sensitivity (restart "
+                           "Blender for changes to take effect)");
   RNA_def_property_update(prop, 0, "rna_userdef_tablet_api_update");
 
 #  ifdef WITH_INPUT_NDOF



More information about the Bf-blender-cvs mailing list