Post Image

Sheets and Samples

Over the years we wrote a lot of demos for Codename One as well as a lot of test cases. This can get painful after a few dozen projects each of which with their own version of the JARs and build script. To solve this never ending need to organize samples Steve introduced a new samples folder into the open source project.

Read More
Post Image

Photo Cropping Wizard

A month ago Francesco asked how to implement the common image cropping UI we see in many applications where the user can pan and zoom to decide the cropping area. We implemented that feature by effectively enhancing the ImageViewer class with two new methods...

Read More
Post Image

Asynchronous Media

There are a lot of fixes and new features that I don't get to cover enough as I've been busy on several fronts. One of the new features is support for asynchronous media API's. These let us create a media object without waiting for it to complete. This is very useful if you have a complex UI and want to play a media file while doing other things.

Read More
Post Image

TIP: Reordering Tabs

The Tabs class is pretty powerful and flexible as I mentioned before. One thing it doesn't support is drag and drop to re-order the tabs. Here the flexibility of Codename One takes over and allows us to accomplish it.

Read More
Post Image

Lightweight Text Selection

Text editing is implemented natively in Codename One. This provides a huge benefit as it allows us to ignore a lot of complex topics such as virtual keyboard localization etc. If we had to implement all that logic the overhead of Codename One would have been huge...

Read More
Post Image

Camera Kit Rewrite

The native low level camera API on Android is a disaster. It's often cited as one of the worst API's on Android. To make matters worse there are two separate API's Camera and Camera2 (yes really). You need to use Camera2 where it's available but that means no support for older devices. To solve this we picked the Android Camera Kit library when we started building our low level camera support. This proved to be a mistake.

Read More
Post Image

TIP: Rich View Revisited

A couple of years ago I posted a tip about rich text view which worked out reasonably well. But it's a bit outdated by now and it's worth revisiting. During these two years we published the Facebook Clone which used this component.

Read More
Post Image

Better Error Logging

A common pain point in most GUI frameworks is the hidden stack traces. When we have an app in production we get occasional emails from crash protection which are cryptic and hard to figure out. They usually start with the EDT loop and make no sense.

Read More
Post Image

Zulu Desktop Builds

Sometimes you pick up a task and know in advance it's going to be hell to implement it. Sometimes, the hell you were expecting turns out to be WAY worse than you anticipated. This is the case for modern Java desktop deployment. Amazingly, Java was able to take one of the worse deployment processes possible and make it MUCH worse than before.

Read More
Post Image

The Native Version of Build isn't Coming to iOS

When we released Codename One 6.0 we mentioned that Codename One build is going through the approval process on iOS. We didn't mention that this was a process where Apple repeatedly rejected us and we had to appeal over and over again. 

Read More