1. 04 Nov, 2016 1 commit
    • Jeffrey I. Schiller's avatar
      Fix Race Condition in Asset Loading · 72e0ca15
      Jeffrey I. Schiller authored
      Asset loading is performed asynchronously and usually happens
      quickly. However with many or large assets, the transferring of the
      asset to the device (or emulator) may not finish in time, resulting in
      an error and a re-try (which eventually succeeds).
      
      We re-factor the asset transferring code to properly handle its
      asynchronous nature using appropriate callbacks.
      
      Change-Id: Idf0170d9a6d929a7ca964b3852811b2b09dc49ce
      72e0ca15
  2. 21 Oct, 2016 1 commit
  3. 21 Sep, 2016 1 commit
  4. 19 Sep, 2016 1 commit
    • Evan W. Patton's avatar
      Fix erroneous reference to getProcedureDef · 54611776
      Evan W. Patton authored
      When changing the called procedure name in a procedure block that
      returns a value, the parameter sockets disappear and the block becomes
      unusable. This is caused by the fact that the code looks to call
      getProcedureDef but it is undefined, even on procedure blocks. The
      issue was that it is supposed to be copied from the no return version
      of the procedure call block, but the reference was wrong and so the
      value was undefined. This commit fixes the erroneous reference in
      order that the behavior is correct. This also has the side effect of
      fixing the (unreported?) bug that the "Highlight Proceduce" context
      menu action was not working due to the same issue.
      
      Fixes #844
      
      Change-Id: I7041c3ab05a89c1a710128a7d91a543bb601940a
      54611776
  5. 14 Sep, 2016 2 commits
  6. 06 Sep, 2016 1 commit
  7. 29 Aug, 2016 1 commit
    • Jeffrey I. Schiller's avatar
      Mitigate Race Condition · 17b61875
      Jeffrey I. Schiller authored
      Mitigate a Race Condition where blockly reads the component database
      before the project has finished initializing the component
      database. This race only tends to manifest in projects with several (or
      many) screens each of which have a significant number of blocks.
      
      Change-Id: I073c4fb30a522d59e6ba060b39183798ce9ac10e
      17b61875
  8. 27 Aug, 2016 3 commits
    • Jeffrey I. Schiller's avatar
      Fix Android Servlet · f26f6a03
      Jeffrey I. Schiller authored
      Android Servlet let’s you download your packaged apps to your own
      device.
      
      Change-Id: I1b074fc65591642e8e8e9fe468609cd6a7d5af2b
      f26f6a03
    • Jeffrey I. Schiller's avatar
      Remove Obsolete Code · 9325bf0a
      Jeffrey I. Schiller authored
      Remove code that was used to communicate with the AI Classic Blocks
      editor. It is no longer in use.
      
      Change-Id: I5a1dc1e3a4081723a74c4370265158f29cd4ae34
      9325bf0a
    • hal's avatar
      Add VR paper writeup · e2303697
      hal authored
      Change-Id: I1d50c87acab77adc301b551ee32570d81a7a90f7
      e2303697
  9. 23 Aug, 2016 1 commit
    • Evan W. Patton's avatar
      Update ActivityStarter to use TextUtils.isEmpty(String) · 8da740e6
      Evan W. Patton authored
      ActivityStarter uses String.isEmpty(), which was introduced in Java
      1.6. However, older versions of Android are only binary compatible
      with Java 1.5, such as the version used in the emulator. This causes
      the ActivityStarter to throw an exception when starting an activity.
      
      This commit fixes the issue by replacing the call to String.isEmpty()
      with android.text.TextUtils.isEmpty(String), which is available since
      Android API version 1. This is consistent with other checks in
      components, such as Canvas and Web.
      
      Closes #827
      
      Change-Id: I5c26bab97421a86b3d62888af447d999af38450a
      8da740e6
  10. 21 Aug, 2016 2 commits
    • Jeffrey I. Schiller's avatar
      Do not erase UserSettings when App Inventor Closed · 412e928e
      Jeffrey I. Schiller authored
      There is a race condition where if App Inventor is closed (browser
      window closed) while the system is still initializing, the user’s global
      settings will be over-written by an empty settings object because the
      global settings have not finished loading. We detect that with this code
      and avoid over-writing the settings.
      
      Change-Id: Icfcf8204b860984bf36e2a7d525ebf5814a2ffd8
      412e928e
    • Jeffrey I. Schiller's avatar
      Improve Project List Loading time · 68de59b9
      Jeffrey I. Schiller authored
      Generate the user’s project list by doing one bulk API call to to the
      datastore to fetch project meta data.
      
      Change-Id: Ie3a93126b22e2292bc4b270d4d54c5c382880cf9
      68de59b9
  11. 16 Aug, 2016 1 commit
  12. 08 Aug, 2016 1 commit
    • Jeffrey I. Schiller's avatar
      Add a No-Op function · 4a61eb97
      Jeffrey I. Schiller authored
      Add a No-Op function. Along with a session idle timeout and session
      renew time, we can ensure that closed browsers (which will stop
      performing no-op operations) will be logged out.
      
      Change-Id: Ibdd1a55b172fc2aad2c8bed012ae86508d1d025b
      4a61eb97
  13. 30 Jul, 2016 1 commit
  14. 29 Jul, 2016 2 commits
    • Jeffrey I. Schiller's avatar
      Sanitize the HTML placed in a Label · 7d21acba
      Jeffrey I. Schiller authored
      Now that we support HTML markup in Labels, we need to make sure it is
      safe to display in the user’s browser.
      
      Change-Id: I17cd06a4ade1e7a58ffeb9ba256ac83a166afd0d
      7d21acba
    • Jeffrey I. Schiller's avatar
      Pass the values of locale,repo and galleryId · 82efdcf8
      Jeffrey I. Schiller authored
      “repo” is used by the template code to indicate a user supplied template
      repository (so you can build your own webpage and link to App Inventor
      with something like
      http://ai2.appinventor.mit.edu/?repo=<myrepo>. Similarly the galleryId
      value is used to point to an App in the Gallery which should be opened
      upon login. The locale value determines which language App Inventor
      should start in.
      
      This commit fixes how we handle these values as we move from the client
      application to the LoginServlet and back to the client application so
      that they are preserved.
      
      Note: A person’s very first login does not preserve these values because
      the code that displays the terms of service fails to preserve them. This
      is an old bug that we do not fix here (but can at a later date).
      
      Change-Id: I53768cfaadd12175e3c1fe821e58024d984afcfa
      82efdcf8
  15. 27 Jul, 2016 2 commits
  16. 26 Jul, 2016 3 commits
  17. 24 Jul, 2016 1 commit
    • hal's avatar
      Change division by 0 to show generate an error. · 93810c8c
      hal authored
      We trigger an “ErrorOccurred” event when we attempt to divide by
      zero. This can be handled by the App Inventor programmers. If it isn’t
      handled, a Notification is generated to the end-user. If the numerator
      is non-zero, +-INTEGER_MAX (2147483647) is returned. If the numerator is
      0, then a 0 is returned.
      
      Change-Id: Ib323c692528fd331c33fcd64de5caa24c2ff9126
      93810c8c
  18. 20 Jul, 2016 3 commits
    • Lokhin Cheng's avatar
      Disable Activity Starter on null activities · 5ac4f709
      Lokhin Cheng authored
      Activities must now have an action specified
      
      Change-Id: Icafa0edbc3bec4afdb4f4ba12cf68d15f2a6a8a8
      5ac4f709
    • Jeffrey I. Schiller's avatar
      Merge branch 'master' into ucr · 02a80261
      Jeffrey I. Schiller authored
      02a80261
    • Jeffrey I. Schiller's avatar
      Create our Own Cookie · 74370bc8
      Jeffrey I. Schiller authored
      Instead of using App Engine sessions, create our own cookie
      instead. This cookie contains all of the session state itself, encrypted
      and mac’d so that the end-user cannot tamper with it.
      
      The cookie itself is constructed using Google’s Protobufs code and
      encrypted with the Keyczar library
      
      Change-Id: Icde67c34bd3828a488876f6a1c0800fb86d7e7b2
      74370bc8
  19. 17 Jul, 2016 1 commit
    • E-H's avatar
      ListView returns proper selection Index · 81838cbd
      E-H authored
      The returned value of the selection index in a ListView is now
      independent of any filter that is applied. So it is always based on the
      position in the list that is given ListView to select from.
      
      Change-Id: I50bcf8d7ed21dbd06dcbca81fec2a9d631f0b7da
      81838cbd
  20. 15 Jul, 2016 1 commit
    • Justus's avatar
      Support upgrading of extension components · 6f9b348a
      Justus authored
      You can now load a new version of an extension, provided it has the same
      package name, over a previous version. Any incompatible block changes
      between the old and new version will result in the blocks being marked
      “bad”. The MIT App Inventor programmer then has to do some cleanup, but
      this is way better then having to delete the old component, which
      removes all associated blocks.
      
      Change-Id: I05ad39e16dcb8ea298091fa01338d5cf6c16c23e
      6f9b348a
  21. 14 Jul, 2016 2 commits
  22. 13 Jul, 2016 1 commit
    • Thomas Oropeza's avatar
      Gallery Moderation: Update Message Sent to User · f6d78b5b
      Thomas Oropeza authored
      Refers the user of an app that has been reported to the Terms and
      conditions when deactivating it. Also now it is required to add a
      description when reporting an app (Makes moderation easier).
      
      Change-Id: I59ecfe1bf38c33cf4ab1dcf3c3f17b5ead750fe8
      f6d78b5b
  23. 11 Jul, 2016 1 commit
    • Kseniia Shumelchyk's avatar
      Added Scrollable Arrangements · d621adfd
      Kseniia Shumelchyk authored
      Add Scrollable versions of Horizontal and Vertical Arrangements
      
      Author: Kseniia Shumelchyk <shumelchyk@gmail.com>
      Author: Jeffrey I. Schiller <jis@mit.edu>
      
      Change-Id: Iddb20dca7835de8dad548dbb8043a600b60f9ded
      d621adfd
  24. 10 Jul, 2016 2 commits
    • hal's avatar
      Add numbers to the designer alignment dropdowns · 15f56833
      hal authored
      Add numbers to the property values shown in the designer dropdowns for
      aligment, as requested in issue #182
      
      Change-Id: Ia57d2911e2389436b37fe9a8ecb53a007ebca691
      15f56833
    • Lokhin Cheng's avatar
      Add Comments to Block Save Images · a5fb4ede
      Lokhin Cheng authored
      Fixed the issue where text in comment blocks disappears when the user
      downloads blocks as images
      
      Change-Id: I00339e03fda72d3b563631b536e6391ee05332b5
      a5fb4ede
  25. 01 Jul, 2016 1 commit
  26. 27 Jun, 2016 1 commit
  27. 19 Jun, 2016 1 commit
  28. 15 Jun, 2016 1 commit