Not all parts of GLFW are supported on every platform that GLFW runs on. Some things, such as window icons, are not supported on MacOS. A new PR I created, adds support for application icons, but an implementation only exists for MacOS at the moment. For Wayland, several parts of GLFW are unavailable.
In order to determine if the current platform supports some functionality, the platform must first be queried with glfwGetPlatform
, and then this result must be checked against a hard-coded set of rules, which were written specific to the GLFW documentation some time in the past.
I am wondering if perhaps GLFW should provide a means of acquiring the status of some given functionality, such as with a function called glfwPlatformSupportsAPI
, glfwGetAPIAvailability
or glfwGetAvailabilityStatus
. Return values can be these sets of values:
-
GLFW_TRUE
,GLFW_FALSE
-
GLFW_FEATURE_SUPPORTED
,GLFW_FEATURE_UNIMPLEMENTED
,GLFW_FEATURE_UNAVAILABLE
I believe that including information about every platform, is too heavy. Only information for the current platform, or all supported platforms in the compiled library should be available. This functionality could be optionally enabled or disabled with a compilation flag.
Personally, I prefer creating issues on Github, but I assume this is the preferred location, as I am looking for a discussion at the moment, rather than a hard request for the feature.