Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add SmartPad support #439

Closed

Conversation

TheLastMillennial
Copy link
Contributor

Added new option to Key Bindings under the General Settings to select 'SmartPad'. This will allow a user to connect their calculator (running the SmartPad app) to their computer, and control the CEmu Keypad with it.

Testing needed on Windows:
Pressing a key that contains the combination Alt+Ctrl+Win+Shift on Windows 10 will launch the Office application (or a webpage asking you to download Office). I have already disabled this via a Registry tweak so I cannot test. I need to be sure this nuisance won't appear on other's machines.

Added a new option under KeyBindings to allow key presses from the SmartPad app. Also documented macros in keymap.cpp
improved comments and allowed both [return] and [enter] keys to press [enter] button
Copy link
Member

@jacobly0 jacobly0 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Works on linux (with xkb_options srvrkeys:none).

@adriweb
Copy link
Member

adriweb commented Oct 25, 2022

So hm, on macOS, some keys don't work, and most keys that work don't get released (in fact, only Enter seems to behave fine)

Keys that don't work: 2nd, mode, del, arrows, alpha, Xtn, stats, résol, ,, (, )
actually nevermind it's rather random and most of the time it doesn't work as expected.

@TheLastMillennial
Copy link
Contributor Author

TheLastMillennial commented Oct 25, 2022

[enter] is the only key that TI implemented sensibly into Smartpad. By default, [enter] on the calculator simply maps to [enter] on a keyboard. That's probably why it works reliably.

The rest of the keys utilize some combination of [meta] and the [ctrl], [alt], or [shift] keys.

Maybe the issue lies with global keyboard shortcuts? I read you can turn them off on Mac by doing:

  1. Open System Preferences
  2. Click Keyboard
  3. Click Shortcuts pill (third one from the left)
  4. Deselect all checked shortcuts

@adriweb
Copy link
Member

adriweb commented Oct 25, 2022

Eh well, it's not nice to have the user change their settings, so I won't do that especially because I use some :P
Anyway SV handles it just fine so at least we know there's a way.

@TheLastMillennial
Copy link
Contributor Author

I'm not sure what SV is?
So, is this a problem that still needs to be addressed?

@adriweb
Copy link
Member

adriweb commented Oct 25, 2022

SmartView CE, I mean.

@TheLastMillennial
Copy link
Contributor Author

This may not be the best solution, but I found a way to disable all shortcuts: https://stackoverflow.com/questions/5311459/disable-keyboard-shortcut

@adriweb
Copy link
Member

adriweb commented Nov 21, 2022

So hm, should we merge this addign a warning that it may only work correctly under some circumstances?

@TheLastMillennial
Copy link
Contributor Author

TheLastMillennial commented May 30, 2024

bump I think this was merged? Can we close the PR?

@adriweb
Copy link
Member

adriweb commented May 30, 2024

How does it behave on Windows?

@TheLastMillennial
Copy link
Contributor Author

TheLastMillennial commented May 30, 2024

EDIT: See #439 (comment) instead!

Original comment:
It works totally fine unless the user has Microsoft Office installed. SmartPad will sometimes trigger the global shortcut (ctrl+alt+shift+win) to open the Office application.
You can disable this either by installing software to disable all office shortcuts, or applying a registry tweak to just disable the Office shortcut.

Perhaps this PR should look into disabling the Office shortcut while CEmu is open?

@adriweb
Copy link
Member

adriweb commented May 30, 2024

Well, considering it has global conflicts on both Windows and macOS, maybe either:

  • make the code available only on Linux
  • Have a confirm popup warning of potential issues, before it gets actually enabled when the win/mac user tries to enable it.

@calc84maniac
Copy link
Contributor

calc84maniac commented May 30, 2024

Looking at the code in this PR, it appears that the Office shortcut is only used with function keys, so it wouldn't be necessary to use the full OfficeKeyFix. The real question is whether the registry tweak applies instantly without needing to restart explorer.exe, in which case it might be a viable option.

Edit: Actually, looking at OfficeKeyFix, I wonder if registering hotkeys with the function keys we're using would prevent the office shortcut from being triggered as well.

@TheLastMillennial
Copy link
Contributor Author

TheLastMillennial commented May 30, 2024

I just now retested this and the behavior seems to have changed. Office no longer opens whenever ctrl+alt+shift+win+anykey is pressed. It only opens when a valid shortcut is pressed (i.e. ctrl+alt+shift+win+d for onedrive). I was unable to get Office to open anymore using SmartPad so I don't think this is any issue anymore on Windows.

@adriweb
Copy link
Member

adriweb commented May 30, 2024 via email

@adriweb
Copy link
Member

adriweb commented Jun 10, 2024

warning shown to the user

Can anyone take care of this before we release v2.0?

@adriweb adriweb force-pushed the master branch 2 times, most recently from 680107b to f4e2c18 Compare June 16, 2024 23:56
@adriweb
Copy link
Member

adriweb commented Jun 30, 2024

Done via cc5c270 + c8ab958

@adriweb adriweb closed this Jun 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants