A GtkWindow can be one of these types. Most things you'd consider a "window" should have type Gtk::WINDOW_TOPLEVEL; windows with this type are managed by the window manager and have a frame by default (call set_decorated() to toggle the frame).

Windows with type Gtk::WINDOW_POPUP are ignored by the window manager; window manager keybindings won't work on them, the window manager won't decorate the window with a frame, many GTK+ features that rely on the window manager will not work (e.g. resize grips and maximization/minimization). Gtk::WINDOW_POPUP is used to implement widgets such as GtkMenu or tooltips that you normally don't think of as windows per se.

Nearly all windows should be Gtk::WINDOW_TOPLEVEL. In particular, do not use Gtk::WINDOW_POPUP just to turn off the window borders; use set_decorated() for that.


Symbolic name


  0Gtk::WINDOW_TOPLEVEL A regular window, such as a dialog.
  1Gtk::WINDOW_POPUP A special window such as a tooltip.