class_docstr: The layout for a prompt_toolkit
  :class:`~prompt_toolkit.application.Application`.
  This also keeps track of which user control is focused.
  
  :param container: The "root" container for the layout.
  :param focused_element: element to be focused initially. (Can be anything
      the `focus` function accepts.)
class_docstr_tok: ["The","layout","for","a","prompt_toolkit",":","class",":","`","~prompt_toolkit.application.Application","`",".","This","also","keeps","track","of","which","user","control","is","focused",".",":","param","container",":","The","``","root","''","container","for","the","layout",".",":","param","focused_element",":","element","to","be","focused","initially",".","(","Can","be","anything","the","`","focus","`","function","accepts",".",")"]
docstr: Return a list of :class:`.Window` objects that are focusable.
docstr_tok: ["Return","a","list","of",":","class",":","`",".Window","`","objects","that","are","focusable","."]
code: def get_visible_focusable_windows(self) -> list[Window]:
      """
      Return a list of :class:`.Window` objects that are focusable.
      """
      # focusable windows are windows that are visible, but also part of the
      # modal container. Make sure to keep the ordering.
      visible_windows = self.visible_windows
      return [
          w
          for w in self.get_focusable_windows()
          if w in visible_windows
      ]
  
imports: from __future__ import annotations
  from typing import Generator, Iterable, Union
  from prompt_toolkit.buffer import Buffer
  from .containers import AnyContainer, ConditionalContainer, Container, Window, to_container
  from .controls import BufferControl, SearchBufferControl, UIControl
label_desc: Use image node_id 14 for calling the Layout obj's underlying member method code with example usage: obj.get_visible_focusable_windows() and returns: unknown