Skip to content

Commit ff8b450

Browse files
committed
Fill out styled text type
1 parent e72f523 commit ff8b450

File tree

14 files changed

+627
-429
lines changed

14 files changed

+627
-429
lines changed

internal/backends/qt/qt_window.rs

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -686,6 +686,16 @@ impl ItemRenderer for QtItemRenderer<'_> {
686686
sharedparley::draw_text(self, text, Some(self_rc), size);
687687
}
688688

689+
fn draw_styled_text(
690+
&mut self,
691+
text: Pin<&i_slint_core::items::StyledText>,
692+
self_rc: &ItemRc,
693+
size: LogicalSize,
694+
_cache: &CachedRenderingData,
695+
) {
696+
sharedparley::draw_styled_text(self, text, Some(self_rc), size);
697+
}
698+
689699
fn draw_text_input(
690700
&mut self,
691701
text_input: Pin<&items::TextInput>,
@@ -2095,6 +2105,16 @@ impl i_slint_core::renderer::RendererSealed for QtWindow {
20952105
sharedparley::text_size(self, text_item, item_rc, max_width, text_wrap)
20962106
}
20972107

2108+
fn styled_text_size(
2109+
&self,
2110+
text_item: Pin<&i_slint_core::items::StyledText>,
2111+
item_rc: &ItemRc,
2112+
max_width: Option<LogicalLength>,
2113+
text_wrap: TextWrap,
2114+
) -> LogicalSize {
2115+
sharedparley::styled_text_size(self, text_item, item_rc, max_width, text_wrap)
2116+
}
2117+
20982118
fn char_size(
20992119
&self,
21002120
text_item: Pin<&dyn i_slint_core::item_rendering::HasFont>,

internal/compiler/expression_tree.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -378,7 +378,7 @@ impl BuiltinFunction {
378378
BuiltinFunction::StopTimer => false,
379379
BuiltinFunction::RestartTimer => false,
380380
BuiltinFunction::OpenUrl => false,
381-
BuiltinFunction::ParseMarkdown | BuiltinFunction::EscapeMarkdown => true,
381+
BuiltinFunction::ParseMarkdown | BuiltinFunction::EscapeMarkdown => false,
382382
}
383383
}
384384

internal/compiler/passes/resolving.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -848,8 +848,9 @@ impl Expression {
848848
pos = end + 1;
849849
literal_start_pos = pos;
850850
}
851-
{
852-
let trailing = Expression::StringLiteral((&string[literal_start_pos..]).into());
851+
let trailing = &string[literal_start_pos..];
852+
if !trailing.is_empty() {
853+
let trailing = Expression::StringLiteral(trailing.into());
853854
expr = Some(match expr {
854855
None => trailing,
855856
Some(expr) => Expression::BinaryExpression {

0 commit comments

Comments
 (0)