import urwid.raw_display
import urwid
import sys
import os

ui = urwid.raw_display.Screen()

some_text_list = map(urwid.Text, ("this is some content of list".split()))

def run():
    inner_foot = urwid.Text("inner_foot")
    inner_head = urwid.Text("inner_head")
    listbox = urwid.ListBox(some_text_list)

    inner_frame = urwid.Frame(body=listbox, footer=inner_foot, header=inner_head)

    outer_foot = urwid.Text("outer_foot")
    outer_head = urwid.Text("outer_head")
    outer_frame = urwid.Frame(body=inner_frame, footer=outer_foot, header=outer_head)

    size = ui.get_cols_rows()
    canvas = outer_frame.render(size, focus=1)
    ui.draw_screen(size, canvas)

    while True:
        key = ui.get_input()
        if key:
#            outer_foot.set_text(outer_foot.text + outer_foot.text)
            inner_foot.set_text(inner_foot.text + inner_foot.text)

            size = ui.get_cols_rows()

            canvas = outer_frame.render(size, focus=1)
            ui.draw_screen(size, canvas)



ui.run_wrapper(run)
