@Override
  protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.ga_create_gesture);

    mDoneButton = findViewById(R.id.done);

    final Intent intent = getIntent();
    mUri = intent.getStringExtra("uri");
    mName = intent.getStringExtra("name");

    ((TextView) findViewById(R.id.gesture_name)).setText(mName);

    GestureOverlayView overlay = (GestureOverlayView) findViewById(R.id.gestures_overlay);
    overlay.addOnGestureListener(new GesturesProcessor());

    final GestureLibrary store = GestureAnywhereBuilderActivity.getStore();
    final String gestureName = mName + '|' + mUri;
    for (String entry : store.getGestureEntries()) {
      if (gestureName.equals(entry)) {
        mGesture = store.getGestures(entry).get(0);
        mIsExistingGesture = true;
        break;
      }
    }
  }
  @SuppressWarnings({"UnusedDeclaration"})
  public void addGesture(View v) {
    if (mGesture != null) {
      if (TextUtils.isEmpty(mName) || TextUtils.isEmpty(mUri)) {
        return;
      }

      final GestureLibrary store = GestureAnywhereBuilderActivity.getStore();
      final String gestureName = mName + "|" + mUri;
      if (mIsExistingGesture) {
        store.removeEntry(gestureName);
      }
      store.addGesture(gestureName, mGesture);
      store.save();

      setResult(RESULT_OK);
    } else {
      setResult(RESULT_CANCELED);
    }

    finish();
  }