Smooth Window Resize

approved

by binaricat

Keep long notes responsive while resizing the desktop window. - This plugin has not been manually reviewed by Obsidian staff.

186 downloadsUpdated 1mo agoMIT

Smooth Window Resize

Smooth Window Resize

Keep long Obsidian notes responsive while resizing the desktop window.

A tiny, focused plugin for smoother Reading view window resizing.
Your notes stay untouched. The expensive redraw simply waits until the window settles.

GitHub Release   Platform   License

Support on Ko-fi

English · 简体中文


Why this plugin exists

Obsidian is usually fast, but resizing its desktop window can become noticeably sluggish when a long note is open in Reading view. Every small movement of the window may ask the Reading view to recalculate a large document again, even though only the final size really matters.

The problem is easiest to notice with book chapters, research notes, and other long documents that contain many paragraphs, lists, or illustrations. Themes and community plugins can make the work heavier, but they are not always the root cause: the same slowdown can remain with the default theme and all other community plugins disabled.

Smooth Window Resize was created after tracing that behavior in a real 150 KB chapter. The goal is intentionally narrow: make resizing feel immediate without changing how notes look or how Obsidian works after the drag ends.

What it does

  • Keeps desktop window resizing responsive when a long Markdown note is open in Reading view.
  • Combines repeated intermediate Reading view updates into one final update after resizing settles.
  • Leaves Editing view and non-Markdown views unchanged.
  • Does not read, modify, index, or upload note content.
  • Has no settings, network requests, analytics, or telemetry.

Representative result

The following is a local measurement, not a universal benchmark. It used Obsidian 1.13.4 on macOS with a 150 KB note in Reading view and simulated 60 rapid window-size changes.

MeasurementWithout the pluginWith the plugin
Total resize sequence~6.5 seconds~1.0 second
Long UI stalls observedUp to ~470 msNone

Actual results depend on the note, computer, theme, and other installed plugins.

How it works

During a window drag, Obsidian can request many Reading view resize updates in quick succession. Running every update is wasteful because most intermediate window sizes are visible for only a few milliseconds.

Smooth Window Resize applies a short 120 ms settling window:

  1. Obsidian continues resizing the window normally.
  2. Repeated Reading view updates are combined while the drag is active.
  3. The original Reading view update runs once at the final window size.

The note remains visible during the drag. The plugin does not replace Obsidian's renderer; it only avoids repeating the same expensive work for sizes that are immediately superseded.

Design principles

  • Focused: solves one performance problem and adds no unrelated UI.
  • Non-destructive: never changes note files, metadata, or workspace layout.
  • Local-first: makes no network requests and stores no user data.
  • Reversible: disabling the plugin immediately restores Obsidian's original behavior.
  • Low overhead: does no vault scanning and remains idle outside Reading view resize handling.

Installation

Community plugins

Once listed in the Obsidian Community plugins directory:

  1. Open Settings → Community plugins.
  2. Search for Smooth Window Resize.
  3. Select Install, then Enable.

Manual installation

  1. Download main.js and manifest.json from the latest release.

  2. Create this folder inside your vault:

    <vault>/.obsidian/plugins/smooth-window-resize/
    
  3. Copy both downloaded files into that folder.

  4. Reload Obsidian and enable Smooth Window Resize under Community plugins.

Compatibility and limitations

  • Requires Obsidian 1.13.4 or later.
  • Desktop only; mobile devices do not resize application windows in the same way.
  • Only Reading view resize work is delayed. Editing view is deliberately untouched.
  • The plugin uses an internal Reading view resize callback because Obsidian does not currently expose this step through a dedicated public API. An Obsidian update may require a compatibility update.

If Reading view behaves unexpectedly after an Obsidian update, disable the plugin and open an issue.

Privacy and security

Smooth Window Resize:

  • makes no network requests;
  • collects no analytics or telemetry;
  • does not access files outside the vault;
  • does not read or modify note content;
  • does not install or update anything by itself.

The release build is produced from the public source repository, carries a GitHub build attestation, and is checked by the Obsidian Community review system.

Development

git clone https://github.com/binaricat/smooth-window-resize.git
cd smooth-window-resize
npm install
npm run build
npm run lint

Pull requests and reproducible performance reports are welcome.

Support the project

If this plugin makes Obsidian feel better on your machine, you can support continued maintenance on Ko-fi.

Support on Ko-fi

License

Smooth Window Resize is released under the MIT License.


Made with care by binaricat

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.