Codea 2.6.3 (132 & 133)

  • Fixes Codea disconnecting your bluetooth headphones and putting your music on public display when playing sounds in the app, sorry about that!
  • Fixes bug where using noSmooth + line could cause a crash
  • [Beta] New code editor now supports sidebar for documentation and dependencies
  • [Beta] Please let me know what you think of the sidebar UI here, try to break it too
  • [Beta] You can invoke the sidebar by going to the Do menu and choosing Documentation or Dependencies
  • [Beta] Note: new dependencies view is non-functional at the moment

Special note: please try to break the sidebar in the new code editor :smiley:

@Simeon - still can’t add blank tab or Class tab - not yet implemented?

Now starting to look neat and tidy. Not sure about the edit menu, just preference but you could slide out the menu horizontally over the tabs and back when selection made or return button pressed - just an idea. I find horizontal buttons easier than menus.

@Simeon - just found another funny with current keyboard. Added a ne tab named blan. Pasted a lot of code in. Tried to scroll the text but it wouldn’t. Switched to main tab and only had a little code so no scrolling, then switched back and new tab scrolled properly.

@Simeon Where’s the Craft dependency in the new editor. Also, I copied a craft program into a new project, when I ran it the screen was blank. I exited Codea and came back in and ran it, it gave Craft errors because Craft wasn’t checked as a dependency.

Bluetooth headphones no longer seem to disconnect. However, when re-opening/closing Codea and sometimes when running or stopping a Codea project, music playback is interrupted for a split second.

@Simeon I think you need to change what shows in the dependency list. Create some way that a project will show as a dependency instead of every project with 2 or more tabs.

@dave1707 at the moment I have made it so that projects which are imported are at the top. And when you select one it floats to the top

Are you suggesting you would need to mark a project as being available as a dependency before it shows up in the list?

On the Craft dependency I’ll either add it again or I was thinking… just get rid of it and make every project include Craft.

@Leon thanks for checking, not sure how to get rid of the stutter when you switch apps. I’m looking into it, but it seems like when I change the audio session category to playback and record (for the mic library) it stutters.

@Simeon I have a lot of projects and just a few of them are multi tab which show in the list. None of them would ever be used as a dependency. I can’t imagine having a dependency list with a couple hundred projects. I think there should be a way for someone to mark their projects as dependencies. Maybe something like saveProjectInfo dependency=yes.

PS. As for the Craft dependency, I don’t know if I like the idea of every project including Craft. I’m not sure exactly what that does to a project. Does that always affect the code or only if a Craft function is called.

PSs. Did some checking and it’s only a few more bytes to include Craft as a dependency. Below is what’s added to the plist file, so I guess it doesn’t matter if Craft is always included.

<key>Addons</key>
	<array>
		<string>Craft</string>
	</array>

@dave1707 it just includes the craft code so you can use it. Might make projects a little slower to start (going to measure this)

@Simeon I was able to recreate the bug where the code wouldn’t scroll in the new editor.

  1. Create a new project then close it.
  2. Go to another project and copy some code, more than a page worth.
  3. Open the original project, delete the code and paste in the new code.
  4. Try to scroll the code, it doesn’t.

@Simeon When I try to scroll the new dependency list, it’s rather jerky in the beginning. As it slows down, the scrolling smooths out. Actually, in the old editor, when I try to scroll the project list, the same thing happens. That was also happening in previous releases. Maybe they’re related.

@dave1707 - more or less what I did, I think it may be due to the new tab retains the code/page length of the main tab and doesn’t update it when new code is pasted in.

On the Craft dependency - question, is the Codea runtime loaded into memory when you run Codea code? if so then I would expect the Craft code to be loaded if it is included as a dependency. So the memory could be still taken up. Not a problem if you have a machine with loadsa memory.

@Bri_G @Simeon That’s not what I ran into. I posted a lot of code into the original project and made sure it scrolled. I closed it and copied long code from another project. I went into the original project, deleted the code and pasted in the new code. It wouldn’t scroll. So I don’t think it has anything to do with what was originally there.

@Simeon Ignore the jerky scrolling of the project list in ver 132. I just tried it and the project list scrolling was smooth no matter how fast I tried to make it go.

@dave1707 - so deleting the code reset the code/page size and it didn’t correct when new code was pasted in.

@Simeon Something a little off. If I have a project opened in the new editor and slide my finger from off screen on the left onto the screen, the editor moves the text screen about a half inch to the left and moves it as I move my finger right until it’s back to normal. I can’t do it every time, but I can make it happen a lot.

@Bri_G Even though the old code scrolled OK, the new pasted code wouldn’t scroll.

@Simeon I can make the screen slide a half inch left all the time now. This is on my iPad Air, with the new editor I’m not sure if this happens on other devices. Open a project in the new editor. Near lines 16 and 17, slide you finger from off screen onto the screen. The text screen should move 1/2 inch left. It only seems to happen near lines 16 and 17.

@dave1707 how did you find that! I was worried someone might find that tiny touch area when the sidebar is hidden but I couldn’t trigger it myself so thought not to disable it. Obviously I need to disable it

@Simeon I don’t remember what I was doing when it first happened. I could make it happen every now and then and it took awhile to figure out how to do it all the time. I guess if something can happen, eventually someone will find it.

Build 133 notes:

  • [New Editor] Bug where you could drag from the left edge at a specific point and cause the editor to shift back and forth slightly
  • [New Editor] Attempt to improve scrolling performance of dependency list
  • [New Editor] Bug where pasting a lot of text into an empty file could sometimes limit scrolling
  • [New Editor] Project dependencies float to top when selected, still non-functional though
  • Bug where action parameters defined in global scope did not correctly run on first load of project
  • Memory leak with legacy code editor
  • Bug where a project’s buffer order could be incorrectly loaded if it received an automatic dependency fixup
  • You don’t need to include Craft any more, all projects will include it by default (setting needs to be removed from legacy dependency view)