Winning the waiting game: DC 1.13 on Opera 10.

Disk Clock latest 1.13. Opera finally fixed their scaled-arc rendering, so Disk Clock now has basic function as an Opera 10 widget. This involved fixing some other Opera related issues. Differentiated some colors. Fixed daylight colors for distant time zones.

Winning the waiting game

The latest round got started when I checked out the Opera 10 beta to see if they had fixed the arc rendering yet. In fact they have. While they were at it, they also added an exception for zero-radius that brought Disk Clock to screeching halt. An extra minimum fixed that easily enough.

More widgets

It was always somewhat of a shame that DC looked a piece of abstract art in the previous versions of Opera, since they included a widget platform based on Dashboard. It’s actually kind of nifty, putting fully transparent widgets on the desktop. It’s supposedly cross platform, but I haven’t had occasion to try windows yet.

I’d actually looked Opera’s system over earlier, and re-arranged my directory structure to be in line with their specs. This made turning DC into an opera widget the trivial matter of adding an xml file. I’ve still got a bit of work to do filling in their style of config/close buttons before I can release it, however.

No preference

Not that the widget looked right the fist time through. I suppose at this point I should mention that Opera’s Dragonfly debugger works fairly well. It turned out that, contrary to Apple, and to Opera’s own widget spec, the preference query function returns an empty string instead of the special value undefined when you query for an unknown value. My process is to set up the defaults and then overwrite them with stored values if any are found. In Opera, it found that all stored settings were the empty string, and overwrote them appropriately. I now query an undefined key on startup, and save the return value for later comparison.

Neither of the problems I encountered appear to affect Disk Clock stable running as a web page, though you’ll need the latest version for the widget configuration file.

One remaining peculiarity is that in OS X Opera maps the Command key to Control, which makes my brief help text wrong. Should I count on Opera users to be aware of this mapping, or find a way to sniff the browser?

A mark of distinction

Back when I first started colorizing Disk Clock, I settled on a spectrum pattern, with a red minute disk and purple out towards the centuries. Unfortunately, this left me with some color compressed areas where the disks were as hard to distinguish as different sized hands ;^) This was especially evident I filled in variants on hours after setting the basic scheme; hour, 2-hour, and 4-hour all ended up shades of green, and my usual setup includes includes all three (I’d actually drop the 2-hour if their were an easy interface for it)

It finally dawned me a few weeks ago that I ought to do something about this. Opera gave me an excuse to work on DC again, even though I ought perhaps to be working on projects related to my summer conferences. No color schemes leaped out at me – perhaps I was over-constraining myself by trying to keep things as similar as possible. After trying some randomly generated schemes with little success, I tweaked the hover detect code to map two dimensions of the HSL color space onto the disk face. I still didn’t find anything I really liked, but settled on changing 4-hour to a darkish red and 2-hour to a pale purple. I also changed the classic-clock 12-hour to a straight blue, giving that set a basic colors theme. On the whole I found that slightly de-saturating made the color combinations less contentious. However, I may reconsider that, since it can also make the 3rd fade segment somewhat hard to see.

Bedtime in Singapore

A while back, my boss was in Singapore. So I plugged the coordinates into DC to see roughly what time of day it was. The light/dark turned out okay, but the marks were the wrong color, so I had to re-jigger my circular interval handling.

Posted Sunday, June 14th, 2009 under Devlog.

Comments are closed.