def METHOD_NAME(self):
    # Wrap the TextView in a ScrolledWindow in order to show a
    # vertical scroll bar when necessary.
    self.native = Gtk.ScrolledWindow()
    self.native.set_policy(Gtk.PolicyType.NEVER, Gtk.PolicyType.AUTOMATIC)
    self.buffer = Gtk.TextBuffer()
    self.buffer.connect("changed", self.gtk_on_changed)
    # The GTK TextView doesn't have an implementation of placeholder. We
    # fake it by using a different buffer that contains placeholder text.
    # This buffer is installed by default, until the value for the widget
    # becomes something non-empty. The placeholder buffer is also swapped
    # out when focus is gained, or a key press event occurs. The latter
    # is needed because the value can be changed programmatically when
    # the widget already has focus.
    self.placeholder = Gtk.TextBuffer()
    self.tag_placeholder = self.placeholder.create_tag(
        "placeholder", foreground="gray"
    )
    self.native_textview = Gtk.TextView()
    self.native_textview.set_name(f"toga-{self.interface.id}-textview")
    self.native_textview.get_style_context().add_class("toga")
    self.native_textview.set_buffer(self.placeholder)
    self.native_textview.set_wrap_mode(Gtk.WrapMode.WORD_CHAR)
    self.native_textview.connect("focus-in-event", self.gtk_on_focus_in)
    self.native_textview.connect("focus-out-event", self.gtk_on_focus_out)
    self.native_textview.connect("key-press-event", self.gtk_on_key_press)
    self.native.add(self.native_textview)