ai chat: action buttons

copy, edit, toggle markdown rendering, delete
This commit is contained in:
end-4
2025-05-06 23:57:17 +02:00
parent 38efbb0d21
commit db173152c3
4 changed files with 137 additions and 16 deletions
@@ -82,16 +82,24 @@ Item {
Ai.addMessage("## ✏️ Markdown test\n"
+ "- **Bold**, *Italic*, `Monospace`, [Link](https://example.com)\n\n"
+ "- Table:\n\n"
+ "| | Quickshell | AGS/Astal |\n"
+ "|:-----------|:----------:|:---------:|\n"
+ "| UI Toolkit | Qt | Gtk3/Gtk4 |\n"
+ "| Language | QML | Js/Ts/Lua |\n"
+ "| Reactivity | Implied | Needs declaration |\n"
+ "| Widget placement | Mildly difficult | More intuitive |\n"
+ "| Bluetooth & Wifi support | ❌ | ✅ |\n"
+ "| No-delay keybinds<br/><sup>(hyprland_global_shortcuts_v1)</sup> | ✅ | ❌ |\n"
+ "| Development | New APIs | New syntax |\n"
+ "- Code block"
+ "| | Quickshell | AGS/Astal |\n"
+ "|:-------------------------|:----------------:|:-----------------:|\n"
+ "| UI Toolkit | Qt | Gtk3/Gtk4 |\n"
+ "| Language | QML | Js/Ts/Lua |\n"
+ "| Reactivity | Implied | Needs declaration |\n"
+ "| Widget placement | Mildly difficult | More intuitive |\n"
+ "| Bluetooth & Wifi support | ❌ | ✅ |\n"
+ "| No-delay keybinds | ✅ | ❌ |\n"
+ "| Development | New APIs | New syntax |\n"
+ "- Code block\n"
+ "```cpp\n"
+ "#include <bits/stdc++.h>\n"
+ "const std::string GREETING = \"UwU\";\n"
+ "int main(int argc, char* argv[]) {\n"
+ " std::cout << GREETING;\n"
+ "}\n"
+ "```\n"
, Ai.interfaceRole);
}
@@ -157,6 +165,15 @@ Item {
easing.bezierCurve: Appearance.animation.elementMoveEnter.bezierCurve
}
}
remove: Transition {
NumberAnimation {
property: "opacity"
from: 1; to: 0
duration: Appearance.animation.elementMoveEnter.duration
easing.type: Appearance.animation.elementMoveEnter.type
easing.bezierCurve: Appearance.animation.elementMoveEnter.bezierCurve
}
}
model: ScriptModel {
values: root.messages