<!DOCTYPE node PUBLIC '-//freedesktop//DTD D-BUS Object Introspection 1.0//EN'
  'http://www.freedesktop.org/standards/dbus/1.0/introspect.dtd'>
<node>
  <interface name='org.pwmt.zathura'>
    <!-- Open a document in a running zathura instance. -->
    <method name='OpenDocument'>
      <arg type='s' name='path' direction='in' />
      <arg type='s' name='password' direction='in' />
      <arg type='i' name='page' direction='in' />
      <arg type='b' name='return' direction='out' />
    </method>
    <!-- Close open document. -->
    <method name='CloseDocument'>
      <arg type='b' name='return' direction='out' />
    </method>
    <!-- Go to a specific page . -->
    <method name='GotoPage'>
      <arg type='u' name='page' direction='in' />
      <arg type='b' name='return' direction='out' />
    </method>
    <!-- Go to a page and highlight rectangles there. -->
    <method name='HighlightRects'>
      <arg type='u' name='page' direction='in' />
      <arg type='a(dddd)' name='rectangles' direction='in' />
      <arg type='a(udddd)' name='secondary_rectangles' direction='in' />
      <arg type='b' name='return' direction='out' />
    </method>
    <property type='s' name='filename' access='read' />
    <property type='u' name='pagenumber' access='read' />
    <property type='u' name='numberofpages' access='read' />
    <property type='s' name='documentinfo' access='read' />
    <!-- Open editor with given input file at line and column. -->
    <signal name='Edit'>
      <arg type='s' name='input' direction='out' />
      <arg type='u' name='line' direction='out' />
      <arg type='u' name='column' direction='out' />
    </signal>
    <!--
      Go to a page and highlight rectangles there based on the information
      SyncTeX provides for the given input file, line and column.
    -->
    <method name='SynctexView'>
      <arg type='s' name='input' direction='in' />
      <arg type='u' name='line' direction='in' />
      <arg type='u' name='column' direction='in' />
      <arg type='b' name='return' direction='out' />
    </method>
    <!-- Execute a command as if entered in the inputbar. -->
    <method name='ExecuteCommand'>
      <arg type='s' name='input' direction='in' />
      <arg type='b' name='return' direction='out' />
    </method>
    <!-- Reload configuration file -->
    <method name='SourceConfig'>
      <arg type='b' name='return' direction='out' />
    </method>
    <!-- Reload configuration file from a directory -->
    <method name='SourceConfigFromDirectory'>
      <arg type='s' name='directory' direction='in' />
      <arg type='b' name='return' direction='out' />
    </method>
  </interface>
</node>
