<feed xmlns='http://www.w3.org/2005/Atom'>
<title>xavi/kristall/src, branch query-dialog</title>
<subtitle>A Gemini client written in C++/Qt.
</subtitle>
<id>https://gitea.privatedns.org/xavi/kristall/atom?h=query-dialog</id>
<link rel='self' href='https://gitea.privatedns.org/xavi/kristall/atom?h=query-dialog'/>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/'/>
<updated>2023-10-10T18:47:18+00:00</updated>
<entry>
<title>Replace QInputDialog with custom dialog for queries</title>
<updated>2023-10-10T18:47:18+00:00</updated>
<author>
<name>Xavier Del Campo Romero</name>
<email>xavi.dcr@tutanota.com</email>
</author>
<published>2023-10-10T13:39:33+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=7a7d9dc216ecf0bf7200666b479fb08c0edec834'/>
<id>urn:sha1:7a7d9dc216ecf0bf7200666b479fb08c0edec834</id>
<content type='text'>
Recent commits allowed multi-line input while reusing the QInputDialog
object already defined by Kristall. However, QInputDialog lacks a way to
access its QPlainTextEdit directly, and therefore set the wrap mode.

Since QInputDialog does no wrapping, it is inconvenient for writing a
long text (think of social media sites such as BBS or Station).
Therefore, a custom QDialog-derived class, namely QueryDialog, has been
provided.
</content>
</entry>
<entry>
<title>settingsdialog.ui: Move "Generic" widgets to QScrollArea</title>
<updated>2023-09-29T12:23:09+00:00</updated>
<author>
<name>Xavier Del Campo Romero</name>
<email>xavi.dcr@tutanota.com</email>
</author>
<published>2023-08-01T08:54:11+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=317bdbad5be96ff55ac882e3ae909bf97d36bf23'/>
<id>urn:sha1:317bdbad5be96ff55ac882e3ae909bf97d36bf23</id>
<content type='text'>
This would allow smaller screens (think of mobile devices such as the
PinePhone or Librem 5) to be able to fit the settings dialog, and
therefore use it.
</content>
</entry>
<entry>
<title>browsertab.cpp: Use multi-line input when required</title>
<updated>2023-09-29T12:22:22+00:00</updated>
<author>
<name>Xavier Del Campo Romero</name>
<email>xavi.dcr@tutanota.com</email>
</author>
<published>2023-08-05T00:33:02+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=505723e9dfda51f1cc496b0c3556ab0ec349ed8d'/>
<id>urn:sha1:505723e9dfda51f1cc496b0c3556ab0ec349ed8d</id>
<content type='text'>
Some Gemini sites such as Station or BBS allow multi-line posts.
</content>
</entry>
<entry>
<title>Use startsWith() instead of left(4)</title>
<updated>2023-08-30T06:43:16+00:00</updated>
<author>
<name>Michael Steenbeek</name>
<email>m.o.steenbeek@gmail.com</email>
</author>
<published>2023-08-29T15:53:37+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=3709c3d6bd90fdb42d4ff56b244b9f6ee8124569'/>
<id>urn:sha1:3709c3d6bd90fdb42d4ff56b244b9f6ee8124569</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Support URLs in Gophermaps</title>
<updated>2023-08-30T06:43:16+00:00</updated>
<author>
<name>Michael Steenbeek</name>
<email>m.o.steenbeek@gmail.com</email>
</author>
<published>2023-08-27T14:34:22+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=10a9c4ccfac85c08b4682fcef24091569cb13f63'/>
<id>urn:sha1:10a9c4ccfac85c08b4682fcef24091569cb13f63</id>
<content type='text'>
Paths in Gophermaps that start with “URL:” should be interpreted as direct
URLs, rather than references to files or directories on the Gopher server
itself.

An excerpt from the standard document:
```

Links to URLs from a gopher directory shall be defined as follows:

 Type -- the appropriate character corresponding to the type of the
 document on the remote end; h if HTML.

 Path -- the full URL, preceeded by "URL:".  For instance:
         URL:http://www.complete.org/

 Host, Port -- pointing back to the gopher server that provided
 the directory for compatibility reasons.

 Name -- as usual for a Gopher directory entry.

```
Source: gopher://quux.org/0/Archives/Mailing Lists/gopher/gopher.2002-02?/MBOX-MESSAGE/34

An example of this in the wild can be seen at gopher://gopher.floodgap.com ,
at the bottom of the page.

Note that above link carries a fallback for clients that do not support it,
as described by the Bucktooth server software:
```
[...]  most people will want to add web links to their
gophers anyway. In 0.1-pr4 and up, this is supported in a protocol independent
fashion; simply specify any URL and an 'h' item type, like so:

hYour Web Link&lt;TAB&gt;URL:http://www.floodgap.com/

Note that the URL must be preceded by a literal "URL:" and that the itemtype
is h. Smart clients will automatically take the URL portion and use it, but
even if they do not, Bucktooth will generate an HTML page with a Refresh:
header and forward them on automatically.
```

Other clients supporting this standard include the OverbiteWX extension.
(Most likely, there will be others, but I haven’t tested them all.)
</content>
</entry>
<entry>
<title>Update settingsdialog.cpp</title>
<updated>2023-07-08T08:12:12+00:00</updated>
<author>
<name>Acidus</name>
<email>acidus99@users.noreply.github.com</email>
</author>
<published>2023-07-07T21:58:46+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=659a1448146f4599755fd0b059b25567fa7d60f5'/>
<id>urn:sha1:659a1448146f4599755fd0b059b25567fa7d60f5</id>
<content type='text'>
</content>
</entry>
<entry>
<title>update with active search engines</title>
<updated>2023-07-08T08:12:12+00:00</updated>
<author>
<name>Acidus</name>
<email>acidus99@users.noreply.github.com</email>
</author>
<published>2023-07-07T21:55:56+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=efdc99fe32600dff7aa449b54dd2727de87211f9'/>
<id>urn:sha1:efdc99fe32600dff7aa449b54dd2727de87211f9</id>
<content type='text'>
adding Kennedy and TLGS as search engines</content>
</entry>
<entry>
<title>Focus browsing area after page is loaded</title>
<updated>2023-04-06T18:55:47+00:00</updated>
<author>
<name>Tomas Åkesson</name>
<email>tomas@entropic.se</email>
</author>
<published>2023-04-04T17:23:59+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=c65edbc4dd821bc712edd22467b9d9c04a4c99f8'/>
<id>urn:sha1:c65edbc4dd821bc712edd22467b9d9c04a4c99f8</id>
<content type='text'>
This change allows the user to start scrolling with the keyboard instantly,
without having to focus the browsing area first, after a page has loaded.

This happens for example when opening a new tab, and when entering an
address manually.
</content>
</entry>
<entry>
<title>Allow middle-click to open new tab when text is selected</title>
<updated>2023-04-06T18:55:37+00:00</updated>
<author>
<name>Tomas Åkesson</name>
<email>tomas@entropic.se</email>
</author>
<published>2023-04-04T19:45:28+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=d47e3d3f54aa66b37f8a1bb45150b8510c95c343'/>
<id>urn:sha1:d47e3d3f54aa66b37f8a1bb45150b8510c95c343</id>
<content type='text'>
If text is selected, middle-click will not be forwarded to the function
that opens the link in a new tab. So this change will deselect any
selected text before trying to open a new tab.

Fixes #253
</content>
</entry>
<entry>
<title>Fix crash when encountering incomplete ANSI codes</title>
<updated>2023-04-02T16:15:30+00:00</updated>
<author>
<name>Tomas Åkesson</name>
<email>tomas@entropic.se</email>
</author>
<published>2023-04-02T12:50:38+00:00</published>
<link rel='alternate' type='text/html' href='https://gitea.privatedns.org/xavi/kristall/commit/?id=d937a0c32e418414c7e9911927a1518ac586b9d4'/>
<id>urn:sha1:d937a0c32e418414c7e9911927a1518ac586b9d4</id>
<content type='text'>
Add bounds checking before increasing iterator pointer, to prevent
incomplete ANSI codes causing iterators going to far.
</content>
</entry>
</feed>
