24

My son installed the California educational testing app CAASPP over six months ago to take a state required test. The only thing is it disabled Hot Corners on macOS v10.15 (Catalina) and we've not been able to get them to work again after all this time. How do we get them to work again?

We don't know how the CAASPP app disabled them, whether it was with terminal commands or AppleScript.

From page 65 of this CAASPP document about the app, we think the app disabled them using the following Terminal commands (how does it do that from the app?):

defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys - dict-add 79 "{enabled = 0; value = {parameters = (65535,123, 262144); type = standard; }; }"
defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys - dict-add 80 "{enabled = 0; value = { parameters = (65535, 123, 393216); type = 'standard'; }; }"
defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys - dict-add 81 "{enabled = 0; value = { parameters = (65535, 124, 262144); type = 'standard'; }; }"
defaults write com.apple.symbolichotkeys AppleSymbolicHotKeys - dict-add 82 "{enabled = 0; value = { parameters = (65535, 124, 393216); type = 'standard'; }; }"

And that should be able to be reversed just by changing enabled to 1. However, when we try that we get the following error:

Unexpected argument dict-add;` And it leaves it unchanged.

How can we resolve this on Catalina?

I think the Mac OS is actually ignoring the plist file ~/Library/Preferences/com.apple.symbolichotkeys now, or there's another setting somewhere... This plist altered by CAASPP looks like this.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>AppleSymbolicHotKeys</key>
    <string>-</string>
</dict>
</plist>

We changed the plist to the below (copy and pasted the same file from another catalina mac), we restarted, reset the hotkeys, but it's still not working. What should we try next?

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>AppleSymbolicHotKeys</key>
    <dict>
        <key>79</key>
        <dict>
            <key>enabled</key>
            <true/>
        </dict>
        <key>80</key>
        <dict>
            <key>enabled</key>
            <true/>
        </dict>
        <key>81</key>
        <dict>
            <key>enabled</key>
            <true/>
        </dict>
        <key>82</key>
        <dict>
            <key>enabled</key>
            <true/>
        </dict>
    </dict>
</dict>
</plist>

Basically, the system doesn’t respond to the changes in the plist file. How do we get the system to take notice of it again?

15
  • 4
    Note for the future: always install such software into a virtual machine to avoid them taking control over your system Aug 14, 2021 at 23:57
  • 10
    @JonathanReez I can't speak for this California app, but standardized testing software tools typically try to detect VMs as part of their anti-cheating mechanisms. An honest student running a testing program in an VM will only end up looking like a cheater. Aug 15, 2021 at 0:51
  • 3
    @James I doubt a random government piece of software can detect a properly configured virtual machine. Proper anti cheating mechanisms use two or three webcams, not malware on your machine. Aug 15, 2021 at 3:41
  • 16
    Unless your virtual machine is intended to be stealthy, chances are it will be detected quite easily. There's a dedicated bit in the result of CPUID that indicates whether a hypervisor is present. Regardless, it's an invasion of privacy either way - students can and do object to anti-cheating mechanisms using webcams to collect video that may show roommates, personal space, etc.
    – nanofarad
    Aug 15, 2021 at 4:47
  • 8
    This only demonstrates how dumb the test administrators are. Any actual cheater would simply use another device (say a phone) to cheat, while taking the test on the computer with the so-called anti-cheating software. Cheating can and should be stopped via other actually effective methods.
    – user21820
    Aug 16, 2021 at 5:21

3 Answers 3

16

I'm not sure whether the dict-add command has been deprecated since Mojave - it works on that & I don't have Catalina to test.

You could just do it the 'heavy-handed' way, manually.

Go to ~/Library/Preferences/com.apple.symbolichotkeys & open it in BBEdit [freeware version is sufficient.] TextEdit will not be able to make any sense of it.

Find >79< & just below that, change the false to true.
Repeat for the other keys.

enter image description here

Save, then reboot.

3
  • 1
    Thanks again! We ended up just replacing the symbolichotkeys.plist with a working symbolichotkeys.plist from another computer same OS, and we were not able to get it working, which is strange. Aug 17, 2021 at 19:34
  • Glad you got it going :)
    – Tetsujin
    Aug 17, 2021 at 20:06
  • we didn't, yet. It's still not working :( Aug 17, 2021 at 20:38
29

dict-add is fine in Catalina, but you've got a typo. - dict-add should be -dict-add.

You're running defaults write domain key - dict-add …, which is writing - to the key for the domain. That's why the plist has <string>-</string> as the key's value after running that command.

Instead, you should use the -dict-add option which is described in the usage as:

-dict-add <key1> <value1>

2
  • 1
    I know I've answered very late, but you almost had it with what you were trying originally!
    – grg
    Aug 15, 2021 at 13:09
  • Hey great find, that's in the actual CAASPP documentation, lol on them. I'll retry with this. But I did try just replacing the symbolichotkeys.plist with a working symbolichotkeys.plist from another computer same OS, and we were not able to get it working, which is strange. Aug 17, 2021 at 19:33
0

We finally resolved this. The CAASSP software had disabled Mission Control, so any fixes to the plist file ~/Library/Preferences/com.apple.symbolichotkeys were not working as I'm assuming that file was being ignored as it's read by Mission Control? Anyway, it was not working.

However, with a combination of @Tetsujin's fix above, and also enabling Mission Control, we now have Hot Corners working again.

Here's a stack exchange link on how to enable Mission Control. https://apple.stackexchange.com/questions/170488/osx-yosemite-mission-control-stopped-working

Yay Hot Corners!

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.