GDK_NATIVE_WINDOWS is an environment variable to influence GTK+'s window management layer GDK. GTK+ is a toolkit used by many applications1) to render their graphical interfaces.

GTK+ 2.18.0 introduced so called “client-side windows”, offering new possibilities for application developers. Some applications may have problems with this because they are mixing X and GDK calls. GDK_NATIVE_WINDOWS=1 simply makes sure that every GDK window gets its native X window, making problematic applications work better.

So if you have problems like not working buttons (nothing happens after a click etc.) when using a GTK+ application, there is a good chance to fix the issues by setting GDK_NATIVE_WINDOWS=1 until the application developers clean up their code and release a new version of the program.