KTimer is a lightweight floating countdown timer for the KDE Plasma desktop. It is designed for presentation workflows, especially WPS Presentation Slide Show on Linux, where you need a clean always-on-top timer while presenting slides.
KTimer is not a KWin Effect. It is a standalone Qt/QML KDE timer app with a small KWin Script bridge. This design makes it practical on KDE Plasma and Wayland: the app renders the timer and settings UI, while the KWin bridge detects presentation windows and keeps the timer positioned above them.
- KDE Plasma floating countdown timer for Linux desktop presentations.
- Automatic WPS Presentation detection by window class and title prefix.
- Auto show and auto start when a matching slide show window appears.
- Always-on-top timer overlay for presentation windows.
- Draggable floating timer with remembered position.
- Custom window detection rules for WPS, LibreOffice, ONLYOFFICE, browser slides, or other presentation tools.
- Window picker powered by KDE/KWin APIs for quickly creating rules.
- Global shortcuts registered by the app through KDE GlobalAccel.
- Right-click timer menu for start/pause, reset, settings, and quit.
- Custom timer style: font, font size, text color, background color, transparency, and context menu theme.
KTimer is built for KDE users who need a practical presentation countdown timer instead of a generic stopwatch. When you start a WPS slide show, KTimer can detect the presentation window, place the timer in the slide area, and start counting down automatically.
It is useful for:
- WPS Presentation talks and lectures
- KDE Plasma presentation setups
- Linux conference slides
- Classroom timing
- Meeting timeboxing
- Any full-screen or windowed presentation where a visible timer is needed
KTimer has two parts:
ktimer-app: the standalone Qt/QML application that displays the floating timer, settings window, rule editor, shortcuts, and style controls.ktimer-bridgeKWin Script: watches KDE windows, detects matching presentation windows, reports window geometry to the app, and keeps the timer above the target window.
The default rule matches WPS Presentation slide shows:
- Window class:
wpp - Title prefix:
WPS Presentation Slide Show
Rules support:
- Exact match for window class
- Prefix match for window title
- Empty fields as wildcards
- Per-rule enable/disable
- KDE Plasma 6
- KWin
- Qt 6 / Qt Quick Controls 2
- LayerShellQt QML plugin
- KF6 GlobalAccel
- CMake and Ninja
kpackagetool6,kwriteconfig6, andqdbus
The project is primarily intended for KDE Plasma on Wayland.
./scripts/install.shThe installer will:
- Build
ktimer-app - Install the app to
~/.local/bin/ktimer-app - Install the desktop entry to
~/.local/share/applications/ktimer-app.desktop - Install and enable the
ktimer-bridgeKWin Script - Disable the older KWin Effect implementation if present
- Refresh the KDE application menu cache when possible
From the application launcher, search for:
KTimer
Or run:
gtk-launch ktimer-appOr directly:
~/.local/bin/ktimer-app --settingsThe desktop launcher opens the settings window. If KTimer is already running in the background, launching it again will show the existing settings window instead of starting a duplicate process.
- Install KTimer.
- Launch
KTimerfrom the KDE application launcher. - Open the Window Rules tab.
- Keep the default WPS rule enabled, or add rules for other presentation apps.
- Start a WPS slide show.
- KTimer detects the slide show window, displays the timer, and starts the countdown automatically.
- Left-drag the floating timer: move the timer position.
- Double-click the floating timer: start or pause.
- Right-click the floating timer: open the context menu.
- Settings -> Quit: exit the KTimer process.
The Window Rules tab controls which windows should trigger automatic timer display and countdown.
Default rule:
Name: WPS Presentation
Window class: wpp
Title prefix: WPS Presentation Slide Show
Enabled: true
You can:
- Enable or disable each rule.
- Double-click a rule to edit it.
- Add a new rule with the window picker.
- Use the current open window list to fill class and title fields.
- Restore the default WPS rule.
This makes KTimer adaptable for WPS, LibreOffice Impress, ONLYOFFICE, browser-based slides, and other presentation tools.
Default shortcuts:
| Action | Shortcut |
|---|---|
| Show / hide timer | Meta+Alt+T |
| Start / pause | Meta+Alt+Space |
| Reset timer | Meta+Alt+R |
| Add 1 minute | Meta+Alt+Up |
| Subtract 1 minute | Meta+Alt+Down |
| Toggle count mode | Meta+Alt+M |
Shortcuts can be changed in the KTimer settings window.
KTimer supports:
- Timer font family
- Font size
- Text color
- Background color
- Background opacity
- Leading zero display
- Dark or light context menu
The settings window follows the current KDE color theme.
./scripts/uninstall.shThe uninstall script disables the KWin bridge. If installed manually, remove the binary and desktop file if needed:
rm -f ~/.local/bin/ktimer-app
rm -f ~/.local/share/applications/ktimer-app.desktopKDE timer, KDE Plasma timer, Linux countdown timer, floating countdown timer, presentation timer, WPS Presentation timer, WPS slide show timer, KWin script timer, KDE Wayland timer, Linux presentation countdown.