Equo Chromium: Deeper Native Integration with Subscribe()
Esteban Daniel Gomez Lousa on April 28th 2026
A few months ago, we introduced the Subscribe API to make reacting to browser events in real time easier than ever. Now, we are taking it a step further. The Event Subscription API is expanding to give your application even deeper native control over your embedded browser. But what exactly do we mean by "native"? Instead of just relying on web-level JavaScript tricks, these new events hook directly into the underlying Chromium engine and the operating system. This gives you absolute, low-level control over system features such as file dialogs and the OS clipboard, all through the same unified Java interface that works across SWT, Swing, Windowless, and Standalone modes.
Interact with Files and Titles
Managing native file choosers and tracking dynamic document updates is now just a few lines of code away. Instead of wrestling with complex C++ CEF handlers or writing messy OS-specific wrappers, you can now seamlessly handle these native interactions in pure Java, saving hours of boilerplate and debugging. Whether you need to log user selections, detect cancelled dialogs, or react to single-page application title changes, the new listeners have you covered:
// Track when the browser requests a file chooser
browser.subscribe().onOpenFile(ev -> {
System.out.println("File dialog opened. Default path: " + ev.getDefaultPath());
});
// Detect when the user cancels the file selection
browser.subscribe().onCancelOpenFile(ev -> {
System.out.println("File selection cancelled by the user.");
});
// React to dynamic title changes via JavaScript or navigation
browser.subscribe().onTitleChanged(ev -> {
System.out.println("New title: " + ev.getTitle());
});
Seamless Clipboard Monitoring
Need to track what data flows in and out of your embedded browser? You can now intercept attempts to read from or write to the system clipboard at the engine level. This adds a powerful layer of awareness and security to your integration:
// Monitor text copied from the browser to the system
browser.subscribe().onClipboardWriteText(ev -> {
System.out.println("Text copied: " + ev.getText());
});
// Monitor text pasted or read by the browser
browser.subscribe().onClipboardReadText(ev -> {
System.out.println("Browser requested clipboard data: " + ev.getText());
});
Consistent, Yet Mode-Aware
Just like the original events, these new additions keep your integration code clean, readable, and portable across toolkits. Keep in mind that while Equo Chromium unifies the API, some behaviors depend on the underlying toolkit context. Specifically, onCancelOpenFile, onClipboardWriteText and onClipboardReadText are designed for our UI-bound toolkits and are not available in Standalone mode.
Bridging the Gap
These new features are all about giving developers the exact tools they need to bridge the gap between web content and desktop capabilities. By leveraging Equo Chromium to tap into Chromium's native hooks, you can build richer and more responsive Java applications without fighting complex configurations. Check out the Full Subscribe API Reference to explore these new events and take full control of your embedded browser behavior in your next project.
Take Control of Every Click
With Equo Chromium Subscribe(), your application becomes aware, adaptive, and responsive. It’s a smarter way to manage browser behavior, and it’s available today.
To learn more about how Equo Chromium can provide modern web integrations for your application, visit our GitHub repository or contact us to discuss a modernization prototype.