I'm an old-school dinosaur, and I'd like to understand how drag and drop works on the X window system under Linux. Is it build into the X protocol? Is it a function of the window manager? Do applications have to be aware of drag and drop? Is it both the applications and the window manager?
I'm looking for a general technical understanding. If I have specific questions about how to modify an app to support drag and drop, I'll ask them over on Stackoverflow.