Add option to disable Wintab from Preferences dialog

With this is easier to give support to the end-user. The
--disable-wintab option was initially added for crash situation when
the user cannot execute Aseprite from the very beginning, but in other
situations, when Aseprite can be executed correctly but the stylus
doesn't work as expected, it's nice to have this option available from
the UI just to disable the Wintab32.dll.
This commit is contained in:
David Capello 2018-06-19 14:10:19 -03:00
parent 790705937f
commit a0c0b1c8e2
5 changed files with 25 additions and 7 deletions

View File

@ -155,6 +155,7 @@
<option id="use_native_clipboard" type="bool" default="true" />
<option id="use_native_file_dialog" type="bool" default="false" />
<option id="one_finger_as_mouse_movement" type="bool" default="true" />
<option id="load_wintab_driver" type="bool" default="true" />
<option id="flash_layer" type="bool" default="false" migrate="Options.FlashLayer" />
<option id="nonactive_layers_opacity" type="int" default="255" />
</section>

View File

@ -1019,10 +1019,16 @@ one_finger_as_mouse_movement_tooltip = <<<END
Only for Windows 8/10 tablets: Interprets one finger as mouse movement
and two fingers as pan/scroll. Uncheck this to use the old behavior:
One finger pans/scrolls.
This option is available just to get the old behavior but
--
Note: This option is available just to get the old behavior but
will be removed in future versions.
END
load_wintab_driver = Load wintab32 library
load_wintab_driver_tooltip = <<<END
Loads wintab32.dll driver to use Wacom-like devices
when Aseprite is started.
END
wintab_more_info = (More Information)
flash_selected_layer = Flash layer when it is selected
non_active_layer_opacity = Opacity for non-active layers:
ok = &OK

View File

@ -367,6 +367,13 @@
text="@.one_finger_as_mouse_movement"
tooltip="@.one_finger_as_mouse_movement_tooltip"
pref="experimental.one_finger_as_mouse_movement" />
<hbox id="load_wintab_driver_box">
<check id="load_wintab_driver"
text="@.load_wintab_driver"
tooltip="@.load_wintab_driver_tooltip"
pref="experimental.load_wintab_driver" />
<link text="@.wintab_more_info" url="https://www.aseprite.org/docs/wintab/" />
</hbox>
<check id="flash_layer" text="@.flash_selected_layer" />
<hbox>
<label text="@.non_active_layer_opacity" />

View File

@ -176,11 +176,6 @@ App::App()
void App::initialize(const AppOptions& options)
{
#ifdef _WIN32
if (options.disableWintab())
she::instance()->useWintabAPI(false);
#endif
#ifdef ENABLE_UI
m_isGui = options.startUI() && !options.previewCLI();
#else
@ -188,6 +183,14 @@ void App::initialize(const AppOptions& options)
#endif
m_isShell = options.startShell();
m_coreModules = new CoreModules;
#ifdef _WIN32
if (options.disableWintab() ||
!preferences().experimental.loadWintabDriver()) {
she::instance()->useWintabAPI(false);
}
#endif
if (m_isGui)
m_uiSystem.reset(new ui::UISystem);

View File

@ -246,6 +246,7 @@ public:
#ifndef _WIN32
oneFingerAsMouseMovement()->setVisible(false);
loadWintabDriverBox()->setVisible(false);
#endif
if (m_pref.experimental.flashLayer())