A peculiarity of the X Window System: windows all the way down

Every window system has windows, as an entity. Usually we think of these as being used for, well, windows and window like things; application windows, those extremely annoying pop-up modal dialogs that are always interrupting you at the wrong time, even perhaps things like pop-up menus. In its original state, X has more windows than that. Part of how and why it does this is that X allows windows to nest inside each other, in a window tree, which you can still see today with ‘xwininfo -root -tree‘.

One of the reasons that X has copious nested windows is that X was designed with a particular model of writing X programs in mind, and that model made everything into a (nested) window. Seriously, everything. In an old fashioned X application, windows are everywhere. Buttons are windows (or several windows if they’re radio buttons or the like), text areas are windows, menu entries are each a window of their own within the window that is the menu, visible containers of things are windows (with more windows nested inside them), and so on.

↫ Chris Siebenmann

This is wild.

18 Comments

  1. 2024-03-07 4:59 pm
    • 2024-03-07 5:24 pm
  2. 2024-03-07 6:29 pm
    • 2024-03-07 6:54 pm
      • 2024-03-14 12:49 pm
  3. 2024-03-08 11:10 am
    • 2024-03-08 11:22 am
      • 2024-03-08 12:58 pm
        • 2024-03-08 2:29 pm
          • 2024-03-08 2:34 pm
          • 2024-03-10 6:24 pm
          • 2024-03-11 9:51 pm
          • 2024-03-12 5:18 am
        • 2024-03-10 6:25 pm
          • 2024-03-10 6:50 pm
          • 2024-03-11 6:38 pm
          • 2024-03-11 7:31 pm
  4. 2024-03-12 6:50 am