fix calc - do not reset calc_only flag! it wanst set by the calc_do!
authorraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 23 Apr 2009 12:42:53 +0000 (12:42 +0000)
committerraster <raster@7cbeb6ba-43b4-40fd-8cce-4c39aea84d33>
Thu, 23 Apr 2009 12:42:53 +0000 (12:42 +0000)
git-svn-id: svn+ssh://svn.enlightenment.org/var/svn/e/trunk/edje@40326 7cbeb6ba-43b4-40fd-8cce-4c39aea84d33

src/lib/edje_calc.c
src/lib/edje_entry.c

index e650990..64a9b12 100644 (file)
@@ -180,7 +180,6 @@ _edje_recalc_do(Edje *ed)
          _edje_part_recalc(ed, ep, (~ep->calculated) & FLAG_XY);
      }
    if (!ed->calc_only) ed->recalc = 0;
-   ed->calc_only = 0;
 }
 
 int
@@ -690,11 +689,11 @@ _edje_part_recalc_single(Edje *ed,
                  evas_object_textblock_style_insets_get(ep->object, &ins_l, &ins_r, &ins_t, &ins_b);
                  mw = ins_l + tw + ins_r;
                  mh = ins_t + th + ins_b;
-                 if (chosen_desc->text.min_x)
+//               if (chosen_desc->text.min_x)
                    {
                       if (mw > minw) minw = mw;
                    }
-                 if (chosen_desc->text.min_y)
+//               if (chosen_desc->text.min_y)
                    {
                       if (mh > minh) minh = mh;
                    }
@@ -882,7 +881,6 @@ _edje_part_recalc_single(Edje *ed,
        free(sfont);
        params->text.size = size;
      }
-
    /* rememebr what our size is BEFORE we go limit it */
    params->req.x = params->x;
    params->req.y = params->y;
index c61a6b3..1f99cd0 100644 (file)
@@ -1029,6 +1029,8 @@ _edje_key_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
             _curs_update_from_curs(en->cursor, rp->object, en);
             _anchors_get(en->cursor, rp->object, en);
             _edje_emit(ed, "entry,changed", rp->part->name);
+            _edje_emit(ed, "cursor,changed", rp->part->name);
+            cursor_changed = 1;
             ev->event_flags |= EVAS_EVENT_FLAG_ON_HOLD;
          }
         _edje_emit(ed, "entry,key,enter", rp->part->name);
@@ -1091,6 +1093,7 @@ _edje_part_mouse_down_cb(void *data, Evas *e, Evas_Object *obj, void *event_info
    Evas_Textblock_Cursor *tc;
    Evas_Bool dosel = 0;
    if (!rp) return;
+   if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return;
    en = rp->entry_data;
    if ((!en) || (rp->part->type != EDJE_PART_TYPE_TEXTBLOCK) ||
        (rp->part->entry_mode < EDJE_ENTRY_EDIT_MODE_SELECTABLE))
@@ -1209,6 +1212,7 @@ _edje_part_mouse_up_cb(void *data, Evas *e, Evas_Object *obj, void *event_info)
    Evas_Bool dosel = 0;
    if (ev->button != 1) return;
    if (!rp) return;
+   if (ev->event_flags & EVAS_EVENT_FLAG_ON_HOLD) return;
    en = rp->entry_data;
    if ((!en) || (rp->part->type != EDJE_PART_TYPE_TEXTBLOCK) ||
        (rp->part->entry_mode < EDJE_ENTRY_EDIT_MODE_SELECTABLE))