Device Utilities

KeyboardKit has device-specific utilities.

πŸ–₯️

Overview

KeyboardKit has various device-related features that aim to help you customize for various devices.

Although you should avoid designing for a specific device, orientation, or screen size, some features do need these kinds of considerations. Just take care to know when it’s needed.

Device type

KeyboardKit has a platform-agnostic DeviceType enum that defines available device types. You can use .current to get the current device type.

Interface orientation

KeyboardKit has a platform-agnostic InterfaceOrientation enum that defines interface orientations. You can use .current to get the current interface orientation.

Screen sizes

KeyboardKit has CGSize extensions to help detecting device types, like .iPadScreenPortrait. There’s also an .isScreenSize(_:) rotation-agnostic function that compares.

It’s extra important to avoid designing for a specific screen size, since apps can run in split screen, a keyboard can be floating, etc.

Documentation

The information on this page is shortened to be easier to overview. For more information about this feature, code samples, etc. please see the online documentation.


Read more

⌨️

Essentials

KeyboardKit provides essential features, utilities & views.

πŸ‘‘

Pro Features

KeyboardKit Pro unlocks features like autocomplete, emojis, AI, etc.

πŸ’₯

Actions

KeyboardKit makes it easy to handle keyboard actions.

πŸ“±

App

KeyboardKit makes it easy to set up your app and keyboard.

πŸ—―

Callouts

KeyboardKit can show input & secondary action callouts.

πŸ–₯️

Device Utilities

KeyboardKit has device-specific utilities.

πŸ˜€

Emojis

KeyboardKit defines emojis, categories, skin tones, etc.

⌨️

External Keyboards

KeyboardKit Pro can detect if an external keyboard is being used.

πŸ”‰

Feedback

KeyboardKit can trigger audio & haptic feedback.

πŸ‘†

Gestures

KeyboardKit has a customizable keyboard gesture engine.

🏠

Host

KeyboardKit can identify the host application.

πŸ“

Input

KeyboardKit can input text inside the keyboard extension itself.

πŸ”£

Layout

KeyboardKit has customizable input sets & keyboard layouts.

🌐

Localization

KeyboardKit supports 60+ locales and languages.

πŸ—ΊοΈ

Navigation

KeyboardKit lets you open urls and apps from the keyboard.

πŸ‘

Previews

KeyboardKit has extension keyboard preview support.

➑️

Proxy Utilities

KeyboardKit makes your text document proxy do a LOT more.

βš™οΈ

Settings

KeyboardKit has tools for in-app settings & System Settings.

🩺

Status

KeyboardKit detects if a keyboard is enabled, has full access, etc.

🎨

Styling

KeyboardKit lets you style your keyboards to great extent.

🍭

Themes

KeyboardKit can use themes to style keyboards in flexible ways.