<?xml version="1.0" encoding="UTF-8"?> <ui version="4.0"> <class>otr_widget</class> <widget class="QFrame" name="otr_widget"> <property name="geometry"> <rect> <x>0</x> <y>0</y> <width>220</width> <height>320</height> </rect> </property> <property name="palette"> <palette> <active> <colorrole role="WindowText"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="Button"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> <colorrole role="Text"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="ButtonText"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="Base"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> <colorrole role="Window"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> </active> <inactive> <colorrole role="WindowText"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="Button"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> <colorrole role="Text"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="ButtonText"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="Base"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> <colorrole role="Window"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> </inactive> <disabled> <colorrole role="WindowText"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="Button"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> <colorrole role="Text"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="ButtonText"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>255</red> <green>255</green> <blue>255</blue> </color> </brush> </colorrole> <colorrole role="Base"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> <colorrole role="Window"> <brush brushstyle="SolidPattern"> <color alpha="255"> <red>68</red> <green>68</green> <blue>68</blue> </color> </brush> </colorrole> </disabled> </palette> </property> <property name="windowTitle"> <string>OTR</string> </property> <property name="styleSheet"> <string notr="true">QFrame, QLabel, QLineEdit, QPushButton, QToolButton { color: white; } #otr_widget { background-color: rgba(51, 51, 51, 230); background-color: #444444; border: 1px solid #222222; border-radius: 4px; } #verification_stack > QWidget { background-color: transparent; } #title { background-color: rgba(0, 0, 0, 100); border-bottom: 0px solid #222222; border-top-left-radius: 4px; border-top-right-radius: 4px; } #switch_button { background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 transparent, stop:0.7 transparent, stop:0.71 #aaaaaa, stop:1 #aaaaaa); background-origin: border; border: 1px solid #aaaaaa; border-radius: 1px; margin: 2px 4px 3px 3px; padding: 0px; } #switch_button:focus { background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 transparent, stop:0.7 transparent, stop:0.71 #0093dd, stop:1 #0093dd); border: 1px solid #0093dd; } #switch_button:hover { background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 transparent, stop:0.7 transparent, stop:0.71 #c0c0c0, stop:1 #c0c0c0); border: 1px solid #c0c0c0; } #switch_button:hover:focus { background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 transparent, stop:0.7 transparent, stop:0.71 #00aaff, stop:1 #00aaff); border: 1px solid #00aaff; } #switch_button:pressed { background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 #c0c0c0, stop:0.3 #c0c0c0, stop:0.31 transparent, stop:1 transparent); border: 1px solid #c0c0c0; } #switch_button:pressed:focus { background: qlineargradient(x1:0, y1:0, x2:1, y2:0, stop:0 #00aaff, stop:0.3 #00aaff, stop:0.31 transparent, stop:1 transparent); border: 1px solid #00aaff; } #close_button { background: qradialgradient(cx: 0.465, cy: 0.465, radius: 0.5, fx:0.5, fy:0.5, stop:0 transparent, stop:0.6 transparent, stop:0.7 #aaaaaa, stop:0.85 transparent, stop:1 transparent); background-origin: border; border: 0px; margin: 0px; padding: 0px; } #close_button:focus { background: qradialgradient(cx: 0.465, cy: 0.465, radius: 0.5, fx:0.5, fy:0.5, stop:0 transparent, stop:0.6 transparent, stop:0.7 #0093dd, stop:0.85 transparent, stop:1 transparent); } #close_button:hover { background: qradialgradient(cx: 0.465, cy: 0.465, radius: 0.5, fx:0.5, fy:0.5, stop:0 transparent, stop:0.6 transparent, stop:0.7 #dddddd, stop:0.85 transparent, stop:1 transparent); } #close_button:hover:focus { background: qradialgradient(cx: 0.465, cy: 0.465, radius: 0.5, fx:0.5, fy:0.5, stop:0 transparent, stop:0.6 transparent, stop:0.7 #00aaff, stop:0.85 transparent, stop:1 transparent); } #close_button:pressed { background: qradialgradient(cx: 0.465, cy: 0.465, radius: 0.5, fx:0.5, fy:0.5, stop:0 #808080, stop:0.6 #606060, stop:0.7 #dddddd, stop:0.85 transparent, stop:1 transparent); } #close_button:pressed:focus { background: qradialgradient(cx: 0.465, cy: 0.465, radius: 0.5, fx:0.5, fy:0.5, stop:0 #808080, stop:0.6 #606060, stop:0.7 #00aaff, stop:0.85 transparent, stop:1 transparent); } [role="value"] { background-color: rbga(0, 0, 0, 20); border: 1px solid #202020; border-radius: 2px; margin-bottom: 5px; padding: 1px; } [role="selectable-value"] { background-color: rbga(0, 0, 0, 20); border: 1px solid #202020; border-radius: 2px; margin-bottom: 5px; padding: 0px 0px; selection-background-color: #0066aa; } [role="editable-value"] { background-color: rgba(0, 0, 0, 40); border: 2px solid #202020; border-radius: 4px; margin-bottom: 5px; padding: 0px 0px; selection-background-color: #0066aa; } [role="fingerprint"] { background-color: rbga(0, 0, 0, 20); border: 1px solid #202020; border-radius: 2px; margin-bottom: 5px; padding: 3px 1px 1px 1px; font-family: "Lucida Console", mono; } [role="note"] { color: #aaaaaa; } [role="action-button"] { background: transparent; background-origin: border; border: 2px solid #808080; border-radius: 4px; margin: 0px; padding: 0px; } [role="action-button"]:focus { border: 2px solid #0080c0; border: 2px solid #0093dd; } [role="action-button"]:hover { border: 2px solid #c0c0c0; } [role="action-button"]:hover:focus { border: 2px solid #00aaff; } [role="action-button"]:pressed { background: qradialgradient(cx: 0.5, cy: 0.5, radius: 1, fx:0.5, fy:0.5, stop:0 #909090, stop:1 transparent); } [role="action-button"]:disabled { border: 2px solid #555555; color: #808080; } </string> </property> <layout class="QVBoxLayout" name="otr_layout"> <property name="spacing"> <number>0</number> </property> <property name="sizeConstraint"> <enum>QLayout::SetMinimumSize</enum> </property> <property name="leftMargin"> <number>0</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>0</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item> <widget class="QFrame" name="title"> <layout class="QHBoxLayout" name="title_layout"> <property name="spacing"> <number>2</number> </property> <property name="leftMargin"> <number>0</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>0</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item> <widget class="QLabel" name="title_label"> <property name="text"> <string>OTR Encryption</string> </property> <property name="alignment"> <set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set> </property> <property name="indent"> <number>3</number> </property> </widget> </item> <item> <widget class="QToolButton" name="switch_button"> <property name="minimumSize"> <size> <width>19</width> <height>19</height> </size> </property> <property name="maximumSize"> <size> <width>19</width> <height>19</height> </size> </property> <property name="text"> <string/> </property> <property name="autoRaise"> <bool>true</bool> </property> </widget> </item> <item> <widget class="QToolButton" name="close_button"> <property name="text"> <string/> </property> <property name="icon"> <iconset> <normaloff>icons/cross-white.svg</normaloff>icons/cross-white.svg</iconset> </property> <property name="iconSize"> <size> <width>16</width> <height>16</height> </size> </property> <property name="autoRaise"> <bool>true</bool> </property> </widget> </item> </layout> </widget> </item> <item> <widget class="QFrame" name="body"> <layout class="QVBoxLayout" name="body_layout"> <property name="spacing"> <number>6</number> </property> <property name="leftMargin"> <number>4</number> </property> <property name="topMargin"> <number>9</number> </property> <property name="rightMargin"> <number>4</number> </property> <property name="bottomMargin"> <number>4</number> </property> <item> <widget class="QLabel" name="peer_name_title"> <property name="font"> <font> <weight>75</weight> <bold>true</bold> </font> </property> <property name="text"> <string>Peer Device Name</string> </property> <property name="alignment"> <set>Qt::AlignCenter</set> </property> </widget> </item> <item> <widget class="QLineEdit" name="peer_name_value"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Preferred"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="role" stdset="0"> <string notr="true">editable-value</string> </property> </widget> </item> <item> <widget class="SlidingStackedWidget" name="verification_stack"> <property name="sizePolicy"> <sizepolicy hsizetype="Preferred" vsizetype="Expanding"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="currentIndex"> <number>1</number> </property> <widget class="QFrame" name="fingerprint_panel"> <layout class="QVBoxLayout" name="fingerprint_layout"> <property name="spacing"> <number>6</number> </property> <property name="leftMargin"> <number>0</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>0</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item> <widget class="QLabel" name="my_fingerprint_title"> <property name="font"> <font> <weight>75</weight> <bold>true</bold> </font> </property> <property name="text"> <string>My fingerprint</string> </property> <property name="alignment"> <set>Qt::AlignCenter</set> </property> </widget> </item> <item> <widget class="QLabel" name="my_fingerprint_value"> <property name="text"> <string>C54E 0DD0 178F 2596 C3C9<br/>AE0E 4AD5 F8AC DD05 F7F7</string> </property> <property name="alignment"> <set>Qt::AlignCenter</set> </property> <property name="wordWrap"> <bool>true</bool> </property> <property name="role" stdset="0"> <string notr="true">fingerprint</string> </property> </widget> </item> <item> <widget class="QLabel" name="peer_fingerprint_title"> <property name="font"> <font> <weight>75</weight> <bold>true</bold> </font> </property> <property name="text"> <string>Peer fingerprint</string> </property> <property name="alignment"> <set>Qt::AlignCenter</set> </property> </widget> </item> <item> <widget class="QLabel" name="peer_fingerprint_value"> <property name="styleSheet"> <string notr="true">QLabel { color: hsv(20, 85%, 100%); }</string> </property> <property name="text"> <string><span>C54E 0DD0 178F 2596 C3C9<br/>AE0E 4AD5 F8AC DD05 F7F7</span></string> </property> <property name="alignment"> <set>Qt::AlignCenter</set> </property> <property name="wordWrap"> <bool>true</bool> </property> <property name="role" stdset="0"> <string notr="true">fingerprint</string> </property> </widget> </item> <item> <widget class="QLabel" name="fingerprint_note"> <property name="sizePolicy"> <sizepolicy hsizetype="Preferred" vsizetype="Expanding"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="font"> <font> <pointsize>8</pointsize> </font> </property> <property name="text"> <string>Verify the peer fingerprint by reading it over a voice call. If it matches, the peer can be validated as trusted (only needs to be done once).</string> </property> <property name="alignment"> <set>Qt::AlignJustify|Qt::AlignTop</set> </property> <property name="wordWrap"> <bool>true</bool> </property> <property name="role" stdset="0"> <string notr="true">note</string> </property> </widget> </item> </layout> </widget> <widget class="QFrame" name="smp_panel"> <layout class="QVBoxLayout" name="smp_layout"> <property name="spacing"> <number>6</number> </property> <property name="leftMargin"> <number>0</number> </property> <property name="topMargin"> <number>0</number> </property> <property name="rightMargin"> <number>0</number> </property> <property name="bottomMargin"> <number>0</number> </property> <item> <widget class="QLabel" name="smp_status_title"> <property name="font"> <font> <weight>75</weight> <bold>true</bold> </font> </property> <property name="text"> <string>SMP Verification</string> </property> <property name="alignment"> <set>Qt::AlignCenter</set> </property> </widget> </item> <item> <widget class="QLabel" name="smp_status_value"> <property name="text"> <string><span style="color: hsv(20, 85%, 100%);">Failed</span></string> </property> <property name="role" stdset="0"> <string notr="true">value</string> </property> </widget> </item> <item> <widget class="QLabel" name="smp_note"> <property name="sizePolicy"> <sizepolicy hsizetype="Preferred" vsizetype="Expanding"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="font"> <font> <pointsize>8</pointsize> </font> </property> <property name="text"> <string>The peer's identity is verified using SMP with the ZRTP authentication string as the shared secret. If the verification is successful, the peer can be validated as trusted (only needs to be done once). Audio with verified ZRTP is needed for the SMP verification to be available.</string> </property> <property name="alignment"> <set>Qt::AlignJustify|Qt::AlignTop</set> </property> <property name="wordWrap"> <bool>true</bool> </property> <property name="role" stdset="0"> <string notr="true">note</string> </property> </widget> </item> </layout> </widget> </widget> </item> <item> <widget class="QToolButton" name="validate_button"> <property name="sizePolicy"> <sizepolicy hsizetype="Expanding" vsizetype="Fixed"> <horstretch>0</horstretch> <verstretch>0</verstretch> </sizepolicy> </property> <property name="text"> <string>Validate</string> </property> <property name="checkable"> <bool>true</bool> </property> <property name="autoRaise"> <bool>true</bool> </property> <property name="role" stdset="0"> <string notr="true">action-button</string> </property> </widget> </item> </layout> </widget> </item> </layout> </widget> <customwidgets> <customwidget> <class>SlidingStackedWidget</class> <extends>QStackedWidget</extends> <header>blink.widgets.containers</header> <container>1</container> </customwidget> </customwidgets> <tabstops> <tabstop>peer_name_value</tabstop> <tabstop>validate_button</tabstop> <tabstop>close_button</tabstop> <tabstop>switch_button</tabstop> </tabstops> <resources/> <connections/> </ui>