frang75 / nappgui_src

SDK for building cross-platform desktop apps in ANSI-C
https://www.nappgui.com
MIT License
442 stars 43 forks source link

Potential misinformation and false advertising #106

Closed ColleagueRiley closed 2 months ago

ColleagueRiley commented 2 months ago

On the site it says this library is "small without any external dependency". This is completely dishonest considering you use Gtk for Linux support. This is not only an external dependency, but it's also quite a big/bloated dependency too.

frang75 commented 2 months ago

GTK3 is not considered a third-party dependency since it is present "naturally" in practically all Linux distributions. In the same way, WinAPI or Cocoa are not considered third-party dependencies either.

However, NAppGUI tries to be honest with its users and includes a list of all the technologies it depends on. https://nappgui.com/en/start/start.html#h4

ColleagueRiley commented 2 months ago

GTK3 is not considered a third-party dependency since it is present "naturally" in practically all Linux distributions. In the same way, WinAPI or Cocoa are not considered third-party dependencies either.

However, NAppGUI tries to be honest with its users and includes a list of all the technologies it depends on. https://nappgui.com/en/start/start.html#h4

WinAPI are Cocoas are APIS which are apart of the OS. GTK is not. GTK is a toolkit libraries which uses the linux APIs. Using GTK is using a library which is doing exactly what your library is doing and more. Except GTK is very bloated too and poorly designed. It does not come by default with linux unless the user has a GTK program installed.

I don't think you're being purposefully dishonest, but you're at least being ignorant.

ColleagueRiley commented 2 months ago

GTK also supports windows and MacOS why don't you use GTK for those if you're going to use it for one part of your library anyway?

turbo commented 2 months ago

GTK is considered a native UI tech for Linux by other GUI platforms as well, e.g. Eto. It's very standard to assume it as the primary native GUI renderer on Linux.

you're at least being ignorant

You can express disagreements without implying another's ignorance or dishonesty. Let's keep our community welcoming and productive. Thank you.

ColleagueRiley commented 2 months ago

It is simply not the native GUI renderer for linux and anyone who claims it is is wrong. I don't know what you mean by "the standard native GUI renderer" considering many apps and libraries do not use GTK.

I would suggest you look into software such as xlib and glx or wayland api. Those are native renderers.

GTK is not even designed as a renderer, as the documentation for this library even notes, it is a high level toolkit. This library is also trying to be a high level toolkit. Why would a library trying to be a toll kit use anotehr toolkit? Why would I not just use GTK instead of using another toolkit that just wraps around GTK?

Do you understand what I mean? It's not the native renderer, it's just a very common GUI toolkit.