Skip to content

Latest commit

 

History

History
131 lines (83 loc) · 3.82 KB

README.md

File metadata and controls

131 lines (83 loc) · 3.82 KB

Electget


electget

Electron tools for creating Windows widgets that are fixed to desktop. This package provides features for widget creation of your Electron application.

  • [Windows, macOS] Prevent BrowserWindow from being hidden in ShowDesktop.
  • [Windows] Prevent BrowserWindow from being minimized.
  • [Windows] Prevent BrowserWindow from being hidden in AeroPeek.
  • [Windows] Prevent changes in the BrowserWindow order.
  • [Windows] Move BrowserWindow to the bottom of the windows.

Install

This package uses ffi-napi, so you must meet the ffi-napi requirements before installation.

npm i electget

Usage

Electget is available in the Electron main process.

import electget from 'electget';

function createWindow() {
  const win = new BrowserWindow({
    title: 'Electget Test',
    height: 600,
    width: 800,
  });

  loadWindow(win);

  // [Windows] Prevent BrowserWindow from being hidden in AeroPeek.
  electget.preventFromAeroPeek(win);

  // [Windows, macOS] Prevent BrowserWindow from being hidden in ShowDesktop.
  electget.preventFromShowDesktop(win);

  // [Windows] Prevent changes in the BrowserWindow order.
  electget.preventChangeZOrder(win);

  // [Windows] Move BrowserWindow to the bottom of the windows
  electget.moveToBottom(win);

  return win;
}

Methods

[Windows] alwaysOnBottom(browserWindow)

  • win BrowserWindow - Target BrowserWindow object.

BrowserWindow is fixed to the bottom without being minimized. Apply moveToBottom, preventChangeZOrder, preventFromShowDesktop at once.

[Windows] cancelAlwaysOnBottom(browserWindow)

  • win BrowserWindow - Target BrowserWindow object.

Cancel of alwaysOnBottom method.

[Windows] preventFromAeroPeek(win)

  • win Buffer|BrowserWindow - Target BrowserWindow object or Buffer returned by getNativeWindowHandle.

Prevent BrowserWindow from being hidden in AeroPeek.

[Windows, macOS] preventFromShowDesktop(win)

  • win Buffer|BrowserWindow - Target BrowserWindow object or Buffer returned by getNativeWindowHandle.

Prevent BrowserWindow from being hidden in ShowDesktop and minimized.

[Windows, macOS] cancelPreventFromShowDesktop(win)

  • win Buffer|BrowserWindow - Target BrowserWindow object or Buffer returned by getNativeWindowHandle.

Cancel of preventFromShowDesktop method.

[Windows] preventChangeZOrder(browserWindow)

  • win BrowserWindow - Target BrowserWindow object.

Returns function - Cancel of preventChangeZOrder method.

Prevent changes in the BrowserWindow order.

[Windows] cancelPreventChangeZOrder(browserWindow)

  • win BrowserWindow - Target BrowserWindow object.

Returns function - Cancel of preventChangeZOrder method.

Cancel of preventChangeZOrder method.

[Windows] moveToBottom(win)

  • win Buffer|BrowserWindow - Target BrowserWindow object or Buffer returned by getNativeWindowHandle.

Move BrowserWindow to the bottom of the windows.

Guidelines for Using Webpack

Because Webpack bundles the source code, the following error occurs when Webpack is used for the main process: Error: No native build was found ...

You can install the webpack-node-externals package and remove the node package from the bundle with the Webpack externals setting as follows:

// webpack.config.js
const nodeExternals = require('webpack-node-externals');
module.exports = {
  ...
  externals: [nodeExternals()],
  ...
}

Roadmap

  • Method failure check.
  • Add MacOS support.
  • Add test code.