Disable Spaces/Mission Control for Network Users

johnnasset
Contributor

Our school district is piloting the Smarter Balance assessment this spring. One requirement of the testing is that Mission Control/Spaces is disabled. Through the GUI, you do this by going to System Preferences-Keyboard-Shortcuts and unchecking the box for Mission Control. It appears unchecking this box modifies the com.apple.symbolichotkeys (amongst others) preference file. The problem I'm having is that this is a user-level preference and most tips I find online are for local users, not AD users. Anybody have a fairly painless way to do this rather than touching each machine?

1 ACCEPTED SOLUTION

cbrewer
Valued Contributor II

Setup a configuration profile with a custom payload. Preference domain should be com.apple.symbolichotkeys.

The plist contents should be:
{AppleSymbolicHotKeys={79={enabled=false, value={parameters=[65535, 123, 262144], type=standard}}, 80={enabled=false, value={parameters=[65535, 123, 393216], type=standard}}, 81={enabled=false, value={parameters=[65535, 124, 262144], type=standard}}, 118={enabled=false, value={parameters=[65535, 18, 262144], type=standard}}}}

View solution in original post

14 REPLIES 14

bentoms
Release Candidate Programs Tester

@johnnasset.. Will it now work via MCX?

cbrewer
Valued Contributor II

Setup a configuration profile with a custom payload. Preference domain should be com.apple.symbolichotkeys.

The plist contents should be:
{AppleSymbolicHotKeys={79={enabled=false, value={parameters=[65535, 123, 262144], type=standard}}, 80={enabled=false, value={parameters=[65535, 123, 393216], type=standard}}, 81={enabled=false, value={parameters=[65535, 124, 262144], type=standard}}, 118={enabled=false, value={parameters=[65535, 18, 262144], type=standard}}}}

johnnasset
Contributor

Excellent, thanks. I set it as a computer level profile, converted a plist from a machine to xml and uploaded to the JSS. Worked like a charm.

cbrewer
Valued Contributor II

Mine is User level FWIW.

johnnasset
Contributor

Hmm, seems to work fine at computer level too.

cdenesha
Valued Contributor III

awesome - was dreading tackling this.

chrismartin
New Contributor

Thanks!

cbrewer
Valued Contributor II

Here's the original plist contents needed for this. You'll also need to convert it to xml prior to uploading to the jss.

plutil -convert xml1 ~/Desktop/com.apple.symbolichotkeys.plist

<!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>118</key>
        <dict>
            <key>enabled</key>
            <false/>
            <key>value</key>
            <dict>
                <key>parameters</key>
                <array>
                    <integer>65535</integer>
                    <integer>18</integer>
                    <integer>262144</integer>
                </array>
                <key>type</key>
                <string>standard</string>
            </dict>
        </dict>
        <key>79</key>
        <dict>
            <key>enabled</key>
            <false/>
            <key>value</key>
            <dict>
                <key>parameters</key>
                <array>
                    <integer>65535</integer>
                    <integer>123</integer>
                    <integer>262144</integer>
                </array>
                <key>type</key>
                <string>standard</string>
            </dict>
        </dict>
        <key>80</key>
        <dict>
            <key>enabled</key>
            <false/>
            <key>value</key>
            <dict>
                <key>parameters</key>
                <array>
                    <integer>65535</integer>
                    <integer>123</integer>
                    <integer>393216</integer>
                </array>
                <key>type</key>
                <string>standard</string>
            </dict>
        </dict>
        <key>81</key>
        <dict>
            <key>enabled</key>
            <false/>
            <key>value</key>
            <dict>
                <key>parameters</key>
                <array>
                    <integer>65535</integer>
                    <integer>124</integer>
                    <integer>262144</integer>
                </array>
                <key>type</key>
                <string>standard</string>
            </dict>
        </dict>
    </dict>
</dict>
</plist>

kateswist
New Contributor

Can you explain the last step? I was with you until I got to the upload file part of configuration profile. This is the first time I have created one so assume I know nothing...

Thanks in advance,
Katie

cbrewer
Valued Contributor II

This is not a configuration profile. This is the plist needed for the preference domain after you create a configuration profile in the JSS. Create a new configuration profile and configure custom settings. There you can upload the com.apple.symbolichotkeys plist file.

fordsam
New Contributor

Setup a configuration profile with a custom payload
Uploaded XML converted Plist
scoped to appropriate devices
Device received the configuration profile successfully

opened up CaSecureBrowser and it still states the need to disable spaces.

Anyone suggestions?

millersc
Valued Contributor

Anyone have any luck with this and key dict 52, which happens to be "Turn Dock Hiding On/Off" in the Keyboard Pref pane.

Tired defaults write, profile at computer and user levels. Nothing sets it. 10.10.3 workstations.

Thanks
Steve

mohtashim_mobin
New Contributor II

Thank you very much for this.

csjoberg
New Contributor II

This should be included https://www.jamf.com/jamf-nation/discussions/13713/sbac-secure-browser-7-0-and-disabling-spaces