FixBrowser

Forum: General Discussion: Use FLTK for GUI

featureRequest
2024/12/25 12:55
FLTK is better then GTK on linux.
Since version 1.4 FLTK supports HighDPI displays and Wayland https://www.fltk.org/articles.php?L1947
fr
2024/12/25 13:01
GTK3/4 and Qt6 are bloatware!
Alex
2024/12/25 13:20
Exactly, they are total overkill for a lightweight web browser, especially if you want to support retro devices.

Why not just support Dillo instead? :)
fr
2024/12/25 17:09
C89 bindings for FLTK https://github.com/MoAlyousef/cfltk
jezek2
2025/01/21 12:45
FixBrowser actually uses it's own GUI library (FixGUI). It is a necessity because many things (like forms, custom widgets, etc.) can't be done in a good way with a native GUI library (esp. in a cross-platform way). More common things like main menu, popup menus and other stuff is using native widgets. FixGUI supports both native and custom widgets and any mix of them.

GTK is used mostly for rendering into a canvas and was chosen for the best availability (it's basically always present and tends to be the default toolkit), binary compatibility and easy integration with other languages.

Supporting more GUI libraries is not the goal because it would increase both the maintenance costs and the size of the binaries. I will try to support Qt at some point in the future to allow seamless integration with KDE, but it might not be possible due to general C++ binary incompatibility.
jezek2
2025/01/21 12:57
A major reason for not wanting to contribute to Dillo/NetSurf is that these browsers are written in C/C++ languages. I don't think it's a good idea to write software that interacts with potentially malicious websites on a daily basis in a memory unsafe language.

Sure, FixBrowser while written in a safe language relies on an implementation of the language written in C. But that's different because if there is some security problem it can be solved at once for every usage of it. No complex logic is written in C, just the necessary stuff.

However having a browser written in C and using a very lightweight GUI toolkit is also a valid use case, that's why we have different projects with different tradeoffs for different needs.


Reply

Name:
Content:
Confirmation code:
 
  (type the letters shown in the picture)
 

The website was designed for modern browsers and IE4+.