Compare commits

..

4 Commits

22 changed files with 668 additions and 142 deletions

View File

@ -0,0 +1,32 @@
## chat_bubble.gd — attach to your bubble container (e.g. PanelContainer)
@tool
extends Container
@export var min_bubble_width: float = 64.0
@export var max_bubble_width: float = 512.0
@onready var label: RichTextLabel = $RichTextLabel
var text := ""
func _ready():
label.resized.connect(_on_label_resized)
label.theme_changed.connect(_on_label_resized)
label.fit_content = true
func _process(_delta: float) -> void:
if (label.text != text):
set_text(label.text)
func set_text(new_text: String) -> void:
text = new_text
label.autowrap_mode = TextServer.AUTOWRAP_OFF
label.custom_minimum_size.x = min_bubble_width
label.text = text # triggers layout → NOTIFICATION_RESIZED
func _on_label_resized() -> void:
if label.get_content_width() > max_bubble_width:
label.autowrap_mode = TextServer.AUTOWRAP_WORD_SMART
label.custom_minimum_size.x = max_bubble_width
else:
pass # already correctly sized

View File

@ -0,0 +1 @@
uid://dlbwvie007wfx

BIN
src/logic-scenes/chat_view/avatar-other.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dkqsw8nh2crhq"
path="res://.godot/imported/avatar-other.png-09f69875162e2f76b5a47c0d287cd91e.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://logic-scenes/chat_view/avatar-other.png"
dest_files=["res://.godot/imported/avatar-other.png-09f69875162e2f76b5a47c0d287cd91e.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
src/logic-scenes/chat_view/avatar-self.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dekaqj10p8rqk"
path="res://.godot/imported/avatar-self.png-01f4d75fe95c2d322095af684ab1d9a8.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://logic-scenes/chat_view/avatar-self.png"
dest_files=["res://.godot/imported/avatar-self.png-01f4d75fe95c2d322095af684ab1d9a8.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -1,126 +0,0 @@
[gd_scene format=3 uid="uid://b1pv7j1hag5m3"]
[ext_resource type="FontFile" uid="uid://bdkb43smt08c0" path="res://import/fonts/Ubuntu-B.ttf" id="1_1f64j"]
[ext_resource type="FontFile" uid="uid://bmh8v44f6txfo" path="res://import/fonts/Ubuntu-RI.ttf" id="2_n65mw"]
[ext_resource type="FontFile" uid="uid://b0i5ipn75noh6" path="res://import/fonts/Ubuntu-R.ttf" id="3_1hd2w"]
[ext_resource type="Script" uid="uid://db7t2kqbsskoq" path="res://logic-scenes/chat_view/chat-view.gd" id="4_n65mw"]
[ext_resource type="Script" uid="uid://be16bo6mf4kqu" path="res://logic-scenes/chat_view/chat-bubble.gd" id="5_1hd2w"]
[sub_resource type="StyleBoxFlat" id="StyleBoxFlat_iwd5k"]
content_margin_left = 12.0
content_margin_top = 8.0
content_margin_right = 12.0
content_margin_bottom = 8.0
bg_color = Color(0.757003, 0.509749, 0.667446, 1)
border_color = Color(0.8, 0.8, 0.8, 0)
corner_radius_top_left = 20
corner_radius_top_right = 20
corner_radius_bottom_right = 20
[sub_resource type="Theme" id="Theme_w8y7q"]
default_font = ExtResource("3_1hd2w")
default_font_size = 24
RichTextLabel/fonts/bold_font = ExtResource("1_1f64j")
RichTextLabel/fonts/italics_font = ExtResource("2_n65mw")
RichTextLabel/styles/normal = SubResource("StyleBoxFlat_iwd5k")
VBoxContainer/constants/separation = 9
[sub_resource type="Resource" id="Resource_iwd5k"]
script = ExtResource("5_1hd2w")
text = "Sorry"
time_string = "This is smol."
metadata/_custom_type_script = "uid://be16bo6mf4kqu"
[sub_resource type="Resource" id="Resource_1hd2w"]
script = ExtResource("5_1hd2w")
text = "I never knew what to say. Can I write instead?"
metadata/_custom_type_script = "uid://be16bo6mf4kqu"
[sub_resource type="Resource" id="Resource_w8y7q"]
script = ExtResource("5_1hd2w")
text = "🙄"
is_own_message = true
metadata/_custom_type_script = "uid://be16bo6mf4kqu"
[node name="Control" type="Control" unique_id=306300003]
layout_mode = 3
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme = SubResource("Theme_w8y7q")
[node name="ScrollContainer" type="ScrollContainer" parent="." unique_id=124411261]
layout_mode = 0
offset_right = 582.0
offset_bottom = 1082.0
theme = SubResource("Theme_w8y7q")
script = ExtResource("4_n65mw")
messages = Array[ExtResource("5_1hd2w")]([SubResource("Resource_iwd5k"), SubResource("Resource_1hd2w"), SubResource("Resource_w8y7q")])
[node name="Template" type="ScrollContainer" parent="." unique_id=1981714851]
layout_mode = 0
offset_left = 1061.0
offset_top = 78.0
offset_right = 1643.0
offset_bottom = 702.0
[node name="VBoxContainer" type="VBoxContainer" parent="Template" unique_id=1303301180]
layout_mode = 2
size_flags_horizontal = 3
[node name="RichTextLabel2" type="RichTextLabel" parent="Template/VBoxContainer" unique_id=1558665125]
layout_mode = 2
size_flags_horizontal = 0
theme = SubResource("Theme_w8y7q")
bbcode_enabled = true
text = "Dies ist eine Telegram-Message.
Ich schreibe mal etwas länger, ob zu sehen,
ob der Bums irgendwann umbricht.
[i]8:12 PM[/i]"
fit_content = true
scroll_active = false
autowrap_mode = 0
[node name="RichTextLabel3" type="RichTextLabel" parent="Template/VBoxContainer" unique_id=1220988641]
layout_mode = 2
theme = SubResource("Theme_w8y7q")
bbcode_enabled = true
text = "Dies ist eine Telegram-Message
[i]8:12 PM[/i]"
fit_content = true
[node name="RichTextLabel4" type="RichTextLabel" parent="Template/VBoxContainer" unique_id=443052553]
layout_mode = 2
theme = SubResource("Theme_w8y7q")
bbcode_enabled = true
text = "Dies ist eine Telegram-Message
[i]8:12 PM[/i]"
fit_content = true
[node name="RichTextLabel5" type="RichTextLabel" parent="Template/VBoxContainer" unique_id=1955305073]
layout_mode = 2
theme = SubResource("Theme_w8y7q")
bbcode_enabled = true
text = "Dies ist eine Telegram-Message
[i]8:12 PM[/i]"
fit_content = true
horizontal_alignment = 2
[node name="RichTextLabel6" type="RichTextLabel" parent="Template/VBoxContainer" unique_id=1577640143]
layout_mode = 2
theme = SubResource("Theme_w8y7q")
bbcode_enabled = true
text = "Dies ist eine Telegram-Message
[i]8:12 PM[/i]"
fit_content = true
[node name="RichTextLabel" type="RichTextLabel" parent="Template/VBoxContainer" unique_id=1513469081]
layout_mode = 2
size_flags_horizontal = 3
theme = SubResource("Theme_w8y7q")
bbcode_enabled = true
text = "Dies ist eine Telegram-Message, die deutlich länger ist, als die vorherige, um das mal abzuschätzen.
[i]8:12 PM[/i]"
fit_content = true

View File

@ -2,6 +2,7 @@ class_name ChatView extends ScrollContainer
@export var messages: Array[ChatMessage]
var v_box: VBoxContainer
func _ready() -> void:
@ -10,21 +11,7 @@ func _ready() -> void:
rebuild()
func rebuild():
for child in v_box.get_children():
child.free()
var text_server: = TextServerManager.get_primary_interface()
#var text_server: = TextServerManager.get_primary_interface()
for message in messages:
var shaped_tex: RID = text_server.create_shaped_text(TextServer.DIRECTION_AUTO, TextServer.ORIENTATION_HORIZONTAL)
text_server.shaped_text_add_string(shaped_tex, message.text, [theme.default_font.get_rid()], theme.default_base_scale)
text_server.shaped_text_fit_to_width(shaped_tex, size.x)
var label: = RichTextLabel.new()
label.custom_minimum_size = text_server.shaped_text_get_size(shaped_tex) + Vector2( 16, 16 )
label.text = message.text
label.size_flags_horizontal = Control.SIZE_SHRINK_END if message.is_own_message else Control.SIZE_SHRINK_BEGIN
v_box.add_child(label)
pass

View File

@ -0,0 +1,364 @@
[gd_scene format=3 uid="uid://dgb7x8na0ek57"]
[ext_resource type="Theme" uid="uid://bhw3jbbrt3m1k" path="res://logic-scenes/chat_view/theme-smartphone.tres" id="1_6hmi7"]
[ext_resource type="LabelSettings" uid="uid://dy1l6fcsy54od" path="res://logic-scenes/chat_view/labe-top-bar.tres" id="2_xckgu"]
[ext_resource type="Texture2D" uid="uid://dhecdhucnu7sq" path="res://logic-scenes/chat_view/phone-notifications.png" id="3_myhe7"]
[ext_resource type="Script" uid="uid://db7t2kqbsskoq" path="res://logic-scenes/chat_view/chat-view.gd" id="4_myhe7"]
[ext_resource type="Texture2D" uid="uid://cv58eu35ra1ku" path="res://logic-scenes/chat_view/phone-dot.png" id="4_vvup7"]
[ext_resource type="Texture2D" uid="uid://bng2qbusdg7dj" path="res://logic-scenes/chat_view/phone-signal.png" id="4_xckgu"]
[ext_resource type="Script" uid="uid://be16bo6mf4kqu" path="res://logic-scenes/chat_view/chat-message.gd" id="5_xckgu"]
[ext_resource type="Texture2D" uid="uid://dekaqj10p8rqk" path="res://logic-scenes/chat_view/avatar-self.png" id="6_bvmqu"]
[ext_resource type="StyleBox" uid="uid://dj1fuvcy0sw7k" path="res://logic-scenes/chat_view/style-chat-bubble.tres" id="9_vvup7"]
[ext_resource type="LabelSettings" uid="uid://mh8uu4rlqmv5" path="res://logic-scenes/chat_view/label-timestamp.tres" id="9_xckgu"]
[ext_resource type="StyleBox" uid="uid://dd4xc216ul21m" path="res://logic-scenes/chat_view/style-chat-bubble-self.tres" id="11_qbcw0"]
[ext_resource type="Script" uid="uid://dlbwvie007wfx" path="res://logic-scenes/chat_view/auto_size_richt_text_container.gd" id="12_qgt32"]
[sub_resource type="Resource" id="Resource_iwd5k"]
script = ExtResource("5_xckgu")
text = "Sorry"
time_string = "This is smol."
metadata/_custom_type_script = "uid://be16bo6mf4kqu"
[sub_resource type="Resource" id="Resource_1hd2w"]
script = ExtResource("5_xckgu")
text = "I never knew what to say. Can I write instead?"
metadata/_custom_type_script = "uid://be16bo6mf4kqu"
[sub_resource type="Resource" id="Resource_w8y7q"]
script = ExtResource("5_xckgu")
text = "🙄"
is_own_message = true
metadata/_custom_type_script = "uid://be16bo6mf4kqu"
[node name="PhoneScreen" type="ColorRect" unique_id=1416718783]
custom_minimum_size = Vector2(800, 1280)
anchors_preset = 1
anchor_left = 1.0
anchor_right = 1.0
offset_left = -1920.0
offset_right = -1048.0
offset_bottom = 1424.0
grow_horizontal = 0
color = Color(0, 0, 0, 1)
[node name="AppLayout" type="VBoxContainer" parent="." unique_id=1207866359]
layout_mode = 1
anchors_preset = 15
anchor_right = 1.0
anchor_bottom = 1.0
grow_horizontal = 2
grow_vertical = 2
theme = ExtResource("1_6hmi7")
[node name="TopBar" type="HBoxContainer" parent="AppLayout" unique_id=715115340]
layout_mode = 2
alignment = 1
[node name="Time" type="Label" parent="AppLayout/TopBar" unique_id=538973152]
layout_mode = 2
text = "08:12 PM"
label_settings = ExtResource("2_xckgu")
horizontal_alignment = 1
vertical_alignment = 1
[node name="Notifcations" type="TextureRect" parent="AppLayout/TopBar" unique_id=164400921]
layout_mode = 2
texture = ExtResource("3_myhe7")
[node name="Dot1" type="TextureRect" parent="AppLayout/TopBar" unique_id=1306078406]
layout_mode = 2
texture = ExtResource("4_vvup7")
[node name="Dot2" type="TextureRect" parent="AppLayout/TopBar" unique_id=256206201]
layout_mode = 2
texture = ExtResource("4_vvup7")
[node name="Control2" type="Control" parent="AppLayout/TopBar" unique_id=209916177]
layout_mode = 2
size_flags_horizontal = 3
[node name="SignalStrength" type="TextureRect" parent="AppLayout/TopBar" unique_id=416104296]
layout_mode = 2
texture = ExtResource("4_xckgu")
[node name="Carrier" type="Label" parent="AppLayout/TopBar" unique_id=61022698]
layout_mode = 2
text = "HRT-Mobile"
label_settings = ExtResource("2_xckgu")
horizontal_alignment = 1
vertical_alignment = 1
[node name="AppBar" type="HBoxContainer" parent="AppLayout" unique_id=981636098]
layout_mode = 2
alignment = 1
[node name="ContactName" type="Label" parent="AppLayout/AppBar" unique_id=1110888559]
layout_mode = 2
text = "Contact Name"
label_settings = ExtResource("2_xckgu")
horizontal_alignment = 1
vertical_alignment = 1
[node name="ChatName" type="Label" parent="AppLayout/AppBar" unique_id=215068956]
layout_mode = 2
text = "(Nick)"
label_settings = ExtResource("2_xckgu")
horizontal_alignment = 1
vertical_alignment = 1
[node name="ChatContainer" type="ScrollContainer" parent="AppLayout" unique_id=124411261]
unique_name_in_owner = true
layout_mode = 2
size_flags_vertical = 3
horizontal_scroll_mode = 0
vertical_scroll_mode = 2
script = ExtResource("4_myhe7")
messages = Array[ExtResource("5_xckgu")]([SubResource("Resource_iwd5k"), SubResource("Resource_1hd2w"), SubResource("Resource_w8y7q")])
[node name="VBoxContainer" type="VBoxContainer" parent="AppLayout/ChatContainer" unique_id=1303301180]
layout_mode = 2
size_flags_horizontal = 3
[node name="Message-Other" type="HBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer" unique_id=1768184408]
layout_mode = 2
size_flags_horizontal = 3
alignment = 2
[node name="Avatar" type="TextureRect" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other" unique_id=692150965]
layout_mode = 2
size_flags_vertical = 8
texture = ExtResource("6_bvmqu")
stretch_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other" unique_id=1815081203]
layout_mode = 2
size_flags_horizontal = 2
size_flags_vertical = 9
[node name="Bubble" type="PanelContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other/VBoxContainer" unique_id=5067436]
custom_minimum_size = Vector2(0, 52)
layout_mode = 2
size_flags_horizontal = 8
size_flags_vertical = 3
theme_override_styles/panel = ExtResource("9_vvup7")
[node name="MarginContainer" type="MarginContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other/VBoxContainer/Bubble" unique_id=866335976]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 4
theme_override_constants/margin_left = 4
theme_override_constants/margin_top = 4
theme_override_constants/margin_right = 4
theme_override_constants/margin_bottom = 4
script = ExtResource("12_qgt32")
[node name="RichTextLabel" type="RichTextLabel" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other/VBoxContainer/Bubble/MarginContainer" unique_id=1973907637]
custom_minimum_size = Vector2(64, 64)
layout_mode = 2
size_flags_horizontal = 3
theme_type_variation = &"message-other"
bbcode_enabled = true
text = "Dies ist eine T-legram-Message.
"
fit_content = true
scroll_active = false
autowrap_mode = 0
vertical_alignment = 1
justification_flags = 99
metadata/_custom_type_script = "uid://dlbwvie007wfx"
[node name="TimeStamp" type="Label" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other/VBoxContainer" unique_id=801686504]
layout_mode = 2
text = "8:12 PM"
label_settings = ExtResource("9_xckgu")
horizontal_alignment = 2
[node name="Spacer" type="Control" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other" unique_id=1232564412]
custom_minimum_size = Vector2(160, 0)
layout_mode = 2
[node name="Message-Other2" type="HBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer" unique_id=230318593]
layout_mode = 2
size_flags_horizontal = 3
alignment = 2
[node name="Avatar" type="TextureRect" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other2" unique_id=1854076166]
layout_mode = 2
size_flags_vertical = 8
texture = ExtResource("6_bvmqu")
stretch_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other2" unique_id=216841372]
layout_mode = 2
size_flags_horizontal = 2
size_flags_vertical = 9
[node name="Bubble" type="PanelContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other2/VBoxContainer" unique_id=1704898778]
custom_minimum_size = Vector2(0, 52)
layout_mode = 2
size_flags_horizontal = 8
size_flags_vertical = 3
theme_override_styles/panel = ExtResource("9_vvup7")
[node name="MarginContainer" type="MarginContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other2/VBoxContainer/Bubble" unique_id=343453369]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 4
theme_override_constants/margin_left = 4
theme_override_constants/margin_top = 4
theme_override_constants/margin_right = 4
theme_override_constants/margin_bottom = 4
script = ExtResource("12_qgt32")
[node name="RichTextLabel" type="RichTextLabel" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other2/VBoxContainer/Bubble/MarginContainer" unique_id=598363127]
custom_minimum_size = Vector2(64, 64)
layout_mode = 2
size_flags_horizontal = 3
theme_type_variation = &"message-other"
bbcode_enabled = true
text = "😝"
fit_content = true
scroll_active = false
autowrap_mode = 0
vertical_alignment = 1
justification_flags = 99
metadata/_custom_type_script = "uid://dlbwvie007wfx"
[node name="TimeStamp" type="Label" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other2/VBoxContainer" unique_id=257313481]
layout_mode = 2
text = "8:12 PM"
label_settings = ExtResource("9_xckgu")
horizontal_alignment = 2
[node name="Spacer" type="Control" parent="AppLayout/ChatContainer/VBoxContainer/Message-Other2" unique_id=97162962]
custom_minimum_size = Vector2(160, 0)
layout_mode = 2
[node name="Message-Self" type="HBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer" unique_id=2088488179]
layout_mode = 2
size_flags_horizontal = 3
alignment = 2
[node name="Spacer" type="Control" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self" unique_id=492147653]
custom_minimum_size = Vector2(160, 0)
layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self" unique_id=157124478]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 9
[node name="Bubble" type="PanelContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self/VBoxContainer" unique_id=842242817]
custom_minimum_size = Vector2(0, 52)
layout_mode = 2
size_flags_horizontal = 8
size_flags_vertical = 3
theme_override_styles/panel = ExtResource("11_qbcw0")
[node name="MarginContainer" type="MarginContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self/VBoxContainer/Bubble" unique_id=766411309]
layout_mode = 2
size_flags_horizontal = 0
size_flags_vertical = 4
theme_override_constants/margin_left = 4
theme_override_constants/margin_top = 4
theme_override_constants/margin_right = 4
theme_override_constants/margin_bottom = 4
script = ExtResource("12_qgt32")
min_bubble_width = null
[node name="RichTextLabel" type="RichTextLabel" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self/VBoxContainer/Bubble/MarginContainer" unique_id=1320329524]
custom_minimum_size = Vector2(512, 64)
layout_mode = 2
size_flags_horizontal = 3
theme_type_variation = &"message-other"
bbcode_enabled = true
text = "Dies ist auch eine T-legram-Message. Ich schreibe mal etwas länger, ob zu sehen, ob der Text irgendwann umbricht.
"
fit_content = true
scroll_active = false
vertical_alignment = 1
justification_flags = 99
metadata/_custom_type_script = "uid://dlbwvie007wfx"
[node name="TimeStamp" type="Label" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self/VBoxContainer" unique_id=433463928]
layout_mode = 2
text = "8:12 PM"
label_settings = ExtResource("9_xckgu")
horizontal_alignment = 2
[node name="Avatar" type="TextureRect" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self" unique_id=434370099]
layout_mode = 2
size_flags_vertical = 8
texture = ExtResource("6_bvmqu")
stretch_mode = 2
[node name="Message-Self-Short" type="HBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer" unique_id=1126894869]
layout_mode = 2
size_flags_horizontal = 3
alignment = 2
[node name="Spacer" type="Control" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self-Short" unique_id=2062000365]
custom_minimum_size = Vector2(160, 0)
layout_mode = 2
[node name="VBoxContainer" type="VBoxContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self-Short" unique_id=1331255119]
layout_mode = 2
size_flags_horizontal = 3
size_flags_vertical = 9
[node name="Bubble" type="PanelContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self-Short/VBoxContainer" unique_id=2249691]
custom_minimum_size = Vector2(0, 52)
layout_mode = 2
size_flags_horizontal = 8
size_flags_vertical = 3
theme_override_styles/panel = ExtResource("11_qbcw0")
[node name="MarginContainer" type="MarginContainer" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self-Short/VBoxContainer/Bubble" unique_id=2077306006]
layout_mode = 2
size_flags_horizontal = 0
theme_override_constants/margin_left = 4
theme_override_constants/margin_top = 4
theme_override_constants/margin_right = 4
theme_override_constants/margin_bottom = 4
script = ExtResource("12_qgt32")
min_bubble_width = null
[node name="RichTextLabel" type="RichTextLabel" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self-Short/VBoxContainer/Bubble/MarginContainer" unique_id=425927748]
custom_minimum_size = Vector2(0, 64)
layout_mode = 2
size_flags_horizontal = 3
theme_type_variation = &"message-other"
bbcode_enabled = true
text = "Fasse dich kurz!"
fit_content = true
scroll_active = false
autowrap_mode = 0
vertical_alignment = 1
metadata/_custom_type_script = "uid://dlbwvie007wfx"
[node name="TimeStamp" type="Label" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self-Short/VBoxContainer" unique_id=1787589161]
layout_mode = 2
text = "8:12 PM"
label_settings = ExtResource("9_xckgu")
horizontal_alignment = 2
[node name="Avatar" type="TextureRect" parent="AppLayout/ChatContainer/VBoxContainer/Message-Self-Short" unique_id=740045102]
layout_mode = 2
size_flags_vertical = 8
texture = ExtResource("6_bvmqu")
stretch_mode = 2
[node name="PanelContainer" type="PanelContainer" parent="AppLayout" unique_id=1252298765]
layout_mode = 2
[node name="NavBar" type="HBoxContainer" parent="AppLayout" unique_id=1214154460]
layout_mode = 2
alignment = 1
[node name="Dot1" type="TextureRect" parent="AppLayout/NavBar" unique_id=721203980]
layout_mode = 2
texture = ExtResource("4_vvup7")
[node name="Dot2" type="TextureRect" parent="AppLayout/NavBar" unique_id=1265715350]
layout_mode = 2
texture = ExtResource("4_vvup7")

View File

@ -0,0 +1,7 @@
[gd_resource type="LabelSettings" format=3 uid="uid://dy1l6fcsy54od"]
[ext_resource type="FontFile" uid="uid://bdkb43smt08c0" path="res://import/fonts/Ubuntu-B.ttf" id="1_tvq1w"]
[resource]
font = ExtResource("1_tvq1w")
font_size = 18

View File

@ -0,0 +1,8 @@
[gd_resource type="LabelSettings" format=3 uid="uid://mh8uu4rlqmv5"]
[ext_resource type="FontFile" uid="uid://b0i5ipn75noh6" path="res://import/fonts/Ubuntu-R.ttf" id="1_f4p0e"]
[resource]
font = ExtResource("1_f4p0e")
font_size = 12
font_color = Color(0.5673677, 0.56736773, 0.56736773, 1)

BIN
src/logic-scenes/chat_view/phone-dot.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://cv58eu35ra1ku"
path="res://.godot/imported/phone-dot.png-2758efc6f7ccb6f5a32a65b4f7cfdc54.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://logic-scenes/chat_view/phone-dot.png"
dest_files=["res://.godot/imported/phone-dot.png-2758efc6f7ccb6f5a32a65b4f7cfdc54.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
src/logic-scenes/chat_view/phone-notifications.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://dhecdhucnu7sq"
path="res://.godot/imported/phone-notifications.png-2e4c4652e368365f11a8fcd5429d7863.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://logic-scenes/chat_view/phone-notifications.png"
dest_files=["res://.godot/imported/phone-notifications.png-2e4c4652e368365f11a8fcd5429d7863.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

BIN
src/logic-scenes/chat_view/phone-signal.png (Stored with Git LFS) Normal file

Binary file not shown.

View File

@ -0,0 +1,40 @@
[remap]
importer="texture"
type="CompressedTexture2D"
uid="uid://bng2qbusdg7dj"
path="res://.godot/imported/phone-signal.png-dd1931ca7afeae37c8c6215bd5a99a82.ctex"
metadata={
"vram_texture": false
}
[deps]
source_file="res://logic-scenes/chat_view/phone-signal.png"
dest_files=["res://.godot/imported/phone-signal.png-dd1931ca7afeae37c8c6215bd5a99a82.ctex"]
[params]
compress/mode=0
compress/high_quality=false
compress/lossy_quality=0.7
compress/uastc_level=0
compress/rdo_quality_loss=0.0
compress/hdr_compression=1
compress/normal_map=0
compress/channel_pack=0
mipmaps/generate=false
mipmaps/limit=-1
roughness/mode=0
roughness/src_normal=""
process/channel_remap/red=0
process/channel_remap/green=1
process/channel_remap/blue=2
process/channel_remap/alpha=3
process/fix_alpha_border=true
process/premult_alpha=false
process/normal_map_invert_y=false
process/hdr_as_srgb=false
process/hdr_clamp_exposure=false
process/size_limit=0
detect_3d/compress_to=1

View File

@ -0,0 +1,15 @@
[gd_resource type="StyleBoxFlat" format=3 uid="uid://dd4xc216ul21m"]
[resource]
bg_color = Color(2.2140146e-06, 0.55150306, 0.515221, 1)
border_width_left = 3
border_width_top = 3
border_width_right = 3
border_width_bottom = 3
border_color = Color(1, 1, 1, 0.5019608)
border_blend = true
corner_radius_top_left = 24
corner_radius_top_right = 24
corner_radius_bottom_left = 24
shadow_size = 5
shadow_offset = Vector2(5, 8)

View File

@ -0,0 +1,15 @@
[gd_resource type="StyleBoxFlat" format=3 uid="uid://dj1fuvcy0sw7k"]
[resource]
bg_color = Color(0.21546715, 0.48896384, 0.7619432, 1)
border_width_left = 3
border_width_top = 3
border_width_right = 3
border_width_bottom = 3
border_color = Color(1, 1, 1, 0.5019608)
border_blend = true
corner_radius_top_left = 24
corner_radius_top_right = 24
corner_radius_bottom_right = 24
shadow_size = 5
shadow_offset = Vector2(5, 8)

View File

@ -0,0 +1,8 @@
[gd_resource type="Theme" format=3 uid="uid://bhw3jbbrt3m1k"]
[ext_resource type="FontFile" uid="uid://b0i5ipn75noh6" path="res://import/fonts/Ubuntu-R.ttf" id="1_o4frn"]
[resource]
default_font = ExtResource("1_o4frn")
default_font_size = 24
VBoxContainer/constants/separation = 9