Add local storage domain settings.
[PrivacyBrowserPC.git] / src / uis / DomainSettingsDialog.ui
1 <?xml version="1.0" encoding="UTF-8"?>
2
3 <!--
4   Copyright © 2022 Soren Stoutner <soren@stoutner.com>.
5
6   This file is part of Privacy Browser PC <https://www.stoutner.com/privacy-browser-android>.
7
8   Privacy Browser PC is free software: you can redistribute it and/or modify
9   it under the terms of the GNU General Public License as published by
10   the Free Software Foundation, either version 3 of the License, or
11   (at your option) any later version.
12
13   Privacy Browser PC is distributed in the hope that it will be useful,
14   but WITHOUT ANY WARRANTY; without even the implied warranty of
15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
16   GNU General Public License for more details.
17
18   You should have received a copy of the GNU General Public License
19   along with Privacy Browser PC.  If not, see <http://www.gnu.org/licenses/>. -->
20
21 <ui version="4.0">
22     <class>DomainSettingsDialog</class>
23
24     <widget class="QWidget">
25         <property name="geometry">
26             <rect>
27                 <x>0</x>
28                 <y>0</y>
29                 <height>1000</height>
30                 <width>1500</width>
31             </rect>
32         </property>
33
34         <!-- Main layout. -->
35         <layout class="QHBoxLayout">
36             <item>
37                 <layout class="QVBoxLayout">
38                     <!-- Domains list view. -->
39                     <item>
40                         <widget class="QListView" name="domainsListView"/>
41                     </item>
42
43                     <!-- Domain buttons. -->
44                     <item>
45                         <layout class="QHBoxLayout">
46                             <!-- Add domain button. -->
47                             <item>
48                                 <widget class="QPushButton" name="addDomainButton">
49                                     <property name="text">
50                                         <string>Add domain</string>
51                                     </property>
52
53                                     <property name="icon">
54                                         <iconset theme="list-add" />
55                                     </property>
56                                 </widget>
57                             </item>
58
59                             <!-- Delete domain button. -->
60                             <item>
61                                 <widget class="QPushButton" name="deleteDomainButton">
62                                     <property name="text">
63                                         <string>Delete domain</string>
64                                     </property>
65
66                                     <property name="icon">
67                                         <iconset theme="list-remove" />
68                                     </property>
69                                 </widget>
70                             </item>
71
72                             <!-- Spacer. -->
73                             <item>
74                                 <spacer>
75                                     <property name="orientation">
76                                         <enum>Qt::Horizontal</enum>
77                                     </property>
78                                 </spacer>
79                             </item>
80                         </layout>
81                     </item>
82                 </layout>
83             </item>
84
85             <item>
86                 <layout class="QVBoxLayout">
87                     <item>
88                         <widget class="QWidget" name="domainSettingsWidget">
89                             <!-- Domain settings form layout. -->
90                             <layout class="QFormLayout">
91                                 <!-- Domain name. -->
92                                 <item row="0" column="0">
93                                     <widget class="QLabel" name="domainNameLabel">
94                                         <property name="text">
95                                             <string>Domain name</string>
96                                         </property>
97
98                                         <property name="toolTip">
99                                             <string>*. may be prepended to a domain to include all subdomains (eg. *.stoutner.com).</string>
100                                         </property>
101                                     </widget>
102                                 </item>
103
104                                 <item row="0" column="1">
105                                     <widget class="KLineEdit" name="domainNameLineEdit" />
106                                 </item>
107
108                                 <!-- JavaScript. -->
109                                 <item row="1" column="0">
110                                     <widget class="QLabel">
111                                         <property name="text">
112                                             <string>JavaScript</string>
113                                         </property>
114
115                                         <property name="toolTip">
116                                             <string>JavaScript allows websites to run programs (scripts) on the device.</string>
117                                         </property>
118                                     </widget>
119                                 </item>
120
121                                 <item row="1" column="1">
122                                     <widget class="QComboBox" name="javaScriptComboBox">
123                                         <item>
124                                             <property name="text">
125                                                 <string>System default</string>
126                                             </property>
127                                         </item>
128
129                                         <item>
130                                             <property name="text">
131                                                 <string>JavaScript disabled</string>
132                                             </property>
133                                         </item>
134
135                                         <item>
136                                             <property name="text">
137                                                 <string>JavaScript enabled</string>
138                                             </property>
139                                         </item>
140                                     </widget>
141                                 </item>
142
143                                 <item row="2" column="1">
144                                     <widget class="QLabel" name="javaScriptLabel">
145                                         <property name="textFormat">
146                                             <enum>Qt::RichText</enum>
147                                         </property>
148                                     </widget>
149                                 </item>
150
151                                 <!-- Local storage. -->
152                                 <item row="3" column="0">
153                                     <widget class="QLabel">
154                                         <property name="text">
155                                             <string>Local storage</string>
156                                         </property>
157
158                                         <property name="toolTip">
159                                             <string>Local storage includes cookies, IndexedDB, DOM storage, filesystem API, and service workers.  DOM storage also requires a separate control to be enabled.  Local storage is disabled by default.</string>
160                                         </property>
161                                     </widget>
162                                 </item>
163
164                                 <item row="3" column="1">
165                                     <widget class="QComboBox" name="localStorageComboBox">
166                                         <item>
167                                             <property name="text">
168                                                 <string>System default</string>
169                                             </property>
170                                         </item>
171
172                                         <item>
173                                             <property name="text">
174                                                 <string>Local storage disabled</string>
175                                             </property>
176                                         </item>
177
178                                         <item>
179                                             <property name="text">
180                                                 <string>Local storage enabled</string>
181                                             </property>
182                                         </item>
183                                     </widget>
184                                 </item>
185
186                                 <item row="4" column="1">
187                                     <widget class="QLabel" name="localStorageLabel">
188                                         <property name="textFormat">
189                                             <enum>Qt::RichText</enum>
190                                         </property>
191                                     </widget>
192                                 </item>
193
194                                 <!-- DOM storage. -->
195                                 <item row="5" column="0">
196                                     <widget class="QLabel">
197                                         <property name="text">
198                                             <string>DOM storage</string>
199                                         </property>
200
201                                         <property name="toolTip">
202                                             <string>DOM storage, sometimes called web storage, is like cookies on steroids.  To function, it requires that both JavaScript and local storage be enabled.</string>
203                                         </property>
204                                     </widget>
205                                 </item>
206
207                                 <item row="5" column="1">
208                                     <widget class="QComboBox" name="domStorageComboBox">
209                                         <item>
210                                             <property name="text">
211                                                 <string>System default</string>
212                                             </property>
213                                         </item>
214
215                                         <item>
216                                             <property name="text">
217                                                 <string>DOM storage disabled</string>
218                                             </property>
219                                         </item>
220
221                                         <item>
222                                             <property name="text">
223                                                 <string>DOM storage enabled</string>
224                                             </property>
225                                         </item>
226                                     </widget>
227                                 </item>
228
229                                 <item row="6" column="1">
230                                     <widget class="QLabel" name="domStorageLabel">
231                                         <property name="textFormat">
232                                             <enum>Qt::RichText</enum>
233                                         </property>
234                                     </widget>
235                                 </item>
236
237                                 <!-- User agent. -->
238                                 <item row="7" column="0">
239                                     <widget class="QLabel">
240                                         <property name="text">
241                                             <string>User agent</string>
242                                         </property>
243
244                                         <property name="toolTip">
245                                             <string>The user agent identifies the browser to the web server.  It serves no useful purpose, but many web servers refuse to return the web page if they don't see a user agent they like.</string>
246                                         </property>
247                                     </widget>
248                                 </item>
249
250                                 <item row="7" column="1">
251                                     <widget class="QComboBox" name="userAgentComboBox">
252                                         <property name="sizePolicy">
253                                             <sizepolicy hsizetype="Expanding" vsizetype="Fixed">
254                                                 <horstretch>0</horstretch>
255                                                 <verstretch>0</verstretch>
256                                             </sizepolicy>
257                                         </property>
258
259                                         <property name="editable">
260                                             <bool>true</bool>
261                                         </property>
262
263                                         <item>
264                                             <property name="text">
265                                                 <string>System default</string>
266                                             </property>
267                                         </item>
268
269                                         <item>
270                                             <property name="text">
271                                                 <string>Privacy Browser</string>
272                                             </property>
273                                         </item>
274
275                                         <item>
276                                             <property name="text">
277                                                 <string>WebEngine default</string>
278                                             </property>
279                                         </item>
280
281                                         <item>
282                                             <property name="text">
283                                                 <string>Firefox on Linux</string>
284                                             </property>
285                                         </item>
286
287                                         <item>
288                                             <property name="text">
289                                                 <string>Chromium on Linux</string>
290                                             </property>
291                                         </item>
292
293                                         <item>
294                                             <property name="text">
295                                                 <string>Firefox on Windows</string>
296                                             </property>
297                                         </item>
298
299                                         <item>
300                                             <property name="text">
301                                                 <string>Chrome on Windows</string>
302                                             </property>
303                                         </item>
304
305                                         <item>
306                                             <property name="text">
307                                                 <string>Edge on Windows</string>
308                                             </property>
309                                         </item>
310
311                                         <item>
312                                             <property name="text">
313                                                 <string>Safari on macOS</string>
314                                             </property>
315                                         </item>
316                                     </widget>
317                                 </item>
318
319                                 <item row="8" column="1">
320                                     <widget class="QLabel" name="userAgentLabel">
321                                         <property name="textFormat">
322                                             <enum>Qt::RichText</enum>
323                                         </property>
324                                     </widget>
325                                 </item>
326
327                                 <!-- Zoom factor. -->
328                                 <item row="9" column="0">
329                                     <widget class="QLabel">
330                                         <property name="text">
331                                             <string>Zoom factor</string>
332                                         </property>
333
334                                         <property name="toolTip">
335                                             <string>Valid values for the zoom factor are between 0.25 and 5.00.</string>
336                                         </property>
337                                     </widget>
338                                 </item>
339
340                                 <item row="9" column="1">
341                                     <widget class="QComboBox" name="zoomFactorComboBox">
342                                         <item>
343                                             <property name="text">
344                                                 <string>System default</string>
345                                             </property>
346                                         </item>
347
348                                         <item>
349                                             <property name="text">
350                                                 <string>Custom</string>
351                                             </property>
352                                         </item>
353                                     </widget>
354                                 </item>
355
356                                 <item row="10" column="1">
357                                     <widget class="QDoubleSpinBox" name="customZoomFactorSpinBox">
358                                         <property name="minimum">
359                                             <double>0.250000000000000</double>
360                                         </property>
361
362                                         <property name="maximum">
363                                             <double>5.000000000000000</double>
364                                         </property>
365
366                                         <property name="singleStep">
367                                             <double>0.250000000000000</double>
368                                         </property>
369                                     </widget>
370                                 </item>
371                             </layout>
372                         </widget>
373                     </item>
374
375                     <!-- Spacer. -->
376                     <item>
377                         <spacer>
378                             <property name="orientation">
379                                 <enum>Qt::Vertical</enum>
380                             </property>
381                         </spacer>
382                     </item>
383
384                     <!-- Dialog buttons. -->
385                     <item>
386                         <widget class="QDialogButtonBox" name="dialogButtonBox">
387                             <property name="standardButtons">
388                                 <set>QDialogButtonBox::Reset | QDialogButtonBox::Ok | QDialogButtonBox::Apply | QDialogButtonBox::Cancel</set>
389                             </property>
390                         </widget>
391                     </item>
392                 </layout>
393             </item>
394         </layout>
395     </widget>
396 </ui>