Skip to content

eframe problems you have to know(in 2026-01)

Published: at 06:15 AM

Before uses eframe to dev you own native/wasm application, you have to aware of these problems

As in 2026, uses AI to dev application is becoming much more simple, but not easy, as the AI won’t aware of the actual best practices, and the limit the the third-party libraries isn’t good documented and avalibale every where. So, I encounted some issues, and I want to share them here, so that you can avoid them when you want to use eframe to dev your own application.

Table of Contents

Open Table of Contents

Test Setup: kittest with egui_extra table

  1. Some egui components not support the egui_extra table inner element interations, so, you’d better got some proper state manage setup to test your application
  2. Kittest provides convient setup for the app, but which, you still have to mock some sys event handler using egui::RawInput to test some complex interactions, or uses Trait with Generic to mock the platform specific code.
  3. To setup the EGUI application, you could run on widget or run with full app, and in the full app, there is no convient way to control how the event goes, so, you may encounter issues about flaky tests, and many calls to the tokio::sleep and yield_now.

Clipboard

  1. arboard(3.6.1) not support web_sys, you have to create your own clipboard provider for wasm target.
  2. On Wayland, you can’t easily to detect Ctrl + V key press, see eframe (Wayland) reliable Ctrl+V paste for clipboard images for more details.
  3. On Wayland, different application provides different clipboard meta data for image, for example, dolphin(KDE) provides the url rather than image data.
  4. On Wayland, some file manager not providing image data or file url.

DND(Drag and Drop)

  1. Wayland DND is not support yet.
  2. Web support DND is ok, but you have to handle the file reading by futures(pull_promise), in which, is different from native platform.

CJK Font

To render CJK characters correctly, you have to add a CJK font to your application, see eframe configure CJK font to render CJK characters for more details.