ajwillia-ms pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=433c7ef8fe1c8d5a910e40a7af95574bff6d1d84

commit 433c7ef8fe1c8d5a910e40a7af95574bff6d1d84
Author: Andy Williams <[email protected]>
Date:   Wed Dec 13 22:44:10 2017 +0000

    elm_code: Fix tooltip crash
---
 src/lib/elementary/elm_code_widget.c         | 13 +++++++++++--
 src/lib/elementary/elm_code_widget_private.h |  2 --
 2 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/src/lib/elementary/elm_code_widget.c 
b/src/lib/elementary/elm_code_widget.c
index 592b8aa4a2..fd9e781984 100644
--- a/src/lib/elementary/elm_code_widget.c
+++ b/src/lib/elementary/elm_code_widget.c
@@ -431,7 +431,6 @@ _elm_code_widget_fill_line(Elm_Code_Widget *widget, 
Elm_Code_Line *line)
    if (line->number < elm_code_file_lines_get(line->file))
      _elm_code_widget_fill_whitespace(widget, '\n', &cells[length + gutter]);
 
-   elm_object_tooltip_text_set(grid, line->status_text);
    evas_object_textgrid_update_add(grid, 0, 0, w, 1);
 }
 
@@ -1098,7 +1097,17 @@ _elm_code_widget_mouse_move_cb(void *data, Evas *e 
EINA_UNUSED, Evas_Object *obj
    _elm_code_widget_position_at_coordinates_get(widget, pd, 
event->cur.canvas.x, event->cur.canvas.y, &row, &col);
 
    if (!pd->editable || !event->buttons)
-     return;
+     {
+        Elm_Code_Line *line;
+
+        line = elm_code_file_line_get(elm_code_widget_code_get(widget)->file, 
row);
+        if (line)
+          elm_object_tooltip_text_set(widget, line->status_text);
+        else
+          elm_object_tooltip_text_set(widget, NULL);
+
+        return;
+     }
 
    if (!pd->selection)
      if (col > 0 && row <= elm_code_file_lines_get(pd->code->file))
diff --git a/src/lib/elementary/elm_code_widget_private.h 
b/src/lib/elementary/elm_code_widget_private.h
index 8ff71becbf..17b3810cdf 100644
--- a/src/lib/elementary/elm_code_widget_private.h
+++ b/src/lib/elementary/elm_code_widget_private.h
@@ -60,8 +60,6 @@ void _elm_code_widget_backspace(Elm_Code_Widget *widget);
 
 void _elm_code_widget_delete(Elm_Code_Widget *widget);
 
-void _elm_code_widget_tooltip_text_set(Evas_Object *widget, const char *text);
-
 EAPI Elm_Code_Widget_Selection_Data 
*elm_code_widget_selection_normalized_get(Evas_Object *widget);
 
 void _elm_code_widget_selection_delete_no_undo(Elm_Code_Widget *widget);

-- 


Reply via email to