summaryrefslogtreecommitdiff
path: root/gtk
diff options
context:
space:
mode:
authorMatthias Clasen <mclasen@redhat.com>2021-04-04 22:44:09 -0400
committerMatthias Clasen <mclasen@redhat.com>2021-04-04 22:44:09 -0400
commitb32cd5d32871b76e7eba808b0d9dcd2377f0de11 (patch)
treeb509ad5183727ad881bdf68f8c34da6a9006c395 /gtk
parent2af99bd65ebfc6fba456f528974c9ac81d9e499e (diff)
downloadgtk+-b32cd5d32871b76e7eba808b0d9dcd2377f0de11.tar.gz
textlayout: Introduce some locals
No need to call _gtk_text_buffer_get_btree over and over.
Diffstat (limited to 'gtk')
-rw-r--r--gtk/gtktextlayout.c76
1 files changed, 38 insertions, 38 deletions
diff --git a/gtk/gtktextlayout.c b/gtk/gtktextlayout.c
index 454a5fc9f6..e59adb85e8 100644
--- a/gtk/gtktextlayout.c
+++ b/gtk/gtktextlayout.c
@@ -684,6 +684,7 @@ gtk_text_layout_get_lines (GtkTextLayout *layout,
int bottom_y,
int *first_line_y)
{
+ GtkTextBTree *btree;
GtkTextLine *first_btree_line;
GtkTextLine *last_btree_line;
GtkTextLine *line;
@@ -694,11 +695,11 @@ gtk_text_layout_get_lines (GtkTextLayout *layout,
if (top_y >= bottom_y)
return NULL;
+ btree = _gtk_text_buffer_get_btree (layout->buffer);
+
retval = NULL;
- first_btree_line =
- _gtk_text_btree_find_line_by_y (_gtk_text_buffer_get_btree (layout->buffer),
- layout, top_y, first_line_y);
+ first_btree_line = _gtk_text_btree_find_line_by_y (btree, layout, top_y, first_line_y);
if (first_btree_line == NULL)
{
/* off the bottom */
@@ -706,13 +707,10 @@ gtk_text_layout_get_lines (GtkTextLayout *layout,
}
/* -1 since bottom_y is one past */
- last_btree_line =
- _gtk_text_btree_find_line_by_y (_gtk_text_buffer_get_btree (layout->buffer),
- layout, bottom_y - 1, NULL);
+ last_btree_line = _gtk_text_btree_find_line_by_y (btree, layout, bottom_y - 1, NULL);
if (!last_btree_line)
- last_btree_line =
- _gtk_text_btree_get_end_iter_line (_gtk_text_buffer_get_btree (layout->buffer));
+ last_btree_line = _gtk_text_btree_get_end_iter_line (btree);
g_assert (last_btree_line != NULL);
@@ -1080,12 +1078,14 @@ void
gtk_text_layout_validate (GtkTextLayout *layout,
int max_pixels)
{
+ GtkTextBTree *btree;
int y, old_height, new_height;
g_return_if_fail (GTK_IS_TEXT_LAYOUT (layout));
+ btree = _gtk_text_buffer_get_btree (layout->buffer);
while (max_pixels > 0 &&
- _gtk_text_btree_validate (_gtk_text_buffer_get_btree (layout->buffer),
+ _gtk_text_btree_validate (btree,
layout, max_pixels,
&y, &old_height, &new_height))
{
@@ -1881,12 +1881,13 @@ add_cursor (GtkTextLayout *layout,
int start)
{
CursorPosition cursor;
+ GtkTextBTree *btree;
+
+ btree = _gtk_text_buffer_get_btree (layout->buffer);
cursor.pos = start;
- cursor.is_insert = _gtk_text_btree_mark_is_insert (_gtk_text_buffer_get_btree (layout->buffer),
- seg->body.mark.obj);
- cursor.is_selection_bound = _gtk_text_btree_mark_is_selection_bound (_gtk_text_buffer_get_btree (layout->buffer),
- seg->body.mark.obj);
+ cursor.is_insert = _gtk_text_btree_mark_is_insert (btree, seg->body.mark.obj);
+ cursor.is_selection_bound = _gtk_text_btree_mark_is_selection_bound (btree, seg->body.mark.obj);
/* Hide insertion cursor when we have a selection or the layout
* user has hidden the cursor.
@@ -1900,8 +1901,7 @@ add_cursor (GtkTextLayout *layout,
GtkTextIter iter;
gboolean cursor_at_line_end;
- _gtk_text_btree_get_iter_at_mark (_gtk_text_buffer_get_btree (layout->buffer),
- &iter, seg->body.mark.obj);
+ _gtk_text_btree_get_iter_at_mark (btree, &iter, seg->body.mark.obj);
if (get_block_cursor (layout, display, &iter, start,
&display->block_cursor,
@@ -2319,6 +2319,7 @@ gtk_text_layout_create_display (GtkTextLayout *layout,
PangoAttribute *last_font_attr = NULL;
PangoAttribute *last_scale_attr = NULL;
PangoAttribute *last_fallback_attr = NULL;
+ GtkTextBTree *btree;
g_return_val_if_fail (line != NULL, NULL);
@@ -2351,6 +2352,8 @@ gtk_text_layout_create_display (GtkTextLayout *layout,
PANGO_DIRECTION_LTR : PANGO_DIRECTION_RTL;
}
+ btree = _gtk_text_buffer_get_btree (layout->buffer);
+
/* Allocate space for flat text for buffer
*/
text_allocated = _gtk_text_line_byte_count (line);
@@ -2421,16 +2424,14 @@ gtk_text_layout_create_display (GtkTextLayout *layout,
*/
if (layout->preedit_len > 0 &&
- _gtk_text_btree_mark_is_insert (_gtk_text_buffer_get_btree (layout->buffer),
- seg->body.mark.obj))
+ _gtk_text_btree_mark_is_insert (btree, seg->body.mark.obj))
break;
if (seg->body.mark.visible)
{
cursor_byte_offsets = g_slist_prepend (cursor_byte_offsets, GINT_TO_POINTER (layout_byte_offset));
cursor_segs = g_slist_prepend (cursor_segs, seg);
- if (_gtk_text_btree_mark_is_insert (_gtk_text_buffer_get_btree (layout->buffer),
- seg->body.mark.obj))
+ if (_gtk_text_btree_mark_is_insert (btree, seg->body.mark.obj))
display->insert_index = layout_byte_offset;
}
}
@@ -2518,8 +2519,7 @@ gtk_text_layout_create_display (GtkTextLayout *layout,
/* At the insertion point, add the preedit string, if any */
- if (_gtk_text_btree_mark_is_insert (_gtk_text_buffer_get_btree (layout->buffer),
- seg->body.mark.obj))
+ if (_gtk_text_btree_mark_is_insert (btree, seg->body.mark.obj))
{
display->insert_index = layout_byte_offset;
@@ -2756,21 +2756,20 @@ get_line_at_y (GtkTextLayout *layout,
GtkTextLine **line,
int *line_top)
{
+ GtkTextBTree *btree = _gtk_text_buffer_get_btree (layout->buffer);
+
if (y < 0)
y = 0;
if (y > layout->height)
y = layout->height;
- *line = _gtk_text_btree_find_line_by_y (_gtk_text_buffer_get_btree (layout->buffer),
- layout, y, line_top);
+ *line = _gtk_text_btree_find_line_by_y (btree, layout, y, line_top);
if (*line == NULL)
{
- *line = _gtk_text_btree_get_end_iter_line (_gtk_text_buffer_get_btree (layout->buffer));
-
+ *line = _gtk_text_btree_get_end_iter_line (btree);
+
if (line_top)
- *line_top =
- _gtk_text_btree_find_line_top (_gtk_text_buffer_get_btree (layout->buffer),
- *line, layout);
+ *line_top = _gtk_text_btree_find_line_top (btree, *line, layout);
}
}
@@ -3085,21 +3084,20 @@ find_display_line_below (GtkTextLayout *layout,
GtkTextIter *iter,
int y)
{
+ GtkTextBTree *btree;
GtkTextLine *line, *next;
GtkTextLine *found_line = NULL;
int line_top;
int found_byte = 0;
- line = _gtk_text_btree_find_line_by_y (_gtk_text_buffer_get_btree (layout->buffer),
- layout, y, &line_top);
+ btree = _gtk_text_buffer_get_btree (layout->buffer);
+
+ line = _gtk_text_btree_find_line_by_y (btree, layout, y, &line_top);
if (!line)
{
- line =
- _gtk_text_btree_get_end_iter_line (_gtk_text_buffer_get_btree (layout->buffer));
+ line = _gtk_text_btree_get_end_iter_line (btree);
- line_top =
- _gtk_text_btree_find_line_top (_gtk_text_buffer_get_btree (layout->buffer),
- line, layout);
+ line_top = _gtk_text_btree_find_line_top (btree, line, layout);
}
while (line && !found_line)
@@ -3153,17 +3151,19 @@ find_display_line_above (GtkTextLayout *layout,
GtkTextIter *iter,
int y)
{
+ GtkTextBTree *btree;
GtkTextLine *line;
GtkTextLine *found_line = NULL;
int line_top;
int found_byte = 0;
- line = _gtk_text_btree_find_line_by_y (_gtk_text_buffer_get_btree (layout->buffer), layout, y, &line_top);
+ btree = _gtk_text_buffer_get_btree (layout->buffer);
+ line = _gtk_text_btree_find_line_by_y (btree, layout, y, &line_top);
if (!line)
{
- line = _gtk_text_btree_get_end_iter_line (_gtk_text_buffer_get_btree (layout->buffer));
+ line = _gtk_text_btree_get_end_iter_line (btree);
- line_top = _gtk_text_btree_find_line_top (_gtk_text_buffer_get_btree (layout->buffer), line, layout);
+ line_top = _gtk_text_btree_find_line_top (btree, line, layout);
}
while (line && !found_line)