Skip to content

sullevy/ktimer

Repository files navigation

KTimer

KDE Floating Countdown Timer for WPS Presentation and Linux Slide Shows

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.

中文说明

Key Features

  • 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.

Why KTimer

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

How It Works

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-bridge KWin 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

Requirements

  • KDE Plasma 6
  • KWin
  • Qt 6 / Qt Quick Controls 2
  • LayerShellQt QML plugin
  • KF6 GlobalAccel
  • CMake and Ninja
  • kpackagetool6, kwriteconfig6, and qdbus

The project is primarily intended for KDE Plasma on Wayland.

Install

./scripts/install.sh

The 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-bridge KWin Script
  • Disable the older KWin Effect implementation if present
  • Refresh the KDE application menu cache when possible

Launch

From the application launcher, search for:

KTimer

Or run:

gtk-launch ktimer-app

Or directly:

~/.local/bin/ktimer-app --settings

The 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.

Basic Usage

  1. Install KTimer.
  2. Launch KTimer from the KDE application launcher.
  3. Open the Window Rules tab.
  4. Keep the default WPS rule enabled, or add rules for other presentation apps.
  5. Start a WPS slide show.
  6. KTimer detects the slide show window, displays the timer, and starts the countdown automatically.

Timer Controls

  • 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.

Window Rules

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.

Global Shortcuts

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.

Style Options

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.

Uninstall

./scripts/uninstall.sh

The 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.desktop

Keywords

KDE 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.

About

KDE floating countdown timer for WPS Presentation with automatic slide show detection.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors