npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@deepkolos/electron-trackpad-utils

v1.0.8

Published

Trigger trackpad haptic feedback and get trackpad scroll began, scroll ended, and force click events in Electron on macOS.

Readme

electron-trackpad-utils-zh

English

在 Electron on macOS 中触发触控板触觉反馈,并获取触控板滚动开始、滚动结束和强制点击事件。

查看演示代码

安装

npm install @deepkolos/electron-trackpad-utils

API

onTrackpadScrollBegan(callback) (仅限 macOS)

  • callback Function

当用户开始在触控板上拖动触摸时触发。

onTrackpadScrollEnded(callback) (仅限 macOS)

  • callback Function

在滚动过程中触摸结束时触发。这可能与发送到浏览器的滚动事件结束的时间不同,例如在惯性滚动的情况下。

onScroll(callback) (仅限 macOS)

  • callback Function
    • deltaX Float
    • deltaY Float
    • isTrackpad Boolean

当用户滚动时触发。

onForceClick(callback) (仅限 macOS)

  • callback Function

triggerFeedback() (仅限 macOS)

在 MacBook 的内置触控板或妙控板上触发触觉反馈。例如,在拖动对象时对齐时触发反馈。

用法

在主进程中:

const { BrowserWindow } = require("electron");
const trackpadUtils = require("@deepkolos/electron-trackpad-utils");

trackpadUtils.onTrackpadScrollBegan(() => {
	console.log("onTrackpadScrollBegan");
});

trackpadUtils.onTrackpadScrollEnded(() => {
	console.log("onTrackpadScrollEnded");
});

trackpadUtils.onScroll(({ deltaX, deltaY, isTrackpad }) => {
  console.log('onScroll', { deltaX, deltaY, isTrackpad });
});

trackpadUtils.onForceClick(() => {
	console.log("onForceClick");
});

function createWindow() {
	const mainWindow = new BrowserWindow({
		height: 500,
		width: 800,
	});
	mainWindow.webContents.loadFile("index.html");
	setInterval(() => {
		trackpadUtils.triggerFeedback();
	}, 3000);
}

app.whenReady().then(() => createWindow());

在 electron-vite 中使用

如果你正在使用 electron-vite,你需要将 C/C++ 插件配置为外部模块。

import { defineConfig } from 'electron-vite'

export default defineConfig({
  main: {
    build: {
      rollupOptions: {
        external: ['@deepkolos/electron-trackpad-utils']
      }
    }
  }
})

如何运行演示

克隆此存储库后,运行:

npm install
npm rebuild
cd demo
npm install
npm start

许可证

MIT 许可证

原始仓库

davidcann/electron-trackpad-utils