Compare commits
6 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5f0cddffd0 | ||
|
|
6fdf335412 | ||
|
|
3db0a374e6 | ||
|
|
aa6d317321 | ||
|
|
37702a2527 | ||
|
|
ccb19516bb |
@@ -43,9 +43,6 @@ Code highlighting | Chatting with models | Managing models
|
||||
|
||||
## Ollama session tips
|
||||
|
||||
### Migrate Ollama session to Alpaca's integrated session
|
||||
For now Alpaca doesn't offer a way to do this from the GUI but it's really simple, when you are using Ollama it creates a folder in the home directory called `.ollama`, you just need to move that folder to `~/.var/app/com.jeffser.Alpaca/data/`
|
||||
|
||||
### Change the port of the integrated Ollama instance
|
||||
Go to `~/.var/app/com.jeffser.Alpaca/config/server.json` and change the `"local_port"` value, by default it is `11435`.
|
||||
|
||||
|
||||
@@ -71,6 +71,44 @@
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "python3-pypdf",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
"pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"pypdf\" --no-build-isolation"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/c9/d1/450b19bbdbb2c802f554312c62ce2a2c0d8744fe14735bc70ad2803578c7/pypdf-4.2.0-py3-none-any.whl",
|
||||
"sha256": "dc035581664e0ad717e3492acebc1a5fc23dba759e788e3d4a9fc9b1a32e72c1"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "python3-python-docx",
|
||||
"buildsystem": "simple",
|
||||
"build-commands": [
|
||||
"pip3 install --verbose --exists-action=i --no-index --find-links=\"file://${PWD}\" --prefix=${FLATPAK_DEST} \"python-docx\" --no-build-isolation"
|
||||
],
|
||||
"sources": [
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/63/f7/ffbb6d2eb67b80a45b8a0834baa5557a14a5ffce0979439e7cd7f0c4055b/lxml-5.2.2.tar.gz",
|
||||
"sha256": "bb2dc4898180bea79863d5487e5f9c7c34297414bad54bcd0f0852aee9cfdb87"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/3e/3d/330d9efbdb816d3f60bf2ad92f05e1708e4a1b9abe80461ac3444c83f749/python_docx-1.1.2-py3-none-any.whl",
|
||||
"sha256": "08c20d6058916fb19853fcf080f7f42b6270d89eac9fa5f8c15f691c0017fabe"
|
||||
},
|
||||
{
|
||||
"type": "file",
|
||||
"url": "https://files.pythonhosted.org/packages/26/9f/ad63fc0248c5379346306f8668cda6e2e2e9c95e01216d2b8ffd9ff037d0/typing_extensions-4.12.2-py3-none-any.whl",
|
||||
"sha256": "04e5ca0351e0f3f85c6853954072df659d0d13fac324d0072316b67d7794700d"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "ollama",
|
||||
"buildsystem": "simple",
|
||||
|
||||
@@ -64,6 +64,17 @@
|
||||
<url type="homepage">https://github.com/Jeffser/Alpaca</url>
|
||||
<url type="donation">https://github.com/sponsors/Jeffser</url>
|
||||
<releases>
|
||||
<release version="0.9.6" date="2024-06-21">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.9.6</url>
|
||||
<description>
|
||||
<p>Big Update</p>
|
||||
<ul>
|
||||
<li>Added compatibility for PDF</li>
|
||||
<li>Added compatibility for DOCX</li>
|
||||
<li>Merged 'file attachment' menu into one button</li>
|
||||
</ul>
|
||||
</description>
|
||||
</release>
|
||||
<release version="0.9.5" date="2024-06-04">
|
||||
<url type="details">https://github.com/Jeffser/Alpaca/releases/tag/0.9.5</url>
|
||||
<description>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
project('Alpaca', 'c',
|
||||
version: '0.9.5',
|
||||
version: '0.9.6',
|
||||
meson_version: '>= 0.62.0',
|
||||
default_options: [ 'warning_level=2', 'werror=false', ],
|
||||
)
|
||||
|
||||
485
po/alpaca.pot
485
po/alpaca.pot
File diff suppressed because it is too large
Load Diff
12
po/es.po~
12
po/es.po~
@@ -7,7 +7,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-04 20:08-0600\n"
|
||||
"POT-Creation-Date: 2024-06-04 20:09-0600\n"
|
||||
"PO-Revision-Date: 2024-05-19 19:44-0600\n"
|
||||
"Last-Translator: Jeffry Samuel Eduarte Rojas <jeffrysamuer@gmail.com>\n"
|
||||
"Language-Team: Spanish <es@tp.org.es>\n"
|
||||
@@ -107,6 +107,16 @@ msgstr "Gestionando modelos"
|
||||
msgid "Quick Fix"
|
||||
msgstr "Arreglo rápido"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:71
|
||||
msgid ""
|
||||
"There were some errors when transitioning from the old version of chats to "
|
||||
"the new version. I apologize if this caused any corruption in your chat "
|
||||
"history. This should be the only time such a transition is needed."
|
||||
msgstr ""
|
||||
"Hubieron unos errores mientras los chats transicionaban a la nueva versión. "
|
||||
"Pido disculpas si eso causo alguna corrupción en to historial de chats. "
|
||||
"Esta debería de ser la única vez que una transición es necesaria"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:229
|
||||
#, fuzzy
|
||||
|
||||
72
po/fr.po~
72
po/fr.po~
@@ -6,21 +6,22 @@
|
||||
# to chat discuter
|
||||
# a chat une discussion
|
||||
# template template
|
||||
#
|
||||
# Louis Chauvet-Villaret <louischauvet0@gmail.com>, 2024.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: 0.8.7\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-04 20:08-0600\n"
|
||||
"PO-Revision-Date: 2024-06-02 12:54+0200\n"
|
||||
"POT-Creation-Date: 2024-06-04 20:09-0600\n"
|
||||
"PO-Revision-Date: 2024-06-05 11:06+0200\n"
|
||||
"Last-Translator: Louis Chauvet-Villaret <louischauvet0@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"Language-Team: French\n"
|
||||
"Language: fr\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Generator: Poedit 3.4.4\n"
|
||||
"X-Generator: Gtranslator 46.1\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
|
||||
#: data/com.jeffser.Alpaca.desktop.in:3
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:7
|
||||
@@ -64,7 +65,7 @@ msgstr "Reconnaissance d'image (modèles compatibles)"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:18
|
||||
msgid "Plain text documents recognition"
|
||||
msgstr ""
|
||||
msgstr "Reconnaissance de documents en texte brut"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:19
|
||||
msgid "Import and export chats"
|
||||
@@ -105,27 +106,36 @@ msgstr "Gestion des modèles"
|
||||
msgid "Quick Fix"
|
||||
msgstr "Petite correction de bogues"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:71
|
||||
msgid ""
|
||||
"There were some errors when transitioning from the old version of chats to "
|
||||
"the new version. I apologize if this caused any corruption in your chat "
|
||||
"history. This should be the only time such a transition is needed."
|
||||
msgstr ""
|
||||
"Résolu : il y avait quelques erreurs lors de la transition de l'ancienne "
|
||||
"version des discussions vers la nouvelle. Nous nous excusons si cela a "
|
||||
"corrompu votre historique de discussion. Cela devrait être la seule fois "
|
||||
"qu'une telle modification ait lieu."
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:229
|
||||
msgid "Huge Update"
|
||||
msgstr "Mise à jour majeure"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:79
|
||||
#, fuzzy
|
||||
msgid "Added: Support for plain text files"
|
||||
msgstr "Ajouté : support de la personnalisation et création de modèles"
|
||||
msgstr "Ajouté : support des documents de type texte brut"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:80
|
||||
msgid "Added: New backend system for storing messages"
|
||||
msgstr ""
|
||||
msgstr "Ajouté : nouveau système en arrière-plan de sauvegarde des messages"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:81
|
||||
#, fuzzy
|
||||
msgid "Added: Support for changing Ollama's overrides"
|
||||
msgstr "Ajouté : support de la personnalisation et création de modèles"
|
||||
msgstr "Ajouté : support pour changer les paramètres d'Ollama"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:82
|
||||
#, fuzzy
|
||||
msgid "General Optimization"
|
||||
msgstr "Optimisation générale"
|
||||
|
||||
@@ -147,8 +157,8 @@ msgstr "Ajouté : support de la personnalisation et création de modèles"
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:93
|
||||
msgid "Fixed: Icons don't appear on non Gnome systems"
|
||||
msgstr ""
|
||||
"Résolu : certains icônes n'apparaissait pas sur les systèmes ne fonctionnant "
|
||||
"pas avec le bureau Gnome"
|
||||
"Résolu : certaines icônes n'apparaissait pas sur les systèmes ne "
|
||||
"fonctionnant pas avec le bureau Gnome"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:94
|
||||
msgid "Update Ollama to v0.1.39"
|
||||
@@ -717,9 +727,8 @@ msgstr ""
|
||||
"réinitialisée"
|
||||
|
||||
#: src/window.py:124
|
||||
#, fuzzy
|
||||
msgid "Image recognition is only available on specific models"
|
||||
msgstr "Reconnaissance d'image (modèles compatibles)"
|
||||
msgstr "La reconnaissance d'image est seulement disponible sur certains modèles"
|
||||
|
||||
#: src/window.py:127
|
||||
msgid "Please select a model before chatting"
|
||||
@@ -742,9 +751,8 @@ msgid "Code copied to the clipboard"
|
||||
msgstr "Code copié dans le presse-papier"
|
||||
|
||||
#: src/window.py:132
|
||||
#, fuzzy
|
||||
msgid "Message copied to the clipboard"
|
||||
msgstr "Code copié dans le presse-papier"
|
||||
msgstr "Message copié dans le presse-papier"
|
||||
|
||||
#: src/window.py:135
|
||||
msgid "Model deleted successfully"
|
||||
@@ -776,7 +784,7 @@ msgstr "Téléchargement en arrière-plan..."
|
||||
|
||||
#: src/window.py:788
|
||||
msgid "Task Complete"
|
||||
msgstr "Tache terminée"
|
||||
msgstr "Tâche terminée"
|
||||
|
||||
#: src/window.py:788
|
||||
msgid "Model '{}' pulled successfully."
|
||||
@@ -809,10 +817,9 @@ msgstr "Menu"
|
||||
|
||||
#: src/window.ui:197
|
||||
msgid "Attach file"
|
||||
msgstr ""
|
||||
msgstr "Ajouter un fichier"
|
||||
|
||||
#: src/window.ui:243
|
||||
#, fuzzy
|
||||
msgid "Send message"
|
||||
msgstr "Envoyer le message"
|
||||
|
||||
@@ -854,7 +861,7 @@ msgstr "Exécution en arrière-plan"
|
||||
|
||||
#: src/window.ui:329
|
||||
msgid "Model"
|
||||
msgstr ""
|
||||
msgstr "Modèle"
|
||||
|
||||
#: src/window.ui:333
|
||||
msgid "Model Tweaks"
|
||||
@@ -903,20 +910,23 @@ msgstr ""
|
||||
"temps demandé en minutes. (défaut : 5)"
|
||||
|
||||
#: src/window.ui:387
|
||||
#, fuzzy
|
||||
msgid "Ollama Instance"
|
||||
msgstr "Ollama pré-intégré"
|
||||
msgstr "Instance d'Ollama"
|
||||
|
||||
# What is override ???
|
||||
#: src/window.ui:391
|
||||
#, fuzzy
|
||||
msgid "Ollama Overrides"
|
||||
msgstr "Site web d'Ollama"
|
||||
msgstr "Paramètres d'Ollama"
|
||||
|
||||
#: src/window.ui:392
|
||||
msgid ""
|
||||
"Manage the arguments used on Ollama, any changes on this page only applies "
|
||||
"to the integrated instance, the instance will restart if you make changes"
|
||||
msgstr ""
|
||||
"Gérer les arguments utilisés par Ollama. Tous les changements sur cette page "
|
||||
"s'appliquent seulement à l'instance intégré. L'instance va redémarrer si "
|
||||
"vous effectuez des changements."
|
||||
|
||||
#: src/window.ui:472
|
||||
msgid "Create"
|
||||
@@ -947,7 +957,7 @@ msgid ""
|
||||
"Some models require a specific template. Please visit the model's website "
|
||||
"for more information if you're unsure."
|
||||
msgstr ""
|
||||
"Certain modèle requiert un template spécifique. Merci de visiter le site du "
|
||||
"Certains modèles requièrent un format spécifique. Merci de visiter le site du "
|
||||
"modèle pour plus d'information."
|
||||
|
||||
#: src/window.ui:700
|
||||
@@ -974,8 +984,8 @@ msgid ""
|
||||
msgstr ""
|
||||
"Alpaca et ses développeurs ne sont pas responsables des dommages causés à "
|
||||
"votre appareil ou vos logiciels suite à l'exécution de code généré par un "
|
||||
"modèle. Merci de faire attention et de relire attentivement le code avant de "
|
||||
"l'exécuter."
|
||||
"modèle. Merci de faire attention et de relire attentivement le code avant "
|
||||
"de l'exécuter."
|
||||
|
||||
#: src/window.ui:775
|
||||
msgid "Featured Models"
|
||||
@@ -1029,15 +1039,15 @@ msgstr "Importer une discussion"
|
||||
|
||||
#: src/window.ui:897
|
||||
msgid "From existing model"
|
||||
msgstr ""
|
||||
msgstr "Depuis un modèle existant"
|
||||
|
||||
#: src/window.ui:901
|
||||
msgid "From GGUF file (Testing)"
|
||||
msgstr ""
|
||||
msgstr "Depuis un fichier GGUF (Instable)"
|
||||
|
||||
#: src/window.ui:909
|
||||
msgid "Plain text file"
|
||||
msgstr ""
|
||||
msgstr "Fichier texte brut"
|
||||
|
||||
#: src/window.ui:913
|
||||
msgid "Image"
|
||||
@@ -1079,7 +1089,7 @@ msgstr "Envoyer le message"
|
||||
#~ msgstr "Charger une image"
|
||||
|
||||
#~ msgid "Only available on selected models"
|
||||
#~ msgstr "Non-disponible sur ce modèle"
|
||||
#~ msgstr "Disponible uniquement sur certains modèles"
|
||||
|
||||
#~ msgid "Advanced Model Settings"
|
||||
#~ msgstr "Paramètres avancés"
|
||||
|
||||
546
po/pt_BR.po
546
po/pt_BR.po
File diff suppressed because it is too large
Load Diff
@@ -3,7 +3,7 @@ msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: PACKAGE VERSION\n"
|
||||
"Report-Msgid-Bugs-To: \n"
|
||||
"POT-Creation-Date: 2024-06-04 20:08-0600\n"
|
||||
"POT-Creation-Date: 2024-06-04 20:09-0600\n"
|
||||
"PO-Revision-Date: 2024-05-23 23:29-0600\n"
|
||||
"Last-Translator: Daimar Stein <daimarstein@pm.me>\n"
|
||||
"Language-Team: \n"
|
||||
@@ -103,6 +103,13 @@ msgstr "Gerenciando modelos"
|
||||
msgid "Quick Fix"
|
||||
msgstr "Consertos Rápidos"
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:71
|
||||
msgid ""
|
||||
"There were some errors when transitioning from the old version of chats to "
|
||||
"the new version. I apologize if this caused any corruption in your chat "
|
||||
"history. This should be the only time such a transition is needed."
|
||||
msgstr ""
|
||||
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:77
|
||||
#: data/com.jeffser.Alpaca.metainfo.xml.in:229
|
||||
#, fuzzy
|
||||
|
||||
@@ -270,15 +270,24 @@ def create_model_from_file(self):
|
||||
|
||||
# FILE CHOOSER | WORKS
|
||||
|
||||
def attach_file_response(self, file_dialog, result, file_type):
|
||||
def attach_file_response(self, file_dialog, result):
|
||||
file_types = {
|
||||
"plain_text": ["txt", "md", "html", "css", "js", "py", "java", "json", "xml"],
|
||||
"image": ["png", "jpeg", "jpg", "webp", "gif"],
|
||||
"pdf": ["pdf"],
|
||||
"docx": ["docx"]
|
||||
}
|
||||
try: file = file_dialog.open_finish(result)
|
||||
except: return
|
||||
self.attach_file(file.get_path(), file_type)
|
||||
|
||||
|
||||
def attach_file(self, filter, file_type):
|
||||
extension = file.get_path().split(".")[-1]
|
||||
file_type = next(key for key, value in file_types.items() if extension in value)
|
||||
if not file_type: return
|
||||
if file_type == 'image' and not self.verify_if_image_can_be_used():
|
||||
self.show_toast('error', 8, self.main_overlay)
|
||||
return
|
||||
self.attach_file(file.get_path(), file_type)
|
||||
|
||||
|
||||
def attach_file(self, filter):
|
||||
file_dialog = Gtk.FileDialog(default_filter=filter)
|
||||
file_dialog.open(self, None, lambda file_dialog, result, file_type=file_type: attach_file_response(self, file_dialog, result, file_type))
|
||||
file_dialog.open(self, None, lambda file_dialog, result: attach_file_response(self, file_dialog, result))
|
||||
|
||||
@@ -47,7 +47,7 @@ class AlpacaApplication(Adw.Application):
|
||||
application_name='Alpaca',
|
||||
application_icon='com.jeffser.Alpaca',
|
||||
developer_name='Jeffry Samuel Eduarte Rojas',
|
||||
version='0.9.5',
|
||||
version='0.9.6',
|
||||
developers=['Jeffser https://jeffser.com'],
|
||||
designers=['Jeffser https://jeffser.com'],
|
||||
translator_credits='Alex K (Russian) https://github.com/alexkdeveloper\nJeffser (Spanish) https://jeffser.com\nDaimar Stein (Brazilian Portuguese) https://github.com/not-a-dev-stein\nLouis Chauvet-Villaret (French) https://github.com/loulou64490',
|
||||
|
||||
@@ -21,10 +21,11 @@ import gi
|
||||
gi.require_version('GtkSource', '5')
|
||||
gi.require_version('GdkPixbuf', '2.0')
|
||||
from gi.repository import Adw, Gtk, Gdk, GLib, GtkSource, Gio, GdkPixbuf
|
||||
import json, requests, threading, os, re, base64, sys, gettext, locale, webbrowser, subprocess, uuid, shutil, tarfile, tempfile
|
||||
import json, requests, threading, os, re, base64, sys, gettext, locale, webbrowser, subprocess, uuid, shutil, tarfile, tempfile, docx
|
||||
from time import sleep
|
||||
from io import BytesIO
|
||||
from PIL import Image
|
||||
from pypdf import PdfReader
|
||||
from datetime import datetime
|
||||
from .available_models import available_models
|
||||
from . import dialogs, local_instance, connection_handler, update_history
|
||||
@@ -90,10 +91,10 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
chats_menu_button = Gtk.Template.Child()
|
||||
attachment_container = Gtk.Template.Child()
|
||||
attachment_box = Gtk.Template.Child()
|
||||
file_filter_image = Gtk.Template.Child()
|
||||
file_filter_tar = Gtk.Template.Child()
|
||||
file_filter_gguf = Gtk.Template.Child()
|
||||
file_filter_text = Gtk.Template.Child()
|
||||
file_filter_attachments = Gtk.Template.Child()
|
||||
attachment_button = Gtk.Template.Child()
|
||||
model_drop_down = Gtk.Template.Child()
|
||||
model_string_list = Gtk.Template.Child()
|
||||
|
||||
@@ -1129,6 +1130,20 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
elif file_type == 'plain_text':
|
||||
with open(file_path, 'r') as f:
|
||||
return f.read()
|
||||
elif file_type == 'pdf':
|
||||
reader = PdfReader(file_path)
|
||||
if len(reader.pages) == 0: return None
|
||||
text = ""
|
||||
for i, page in enumerate(reader.pages):
|
||||
text += f"\n- Page {i}\n{page.extract_text()}\n"
|
||||
return text
|
||||
elif file_type == 'docx':
|
||||
document = docx.Document(file_path)
|
||||
if len(document.paragraphs) == 0: return None
|
||||
text = ""
|
||||
for paragraph in document.paragraphs:
|
||||
text += f"{paragraph.text}\n"
|
||||
return text
|
||||
|
||||
def remove_attached_file(self, button):
|
||||
del self.attachments[button.get_name()]
|
||||
@@ -1143,7 +1158,12 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
|
||||
button_content = Adw.ButtonContent(
|
||||
label=shown_name,
|
||||
icon_name={"image": "image-x-generic-symbolic", "plain_text": "document-text-symbolic"}[file_type]
|
||||
icon_name={
|
||||
"image": "image-x-generic-symbolic",
|
||||
"plain_text": "document-text-symbolic",
|
||||
"pdf": "document-text-symbolic",
|
||||
"docx": "document-text-symbolic"
|
||||
}[file_type]
|
||||
)
|
||||
button = Gtk.Button(
|
||||
vexpand=True,
|
||||
@@ -1176,10 +1196,8 @@ class AlpacaWindow(Adw.ApplicationWindow):
|
||||
self.get_application().create_action('import_chat', lambda *_: self.import_chat())
|
||||
self.get_application().create_action('create_model_from_existing', lambda *_: dialogs.create_model_from_existing(self))
|
||||
self.get_application().create_action('create_model_from_file', lambda *_: dialogs.create_model_from_file(self))
|
||||
self.get_application().create_action('attach_image', lambda *_: dialogs.attach_file(self, self.file_filter_image, "image"))
|
||||
self.get_application().create_action('attach_plain_text', lambda *_: dialogs.attach_file(self, self.file_filter_text, "plain_text"))
|
||||
self.add_chat_button.connect("clicked", lambda button : self.new_chat())
|
||||
|
||||
self.attachment_button.connect("clicked", lambda button, file_filter=self.file_filter_attachments: dialogs.attach_file(self, file_filter))
|
||||
self.create_model_name.get_delegate().connect("insert-text", self.check_alphanumeric)
|
||||
self.remote_connection_entry.connect("entry-activated", lambda entry : entry.set_css_classes([]))
|
||||
self.remote_connection_switch.connect("notify", lambda pspec, user_data : self.connection_switched())
|
||||
|
||||
@@ -189,9 +189,7 @@
|
||||
<property name="orientation">0</property>
|
||||
<property name="spacing">12</property>
|
||||
<child>
|
||||
<object class="GtkMenuButton" id="attachment_button">
|
||||
<property name="menu-model">attachment_menu</property>
|
||||
<property name="direction">0</property>
|
||||
<object class="GtkButton" id="attachment_button">
|
||||
<property name="vexpand">false</property>
|
||||
<property name="valign">3</property>
|
||||
<property name="tooltip-text" translatable="yes">Attach file</property>
|
||||
@@ -903,21 +901,8 @@
|
||||
</item>
|
||||
</section>
|
||||
</menu>
|
||||
<menu id="attachment_menu">
|
||||
<section>
|
||||
<item>
|
||||
<attribute name="label" translatable="yes">Plain text file</attribute>
|
||||
<attribute name="action">app.attach_plain_text</attribute>
|
||||
</item>
|
||||
<item>
|
||||
<attribute name="label" translatable="yes">Image</attribute>
|
||||
<attribute name="action">app.attach_image</attribute>
|
||||
</item>
|
||||
</section>
|
||||
</menu>
|
||||
<object class="GtkFileFilter" id="file_filter_text">
|
||||
<object class="GtkFileFilter" id="file_filter_attachments">
|
||||
<suffixes>
|
||||
<suffix></suffix>
|
||||
<suffix>txt</suffix>
|
||||
<suffix>md</suffix>
|
||||
<suffix>html</suffix>
|
||||
@@ -927,17 +912,14 @@
|
||||
<suffix>java</suffix>
|
||||
<suffix>json</suffix>
|
||||
<suffix>xml</suffix>
|
||||
<suffix>pdf</suffix>
|
||||
<suffix>docx</suffix>
|
||||
<suffix>png</suffix>
|
||||
<suffix>jpeg</suffix>
|
||||
<suffix>webp</suffix>
|
||||
<suffix>gif</suffix>
|
||||
</suffixes>
|
||||
</object>
|
||||
<object class="GtkFileFilter" id="file_filter_image">
|
||||
<mime-types>
|
||||
<mime-type>image/svg+xml</mime-type>
|
||||
<mime-type>image/png</mime-type>
|
||||
<mime-type>image/jpeg</mime-type>
|
||||
<mime-type>image/webp</mime-type>
|
||||
<mime-type>image/gif</mime-type>
|
||||
</mime-types>
|
||||
</object>
|
||||
<object class="GtkFileFilter" id="file_filter_tar">
|
||||
<mime-types>
|
||||
<mime-type>application/x-tar</mime-type>
|
||||
|
||||
Reference in New Issue
Block a user