OnTopic -- a non-game Codea app


This little app was spawned after I had a 30 minute meeting that sprawled over an hour and a half. So I made an app to track the topics in a meeting or conference session and show the time remaining. I’m already driving the folks in my office nuts with this, and plan to compile for the app store this weekend if no big problems turn up.

This version is currently in beta land only because I used the isKeyboardShowing() function.

Hi @Mark, that’s an interesting application you have come up with! Great for planning and keeping a meeting focussed. I got the funny sound once, but couldn’t figure out what that was meant for… :slight_smile:

I think it would be good to provide visual feedback about whether the play or the pause button had last been pressed - perhaps draw it in another colour?

Just for the fun of it, could you post this in such a way that I could try the split-on-import facility of the new import?

I should have thought of that the first time, Andrew. Try this one…


You have some brilliant UI concepts in there, @Mark. Really enjoy the stuff you come up with.

Hmm, neither the cut-and-paste import nor the gist are working for me.

The cut-and-paste worked, creating the tabs, but when I run it then I get complaints about Frame not being defined from within the setup() function. The gist runs, but gives me a blank screen.

I tried this just now and wondered whether it was the order of the tabs. So I rearranged them to match how Mark had laid them out originally, but I kept getting those errors too. Then after some fiddling and reverting it suddenly worked… Very very weird. I suspect that the paste import process might be doing funny things to the perceived tab order. I’ll just have a peek now with iExplorer.

My info.plist looks right when I looked at it in the filesystem. But still, no dice.

A-ha. Debugging is always useful. I added a load of print("Loading XYZ") statements at the top of each tab and all of a sudden it works just fine.

I think it’s inserting incompatible characters (non-breaking spaces). iOS does this with copy-paste for some reason. Will look a how to repair it.

When I copy and paste @Mark’s gist (the second one) under 1.4.5 (5) on device it works fine.

Edit: I am unable to re-create this issue by emailing myself various copied projects. Is anyone still having issues with this?

Implemented @!Fred 's suggestion and added a “flash” when buttons are tapped. I was going to submit this little guy to the app store this weekend, but discovered that I’ve let my Xcode stack slip out of date. Soon enough i’ll be thrashing my way through the process.

@Mark I noticed you do not allow the keyboard to be dismissed, I wouldn’t recommend that behaviour for an App Store app. Apple generally don’t like it if you attempt to work around core features (such as keyboard dismissal).

Thanks, @Simeon. Good catch. I hadn’t intended to defeat the keyboard closure, just to put it back when needed. Off to fix…

Hi @Simeon, I’m still getting errors when pasting from https://gist.github.com/3449070

That’s very odd, I tried pasting from email and straight from the gist on my device and can’t seem to re-create the issue. I am using iOS 6 on device, however, which may behave differently with regards to the pasteboard.

Is the Lua code un-runnable when you paste from the gist? Are there syntax errors?

I put a slightly updated version in a new hub at…


Maybe it’ll work for you, @Fred.

Thanks @Mark, but I get the same error:

error: error: [string "-- OnTopic Beta 3..."]:29: attempt to call global 'Frame' (a nil value)

Pausing playback

The order of the tabs as automatically positioned is: Main, Meeting, AgendaItem, Frame, TimeSlider, Utils.

@Simeon, I still get the error if I move Main after Frame…

Edit: it’s not just because we need to put the tab name and : before the function is it?

That’s the error that I got and which was fixed by adding something to the head of each tab.

I just tried print statements as you did, @Andrew_Stacey, and I still get the error. The print statements work though.

Last week I got it working by accident, but I can’t replicate it!

And another.

I added buttons that let you skip ahead to the next topic or redistribute the remaining time across topics.