Examples of ExplicitAction


Examples of com.google.collide.client.code.autocomplete.LanguageSpecificAutocompleter.ExplicitAction

  public void testDeleteAtBeginningOfDocument() {
    MockAutocompleterEnvironment helper = new MockAutocompleterEnvironment();

    String text = "<cursorAtTheBeginingOfFirstLine>";
    helper.setup(new PathUtil("foo.js"), text, 0, 0, true);
    ExplicitAction action = helper.autocompleter.jsAutocompleter.getExplicitAction(
        helper.editor.getSelection(), DELETE_KEY, false);
    assertEquals(LanguageSpecificAutocompleter.ExplicitActionType.DEFAULT, action.getType());
  }
View Full Code Here

Examples of com.google.collide.client.code.autocomplete.LanguageSpecificAutocompleter.ExplicitAction

    Document document = Document.createFromString(text);
    int column = LineUtils.getLastCursorColumn(document.getFirstLine()) - tailOffset;
    helper.setup(new PathUtil("foo.js"), document, 0, column, true);

    ExplicitAction action = helper.autocompleter.jsAutocompleter.getExplicitAction(
        helper.editor.getSelection(), trigger, false);
    AutocompleteResult commonResult = action.getExplicitAutocompletion();
    if (expected == null) {
      assertNull("result", commonResult);
      assertFalse("action", ExplicitActionType.EXPLICIT_COMPLETE == action.getType());
      return;
    } else {
      assertTrue("action", ExplicitActionType.EXPLICIT_COMPLETE == action.getType());
    }
    assertTrue("result type", commonResult instanceof DefaultAutocompleteResult);

    DefaultAutocompleteResult result = (DefaultAutocompleteResult) commonResult;
    assertNotNull(message + ":result", result);
View Full Code Here

Examples of com.google.collide.client.code.autocomplete.LanguageSpecificAutocompleter.ExplicitAction

  private void checkExplicit(@Nullable String expected, String prefix) {
    SignalEventEssence trigger = new SignalEventEssence('{');

    MockAutocompleterEnvironment helper = new MockAutocompleterEnvironment();
    helper.setup(new PathUtil("foo.css"), prefix, 0, prefix.length(), true);
    ExplicitAction action = helper.autocompleter.cssAutocompleter.getExplicitAction(
        helper.editor.getSelection(), trigger, false);
    AutocompleteResult commonResult = action.getExplicitAutocompletion();
    if (expected == null) {
      assertNull("result", commonResult);
      assertFalse("action", ExplicitActionType.EXPLICIT_COMPLETE == action.getType());
      return;
    } else {
      assertTrue("action", ExplicitActionType.EXPLICIT_COMPLETE == action.getType());
    }
    assertTrue("result type", commonResult instanceof DefaultAutocompleteResult);

    DefaultAutocompleteResult result = (DefaultAutocompleteResult) commonResult;
    assertEquals(expected, result.getAutocompletionText());
View Full Code Here

Examples of com.google.collide.client.code.autocomplete.LanguageSpecificAutocompleter.ExplicitAction

      scheduleRequestAutocomplete();
      return true;
    }

    LanguageSpecificAutocompleter autocompleter = getLanguageSpecificAutocompleter();
    ExplicitAction action =
        autocompleter.getExplicitAction(editor.getSelection(), trigger, popup.isShowing());

    switch (action.getType()) {
      case EXPLICIT_COMPLETE:
        boxTrigger = null;
        performExplicitCompletion(action.getExplicitAutocompletion());
        return true;

      case DEFERRED_COMPLETE:
        boxTrigger = trigger;
        scheduleRequestAutocomplete();
View Full Code Here

Examples of com.google.collide.client.code.autocomplete.LanguageSpecificAutocompleter.ExplicitAction

    if (checkEnterTrigger(signal) && checkCursorBetweenCurlyBraces(selectionModel)) {
      String text = selectionModel.getCursorPosition().getLine().getText();
      int indent = StringUtils.lengthOfStartingWhitespace(text);
      String newLine = "\n" + StringUtils.getSpaces(indent);
      String emptyLine = newLine + "  ";
      return new ExplicitAction(
          new DefaultAutocompleteResult(emptyLine + newLine, "", emptyLine.length()));
    }
    return super.getExplicitAction(selectionModel, signal, popupIsShown, parser);
  }
View Full Code Here

Examples of com.google.collide.client.code.autocomplete.LanguageSpecificAutocompleter.ExplicitAction

    helper.parser.getListenerRegistrar().add(new DocumentParserListenerAdapter(
        helper.autocompleter, helper.editor));
    helper.parser.begin();
    helper.parseScheduler.requests.pop().run(10);

    ExplicitAction action = helper.autocompleter.htmlAutocompleter
        .getExplicitAction(helper.editor.getSelection(), new SignalEventEssence(' '), false);
    assertFalse(action.getType() == ExplicitActionType.DEFERRED_COMPLETE);
  }
View Full Code Here

Examples of com.google.collide.client.code.autocomplete.LanguageSpecificAutocompleter.ExplicitAction

        nextChar == -1 || nextChar == ' ' || nextChar == ',' || nextChar == ';' || nextChar == '\n';

    // TODO: Check if user has just fixed pairing?
    if (context != IN_STRING) {
      if ('(' == key && canPairParenthesis) {
        return new ExplicitAction(new DefaultAutocompleteResult("()", "", 1));
      } else if ('[' == key && canPairParenthesis) {
        return new ExplicitAction(new DefaultAutocompleteResult("[]", "", 1));
      } else if ('{' == key && canPairParenthesis) {
        return new ExplicitAction(new DefaultAutocompleteResult("{}", "", 1));
      } else if ('"' == key || '\'' == key) {
        String doubleQuote = key + "" + key;
        if (!textBeforePosition(selectionRange[0]).endsWith(doubleQuote)) {
          return new ExplicitAction(new DefaultAutocompleteResult(doubleQuote, "", 1));
        }
      } else if (!selection.hasSelection() && (key == nextChar)
          && (']' == key || ')' == key || '}' == key)) {
        // Testing what is more useful: pasting or passing.
        JsonArray<Token> tokens = parser.parseLineSync(selectionRange[0].getLine());
        if (tokens != null) {
          int column = selectionRange[0].getColumn();
          String closers = calculateClosingParens(tokens, column);
          String openers = calculateOpenParens(tokens, column);

          int match = StringUtils.findCommonPrefixLength(closers, openers);
          int newMatch = StringUtils.findCommonPrefixLength(key + closers, openers);
          if (newMatch <= match) {
            // With pasting results will be worse -> pass.
            return new ExplicitAction(DefaultAutocompleteResult.PASS_CHAR);
          }
        }
      }
    } else {
      if ((key == nextChar) && ('"' == key || '\'' == key)) {
        ParseResult<State> parseResult = parser.getState(State.class, selectionRange[0], key + " ");
        if (parseResult != null) {
          JsonArray<Token> tokens = parseResult.getTokens();
          Preconditions.checkState(!tokens.isEmpty());
          if (tokens.peek().getType() != STRING) {
            return new ExplicitAction(DefaultAutocompleteResult.PASS_CHAR);
          }
        }
      }
    }
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.