Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2016-01-09 02:03:30 +0300
committerCampbell Barton <ideasman42@gmail.com>2016-01-09 02:03:30 +0300
commitf39aa170586e2d713488ad81eaec46893db0f0fe (patch)
tree25cd90510149e335c7ef66aa2bedc85a98eadae0 /source/blender/editors/space_text
parent70028e73dcbf4494c7584be3266268eb44c0ac4b (diff)
Text Editor: Autocomplete suggestion wrap-around
D1716 by @someonewithpc
Diffstat (limited to 'source/blender/editors/space_text')
-rw-r--r--source/blender/editors/space_text/text_autocomplete.c24
1 files changed, 18 insertions, 6 deletions
diff --git a/source/blender/editors/space_text/text_autocomplete.c b/source/blender/editors/space_text/text_autocomplete.c
index 1637ae14892..2db2137784a 100644
--- a/source/blender/editors/space_text/text_autocomplete.c
+++ b/source/blender/editors/space_text/text_autocomplete.c
@@ -447,9 +447,15 @@ static int text_autocomplete_modal(bContext *C, wmOperator *op, const wmEvent *e
texttool_suggest_select(texttool_suggest_first());
}
else {
- while (sel && sel != texttool_suggest_last() && sel->next && scroll--) {
- texttool_suggest_select(sel->next);
- sel = sel->next;
+ while (sel && scroll--) {
+ if (sel != texttool_suggest_last() && sel->next) {
+ texttool_suggest_select(sel->next);
+ sel = sel->next;
+ }
+ else {
+ texttool_suggest_select(texttool_suggest_first());
+ sel = texttool_suggest_first();
+ }
}
}
text_pop_suggest_list();
@@ -471,9 +477,15 @@ static int text_autocomplete_modal(bContext *C, wmOperator *op, const wmEvent *e
}
else if (tools & TOOL_SUGG_LIST) {
SuggItem *sel = texttool_suggest_selected();
- while (sel && sel != texttool_suggest_first() && sel->prev && scroll--) {
- texttool_suggest_select(sel->prev);
- sel = sel->prev;
+ while (sel && scroll--) {
+ if (sel != texttool_suggest_first() && sel->prev) {
+ texttool_suggest_select(sel->prev);
+ sel = sel->prev;
+ }
+ else {
+ texttool_suggest_select(texttool_suggest_last());
+ sel = texttool_suggest_last();
+ }
}
text_pop_suggest_list();
swallow = 1;