We remove hscrollbar-policy=never. This can only work if the view is adaptive. This has to be restored once the page is adaptive.
282 lines
14 KiB
XML
282 lines
14 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<interface>
|
|
<requires lib="gtk" version="4.0"/>
|
|
<requires lib="libhandy" version="0.0"/>
|
|
<template class="CEPageWireguard" parent="GtkBox">
|
|
<child>
|
|
<object class="GtkScrolledWindow">
|
|
<property name="propagate-natural-height">True</property>
|
|
<property name="propagate-natural-width">True</property>
|
|
<child>
|
|
<object class="GtkViewport">
|
|
<child>
|
|
<object class="GtkGrid" id="main_box">
|
|
<property name="margin-start">24</property>
|
|
<property name="margin-end">24</property>
|
|
<property name="margin-top">24</property>
|
|
<property name="margin-bottom">24</property>
|
|
<property name="orientation">vertical</property>
|
|
<property name="row-spacing">6</property>
|
|
<property name="column-spacing">6</property>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="label" translatable="yes">_Connection Name</property>
|
|
<property name="use-underline">True</property>
|
|
<property name="halign">end</property>
|
|
<property name="mnemonic-widget">entry_conname</property>
|
|
<layout>
|
|
<property name="column">0</property>
|
|
<property name="row">0</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="entry_conname">
|
|
<signal name="changed" handler="ce_page_changed" object="CEPageWireguard" swapped="yes"/>
|
|
<layout>
|
|
<property name="column">1</property>
|
|
<property name="row">0</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="halign">end</property>
|
|
<property name="hexpand">0</property>
|
|
<property name="label" translatable="yes">_Interface Name</property>
|
|
<property name="use-underline">1</property>
|
|
<property name="mnemonic-widget">entry_ifname</property>
|
|
<layout>
|
|
<property name="column">0</property>
|
|
<property name="row">1</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="entry_ifname">
|
|
<property name="tooltip-text" translatable="yes">The name of the wireguard interface to create.</property>
|
|
<property name="hexpand">1</property>
|
|
<signal name="changed" handler="ce_page_changed" object="CEPageWireguard" swapped="yes"/>
|
|
<layout>
|
|
<property name="column">1</property>
|
|
<property name="row">1</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="halign">end</property>
|
|
<property name="label" translatable="yes">_Private Key</property>
|
|
<property name="use-underline">1</property>
|
|
<property name="mnemonic-widget">entry_private_key</property>
|
|
<layout>
|
|
<property name="column">0</property>
|
|
<property name="row">2</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkEntry" id="entry_private_key">
|
|
<property name="tooltip-text" translatable="yes">The 256 bit private key in base64 encoding</property>
|
|
<property name="visibility">0</property>
|
|
<property name="invisible-char">●</property>
|
|
<property name="truncate-multiline">1</property>
|
|
<property name="secondary-icon-name">dialog-password</property>
|
|
<property name="secondary-icon-tooltip-text" translatable="yes">Show/hide private key</property>
|
|
<signal name="changed" handler="ce_page_changed" object="CEPageWireguard" swapped="yes"/>
|
|
<layout>
|
|
<property name="column">1</property>
|
|
<property name="row">2</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="halign">end</property>
|
|
<property name="hexpand">0</property>
|
|
<property name="label" translatable="yes">_Listen Port</property>
|
|
<property name="use-underline">1</property>
|
|
<property name="mnemonic-widget">spin_listen_port</property>
|
|
<layout>
|
|
<property name="column">0</property>
|
|
<property name="row">3</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkSpinButton" id="spin_listen_port">
|
|
<property name="width-request">5</property>
|
|
<property name="tooltip-text" translatable="yes">A port to listen on. If set to 'automatic', the port will be chosen randomly when the interface comes up.</property>
|
|
<property name="text" translatable="yes">0</property>
|
|
<property name="adjustment">
|
|
<object class="GtkAdjustment">
|
|
<property name="upper">65535</property>
|
|
<property name="value">51820</property>
|
|
<property name="step-increment">1</property>
|
|
<property name="page-increment">1000</property>
|
|
</object>
|
|
</property>
|
|
<property name="climb-rate">1</property>
|
|
<signal name="changed" handler="ce_page_changed" object="CEPageWireguard" swapped="yes"/>
|
|
<layout>
|
|
<property name="column">1</property>
|
|
<property name="row">3</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="halign">end</property>
|
|
<property name="hexpand">0</property>
|
|
<property name="label" translatable="yes">_fwmark</property>
|
|
<property name="use-underline">1</property>
|
|
<property name="mnemonic-widget">spin_fwmark</property>
|
|
<layout>
|
|
<property name="column">0</property>
|
|
<property name="row">4</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkSpinButton" id="spin_fwmark">
|
|
<property name="width-request">10</property>
|
|
<property name="tooltip-text" translatable="yes">A 32-bit fwmark for outgoing packets. Leave it to 'off' to disable fwmark.</property>
|
|
<property name="text" translatable="yes">0</property>
|
|
<property name="adjustment">
|
|
<object class="GtkAdjustment">
|
|
<property name="upper">4294967295</property>
|
|
<property name="step-increment">1</property>
|
|
<property name="page-increment">10</property>
|
|
</object>
|
|
</property>
|
|
<property name="climb-rate">1</property>
|
|
<signal name="changed" handler="ce_page_changed" object="CEPageWireguard" swapped="yes"/>
|
|
<layout>
|
|
<property name="column">1</property>
|
|
<property name="row">4</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="halign">end</property>
|
|
<property name="hexpand">0</property>
|
|
<property name="label" translatable="yes">_MTU</property>
|
|
<property name="use-underline">1</property>
|
|
<property name="mnemonic-widget">spin_mtu</property>
|
|
<layout>
|
|
<property name="column">0</property>
|
|
<property name="row">5</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkSpinButton" id="spin_mtu">
|
|
<property name="width-request">15</property>
|
|
<property name="adjustment">
|
|
<object class="GtkAdjustment">
|
|
<property name="upper">65536</property>
|
|
<property name="step-increment">1</property>
|
|
<property name="page-increment">10</property>
|
|
</object>
|
|
</property>
|
|
<property name="climb-rate">1</property>
|
|
<signal name="changed" handler="ce_page_changed" object="CEPageWireguard" swapped="yes"/>
|
|
<layout>
|
|
<property name="column">1</property>
|
|
<property name="row">5</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="halign">start</property>
|
|
<property name="label" translatable="yes">bytes</property>
|
|
<property name="justify">fill</property>
|
|
<layout>
|
|
<property name="column">2</property>
|
|
<property name="row">5</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkCheckButton" id="checkbutton_peer_routes">
|
|
<property name="label" translatable="yes">_Add peer routes</property>
|
|
<property name="halign">start</property>
|
|
<property name="use-underline">1</property>
|
|
<signal name="toggled" handler="ce_page_changed" object="CEPageWireguard" swapped="yes"/>
|
|
<layout>
|
|
<property name="column">1</property>
|
|
<property name="row">6</property>
|
|
</layout>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="orientation">vertical</property>
|
|
<property name="spacing">6</property>
|
|
<layout>
|
|
<property name="row">7</property>
|
|
<property name="column">0</property>
|
|
<property name="column-span">3</property>
|
|
</layout>
|
|
<child>
|
|
<object class="GtkBox">
|
|
<property name="margin-top">12</property>
|
|
<child>
|
|
<object class="GtkLabel">
|
|
<property name="hexpand">1</property>
|
|
<property name="label" translatable="yes">_Peers</property>
|
|
<property name="use-underline">1</property>
|
|
<property name="xalign">0</property>
|
|
<attributes>
|
|
<attribute name="weight" value="bold"></attribute>
|
|
</attributes>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkButton" id="button_add_peer">
|
|
<property name="receives-default">1</property>
|
|
<property name="icon-name">list-add-symbolic</property>
|
|
<accessibility>
|
|
<property name="label" translatable="yes">Add WireGuard peer</property>
|
|
</accessibility>
|
|
<style>
|
|
<class name="flat" />
|
|
</style>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
<child>
|
|
<object class="GtkFrame">
|
|
<child>
|
|
<object class="GtkBox" id="peers_box">
|
|
<property name="orientation">vertical</property>
|
|
<child>
|
|
<object class="GtkListBox" id="empty_listbox">
|
|
<property name="selection-mode">none</property>
|
|
<style>
|
|
<class name="boxed-list" />
|
|
</style>
|
|
<child>
|
|
<object class="AdwActionRow">
|
|
<property name="title" translatable="yes">No peers set up</property>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</object>
|
|
</child>
|
|
</template>
|
|
</interface>
|