Archive for the ‘mobile’ Category

Thought Bubble for Android

Saturday, June 14th, 2014

Let everyone know what you are thinking with Thought Bubble. Type a message or choose one from a fully customizable list of thoughts. Then hold your phone or tablet up to your head to show what’s on your mind. The words of your message are automatically sized to fit perfectly inside a thought bubble on your phone’s screen.


Screenshot_2014-05-31-22-36-44 Screenshot_2014-05-31-22-36-55 Screenshot_2014-05-31-22-37-02

Thought Bubble on Google Play

Thought Bubble source code on GitHub

Posted in Android, mobile, projects | No Comments »

Spin For It for Android

Saturday, May 3rd, 2014

My first Android app, Spin For It, is now available in the Google Play store. Spin For It is a spinning decision maker app that I originally wrote for myself to use on board game nights to determine who goes first. Since I use it all the time, Spin For It has become my “go to” app to write when I am learning to develop software for new platforms.

Spin For It is small, it’s free and it has no ads. So, download it, give it a try, and let me know what you think.


Screenshot from 2014-04-22 12:38:48 Screenshot from 2014-04-22 12:41:02

Spin For It on Google Play

Spin For It source code on GitHub

Posted in Android, mobile, products, projects | No Comments »

Easy Enyo Checkbox Labels

Tuesday, March 5th, 2013

In a recent Enyo project I needed a labeled vertical group of checkboxes for setting the app’s preferences. I was hoping that I could just put a bunch of onxy.Checkbox components from Enyo’s Onxy widget library inside a Group component and use the content property of each checkbox as its label. This is the code:

    kind: "Group",
    classes: "labeled-group",
    highlander: true,
    components: [
        {kind: "onyx.Checkbox", content: "Option one", checked: true},
        {kind: "onyx.Checkbox", content: "Option two"},
        {kind: "onyx.Checkbox", content: "Option three"},
        {kind: "onyx.Checkbox", content: "Option four"}

Unfortunately, the results weren’t quite what I expected:


The content text was displayed inside the checkbox and the checkboxes were positioned horizontally instead of vertically. Happily, just a little bit of CSS solved the problem:

.labeled-group {
.labeled-group > li {
    width: auto;
    padding-left: 35px;
    line-height: 30px;
    margin: 0 6px 6px 6px;

With the above CSS, the checkboxes were displayed just as I was expecting:


So, how does it work? An Onyx checkbox is just a DIV tag with a background image which displays its state (checked or unchecked). First, we set each checkbox to display:block so that it appears on its own line. Next we give it a width:auto so that it takes up the entire width of its containing element. To get the label text (the checkbox’s content property) out of the checkbox itself, we use padding-left to move the text to the right. to vertically center the text, we set the line-height to the height of the checkbox.

While we’re playing around with the CSS, we’ll add some margins to give some extra space between the checkboxes and the containing element.

A nice side effect is that the user can tap on the label as well as the checkbox to select it since the checkbox DIV is now the width of the containing element.

Tested in Windows on Chrome version 25, Firefox version 19 and IE 10 and on Android Chrome version 25.

Tags: , , , , , ,
Posted in mobile, projects, web | 1 Comment »

Enyo 2 Spin For It App on Open webOS and Android

Saturday, February 9th, 2013

I play a lot of board games and usually the player who goes first is chosen randomly. Rolling a die or Rock, Paper, Scissors are popular ways of doing that. At one game night a player pulled out a little die cut metal pointing hand, placed it on the table and spun it to determine who went first. I thought it was a handy (pun intended) little thing to have, but decided to go one better and create a virtual spinning hand in an app. And that’s how Spin For It was born.

The original app was written for Palm’s (and later HP’s) webOS phones and was written in JavaScript. The second iteration was written in C# for Windows Phone 7. There are project pages for both versions of Spin For It on this site.  Now I’m working on a third iteration using the Enyo 2 JavaScript framework so that the same code will run on multiple device platforms.

I played around with an Enyo 2 version of Spin For It a while back, but didn’t go far with it. However, two recent developments prompted me to take another look at my Enyo 2 Spin For It. The first development was getting Open webOS up and running in VirtualBox and the second was getting a Nexus 4 Android phone to replace my aging Windows Phone 7 phone. I wanted something simple that would show off an app written with Enyo 2 running on different devices with different screen resolutions and operating systems. I also wanted a new version of Spin For It for my new phone, but didn’t want to invest in learning Android development in Java just for a simple app. So, after tweaking the code a bit to resize the pointer based on the screen size, I was able to get it working in both Open webOS and Android by running my app through PhoneGap Build to package it up for Android and copying the application folder over SSH to /usr/palm/applications on Open WebOS running in VirtualBox.

Spin For It still needs some work to get it up to the level of the previous webOS and Windows Phone versions, but it’s workable as-is and my interest has been renewed in adding the features from those previous versions. I’ll create a project page for it once it’s farther along. Meanwhile, I have put the source code up on GitHub.


Screen Shots:

Open webOS Spin For It running in VirtualBox

Open webOS Spin For It running in VirtualBox

Android Spin For It running on a Nexus 4

Android Spin For It running on a Nexus 4


Posted in mobile, projects | No Comments »

Download Gamer’s Dice For Free

Thursday, May 12th, 2011

Get these special promotions while they last! We’re giving away 100 copies of Gamer’s Dice in each of the countries supported by the HP webOS App Catalog. Click one of the links below to get your copy. Promotion ends June 30, 2011.

Gamers Dice – United States
Gamers Dice – United Kingdom
Gamers Dice – Spain
Gamers Dice – Mexico
Gamers Dice – Ireland
Gamers Dice – Germany
Gamers Dice – France
Gamers Dice – Canada

Gamer’s Dice is an electronic die roller fro your favorite games. Roll up to 20 regular 6 sided dice or choose from several other popular die types used in many role playing games and board games.

Gamer’s Dice keeps a history of the most recent 100 rolls and can group rolls with totals.

Your most used die rolls can be named and saved so they can be rolled with the tap of a single button. Actions based on the result of the die rolls (such as displaying messages, playing sounds and rerolling dice) can be assigned to saved rolls.

Gamer’s Dice features die roll sounds and dice can optionally be rolled by shaking your phone.


Posted in dragongears news, gamer's dice, mobile, products, projects, webOS | 1 Comment »

Dragongears news RSS feed