1. 12 Jun, 2020 2 commits
    • Evan W. Patton's avatar
      Make and/or blocks mutatable (#2184) · 36db0c4b
      Evan W. Patton authored
      * Make and/or blocks mutatable
      Co-authored-by: default avatarXueqi Fan <xueqifan@mit.edu>
      
      Change-Id: I9962994dd63381016f9ca187d5e49ac1193c1596
      
      * Update documentation for and/or blocks
      
      Change-Id: I817a4e3362fc089b86d3473858f7be13a538211c
      
      * Fix logic bug with operator dropdown
      
      Change-Id: Id6739a0e534e63d20963a70e23b94d8dfc6968f6
      
      * Fix synchronization of dropdown and label fields on load
      
      Change-Id: Ie68a5d67a0e749232c832f7840a20f3f92622899
      
      * Handle primary slots more robustly in mutator
      
      Change-Id: I3ca5118684b37751ed4ef3d11006dfa224efaff3
      36db0c4b
    • Evan W. Patton's avatar
      Implement copy and paste support in the designer (#2151) · 2b3e603d
      Evan W. Patton authored
      * Implement copy and paste support in the designer
      
      This change adds support for copying and pasting components in the
      designer. It handles the entire tree from a given component (and
      supports multiple roots for if we allow multiple selection in the
      future). Name substitution will occur if a component exists with the
      same name when pasting. Top level blocks referencing the copied
      components are also included in the operation. Holding the shift key
      while pasting will disable pasting the event handlers.
      
      Resolves #726
      Resolves #840
      
      Change-Id: Ica9637f8d07e7287cd698248c60533a5e10af752
      
      * Allow "copying" a MockForm by copying all of its children
      
      Change-Id: Ifbb3ade0cebf4a2285f79459ddd80a3359b02819
      
      * Implement copy-and-paste of Form
      
      Change-Id: I5f0df1b775b9b6ac4fb9bddf188ce5b7adae53e9
      
      * Fix pasting of visible and nonvisible components
      
      Change-Id: I034a853118b079551d80b123ecba2ed6708e5984
      
      * Add documentation for copy and paste functionality
      
      Change-Id: I7dd70e7ae66e8bd186f3bfb1059a68fffa931214
      2b3e603d
  2. 09 Jun, 2020 1 commit
  3. 08 Jun, 2020 1 commit
  4. 29 May, 2020 2 commits
  5. 23 May, 2020 1 commit
  6. 13 May, 2020 1 commit
  7. 07 May, 2020 5 commits
  8. 04 May, 2020 1 commit
  9. 28 Apr, 2020 1 commit
  10. 27 Apr, 2020 1 commit
  11. 17 Apr, 2020 2 commits
  12. 16 Apr, 2020 2 commits
  13. 15 Apr, 2020 2 commits
    • Evan W. Patton's avatar
      Implement checkstyle rules for App Inventor (#2149) · 11512a65
      Evan W. Patton authored
      * Implement checkstyle rules for App Inventor
      
      This commit implements checkstyle for App Inventor's Java code. The
      App Inventor style rules are based on the Google style rules, with an
      exception added for methods in the components/runtime package that are
      annotated with `@Simple*` or `@Design*` annotations. The App Inventor
      specific rules are placed at the end of the appinventor_checks.xml
      file.
      
      In addition, there is a script called checkstyle_git.py that is
      written in Python 3 and will check the git diff against the rules by
      running checkstyle on the changed files and crossreferencing the line
      numbers with the checkstyle output. This can be used as a git
      pre-commit hook to check that changes conform to the style guide. The
      script returns -1 on error, which will abort the commit until the
      changes confirm. This behavior can be bypassed by exporting the
      BYPASS_CHECKSTYLE environment variable.
      
      These two changes are made available as ant targets:
      
      - `ant checkstyle`: Run the checkstyle_git.py script to check the
        git diff for problems.
      - `ant checkstyle-all`: Run checkstyle on the whole repo (slow).
      
      Change-Id: I26c6049bd49d1ce3f9b8dbd48f8f115a89fb5b52
      
      * Revamp checkstyle-git script logic
      
      Change-Id: Ie417057b2d009ba70279e70df102851b2f4552cd
      
      * Add custom checks for EventDispatcher in @SimpleEvent
      
      Change-Id: I72a704e9f8d489aa08cefd50ca180b1130b3e5fa
      11512a65
    • Ramanathi's avatar
      Implement high-res download blocks PNG (#2152) · e1122b90
      Ramanathi authored
      e1122b90
  14. 14 Apr, 2020 3 commits
  15. 13 Apr, 2020 2 commits
  16. 09 Apr, 2020 3 commits
    • Jeffrey I. Schiller's avatar
      Another fix for WebRTC · 923cc0d0
      Jeffrey I. Schiller authored
      Cleanup the code that deals with detecting connection failures. This
      change results in a more stable experience on Firefox. It also ensures
      that any closed WebRTC connection is cleaned up properly. This means
      that if the Companion disconnects due to the Companion being closed, or
      a network failure, a new connection can be made reliably without having
      to reload App Inventor in the browser.
      
      Change-Id: I35ccba26729d7c870201165cb3821991a6f523ee
      923cc0d0
    • Jeffrey I. Schiller's avatar
      Update Companion Version to 2.58a · 3d058a32
      Jeffrey I. Schiller authored
      Change-Id: I9a411efca491ad548a9d8560d50b8e8fdb0ef752
      3d058a32
    • Jeffrey I. Schiller's avatar
      Merge branch 'ucr' · 86add128
      Jeffrey I. Schiller authored
      Change-Id: I04821ae6834300478a31556aca32b6ef48367dd9
      86add128
  17. 08 Apr, 2020 2 commits
    • Jeffrey I. Schiller's avatar
      Make WebRTC Connections more robust · 57abaa82
      Jeffrey I. Schiller authored
      It turns out that the iceConnectionState on the connectionStateChange
      event is about a particular ICE Candidate pair, which may not be the
      selected and in use candidate pair. However checking the
      iceConnectionState on the WebRTCPeer object itself yields the state of
      the “selected” and in use candidate pair.
      
      Change-Id: I7d14041300ce82a02fd1bd04b9a940f26216d802
      57abaa82
    • Jeffrey I. Schiller's avatar
      Add support for user supplied Yandex API keys · f3f47f9e
      Jeffrey I. Schiller authored
      Permit the MIT App Inventor programmer to provide their own Yandex API
      key. If they do not provide one, the builtin key (for the MIT
      deployment) will be used.
      
      Having neither a user provided key or builtin key results in an error.
      
      Change-Id: Ieb25514437133162b68fae7741ffdce5a8463d04
      f3f47f9e
  18. 07 Apr, 2020 1 commit
  19. 06 Apr, 2020 2 commits
  20. 03 Apr, 2020 1 commit
  21. 02 Apr, 2020 1 commit
  22. 01 Apr, 2020 1 commit
  23. 31 Mar, 2020 1 commit
  24. 30 Mar, 2020 1 commit