Author: root42
Getting halfway sane mouse click behaviour in Gimp on OS X
I can definitely recommend the X11 packages from the XQuartz project. They are more up to date than the X11 server shipped with OS X. Also, the Gimp packages over at Lisanet are fantastic, too. However, the default click behaviour of X11 or rather quartz-wm is not optimal, especially for the Gimp. Usually I like focus follows mouse, but for an interface like the Gimp, it does not make sense. You always inadvertendly focus on an image, that you did not want to focus. Since there is no delayed ffm mode in quartz-wm, I opted for click-to-focus instead. However, quartz-wm swallows mouse clicks on inactive windows. This is also not worthwile for the Gimp with it’s extra tool palette windows. So the soluation is: click-through combined with click-to-focus. Easy:
defaults write org.macosforge.xquartz.X11 wm_click_through -bool true
defaults write org.macosforge.xquartz.X11 wm_ffm -bool false
In newer releases you can set this also from the preferences (⌘,). If you are using the X11 version shipped with OS X, you can most probably just replace org.macosforge.xquartz.x11 with com.apple.x11.
I love Python
It’s so easy to quickly code something and calculate something. The following snippet actually computes the number of possible cards in the game Tsuro. The game ships with 64 cards, but my colleague and I suspected that those were not all possible combinations (eliminating all rotational symmetries). So we did some quick calculations, and came up with 105 possible cards. So I wrote this short Python code to enumerate all possible cards then:
def makeCards(cards, card, connectionSet):
if connectionSet == set([]):
for i in range(1,4):
c = shiftCard(card, i)
try:
cards.index(c)
return cards
except ValueError:
pass
return cards + [card]
start = connectionSet.pop()
for i in connectionSet:
newConnection = sorted([start, i])
cards = makeCards(cards, sorted(card + [newConnection]), connectionSet - set([i]))
return cards
def shiftCard(card, i):
newCard = []
for c in card:
conn = sorted([(c[0] + 2 * i) % 8, (c[1] + 2 * i) % 8])
newCard = sorted(newCard + [conn])
return newCard
mycards = makeCards([], [], set([0,1,2,3,4,5,6,7]))
print mycards
print len(mycards)
How to make Hybrid Apps that run on 3.1 and higher devices (iPod, iPad and iPhone)
This fantastic blog entry helps you to actually use the UserInterfaceIdiom message, which is only available in iOS 3.2 and higher. This way, you can actually build a hybrid iPad / iPhone app that even runs on the original iPhone, which only comes with iOS 3.1 at best.
iCal woes: Event invite for Google Calendar is never sent
Ok, here is another bugger that annoyed me for quite some time: I am using Google Calendar as my main method of dealing with appointments and shared calendars. I use the mostly fabulous Apple iCal for managing those dates. However, if I create an event to be shared with several people, and I try to send an invitation to those people, this doe not work. In the event properties, I enter a list of Email adresses, hit “Send” and it never gets sent. The event is marked as “waiting for answers”, though. But that will never happen… So I have to fire up the Google Calendar website and resend the invitations manually. Bit annoying.
Mystery calls by my iPhone
In the last couple of days my iPhone made a couple of ghost calls. I.e. it called some people from my address book, without me doing the actual calls. I think I found the reason for that now. When you hit the home button for several seconds, an iPhone 3GS with iOS 3.x or 4.x will go into voice command mode. This even works when the phone is keylocked. The voice function is not so robust and will misinterpret quite a few background sounds, noises and voices for commands. I couldn’t yet make 100% sure that this is how it happened, but it seems to be the only possibility so far, since my phone is always keylocked, when I carry it in my pocket. So I figure the home button was accidentally pressed, and thus the voice command was activated. Will try to investigate this further…
Wishlist item for the iPhone: Clickable Maps Icons
What annoys me most in the maps application of the iPhone: You cannot tap or click on symbols. E.g. when you tap a bus-icon in the maps.google.com website, you will get a popup with the name of the bus stop and the lines that go there. This is not possible on the iPhone. I also use the fantastic Fahrplan application, however if you do not know the name of the bus stop you want to go to, you’re out of luck.
OS X graphics driver bugs
On both our MBP as well as our iMac I can get OS X to crash when using a perfectly fine fragment shader, which works well under Linux. Both under Linux as well as under OS X I am using NVIDIA hardware. This is what the crash looks like:
OS X crashing when using complex GLSL shaders from Arne Schmitz on Vimeo.
Update 2010-07-13: Apple already wrote back, and requested a sample app, which I provided. Let’s see if they can figure this out. Kudos for reacting so quickly!
me.com woes
I have been using me.com for a while now, and am relatively happy with it. The automatic sync of the data between my work laptop and my iPhone is absolutely priceless. Now I’ve upgraded to the family account to share the (for my needs) ample 40 GB with two friends. Turns out, the other two accounts can only get 5 GB of storage. Ouch. That sort of sucks. Right now, 10 GB cannot be used at all, cause they are reserved for two more people. Why am I then paying for the extra storage anyhow?
VLC 1.1.0: Broken deinterlace on OS X
Well, I was wondering why some DVDs looked jaggy on OS X when watched with VLC 1.1.0. It seems deinterlacing on VLC for OS X is currently broken. The bug is fixed now, but we probably have to wait some more time for a 1.1.1 release.
