Umbuntu Panel Icons location

I cant bear not knowing how things work, which is one on the reason I use Linux, but even Linux hides stuff from you, one of which is where the icons in your menu bars ACTUALLY live, so they can be backed up/restored and if they are on a second monitor and for some reason cant get to that monitor you can still get to them

Anyway, on Umbuntu, they are located in the directoy

/home/user/.gconf/apps/panel

The individual icons are found in the /objects/object_XX format with a new directory created with each icon (and kept even if they are deleted)
Which icons are are shown where and in what order is kept in the /general/%gconf.xml file

nuff said

Embedded fonts in Adobe air

I know there are nice articles on it here and here by Adobe, but they just did not seem 100% clear when describing embedding fonts in Adobe AIR (also I know I’m supposed to be using ‘spark’ but again this is a support fix)

So to embed fonts in your adobe air app in order to stop your users wrecking your nice layout when they do something like replace the Ariel font on their system (don’t ask), you will need adobe Air 2.5 or better, and be using CSS for text properties (no more in-line stuff, or setting of default in “<mx:WindowedApplication” for you my lad)

Set the font face in the top of your CSS like this

@font-face {
    src:url("../src/com/ldc/Resource/fonts/arial.ttf");
    fontFamily: Ariel;
    advancedAntiAliasing: true;
}

Now the font will be actually embedded in your air application, so the link you use is the referential one to the font file that you have copied from your system font folder into your air project source folders

and then your normal CSS like this will be happy with it

.BaseField {
    color: #580C18;
    fontFamily: Arial;
    fontSize: 12;
    textAlign: left;    
}

that’s it

A quick updates to an old database

Now don’t tell me off for this, and yes its very old and very dodgy, but this kind of thing seems to be creeping up more and more, so I figured it might be of use to someone

A client asked for a quick fix to a existing database, the problem being that a old Domino web database was causing problems, the code that runs when the button was clicked was taking longer and longer (growing data set) and the users were getting impatient and clicking the button multiple times causing the code to run multiple times, the client wanted the button to disable and show a little Ajax swirl when clicked , “no worries” i thought a simple little problem, then i find that this is an OLD db, the button was a actually a notes client button with formula under it on and form that was not either xpages or HTML

So, i ended up wraping the button in a bit of HTML and JS

and changing the ID of the button

here is the code in copy and paste version

<span style="display:none;">**OldStyleButton**</span>
<input type="button" id="AcceptSch" value="Accept"
onclick="document.getElementById('AcceptSch').disabled = true;
document.getElementById('AcceptSchAjax').style.display = '';
document.getElementById('fakeAcceptSch').click()">
<img id="AcceptSchAjax" src="/**PathToFile**/ajax-loader.gif"  width=16px height=16px style="display:none" />

Thankfully because the db was so old, there was no Ajax and a full page refresh is done on the page after the code under the button is complete, which meant i did not have to handle re enabling the button, simple

Now before you attack for the in line JS and no framework or stuff like that, there are reasons for this

– This database has had a lot of developers in its long life and I’m sure i wont be the last, this way might be a bit ugly but you can at least see the bloody thing, I hate bug fixing a database and touching something that breaks a dozen things that you cant see. and dont want to make it worse for the next dev
– Its simple and only changes one design element
– It works

ah well hope its useful, now time to leave the 00’s, and get back to modern problems.

Google Apps Google and the second class citizens

Now I’m a big fan of Google and it’s associated applications. But recently there have been a few cracks that are causing me to reevaluate them as a supplier. mainly to do with their treatment of paying customers, if you have recommended Gmail for domains to a client and they have moved lock stock and barrel on to it. The last thing you want is for them to phone you up six months down the line and ask why they can’t use some feature that they want to use, and I’m not talking about fringe stuff we are talking about

The android app store.
Google groups
Google+

Not only is this embarrassing when dealing with said clients, but those of us that have thrown our lot in with google can’t use our primary email /account with the latest features. so we either have to lag behind the cutting edge and wait for Google to fix the problem or we have to double up on the accounts which makes us look unprofessional (and don’t give me any rubbish about Google’s recent account consolidation exercise, all that did is screw up the secondary accounts that we had already set up forcing us to recreate our secondary accounts as the merged accounts were missing the features we needed)

So Google. I realise you’re not going to give a damn about this but please don’t treat your paying customers as second class citizens. We are your friends and the perfect people to release new features to first.
Because at the moment when presenting cloud mail/app options to a client, when talking about ‘google apps for domains’, under ‘disadvantages’ it will read ‘Google won’t care about you and you will be the last to get the cool stuff ‘

P.S. its still not as bad as being an IBM partner

Old Comments

Sjaak Ursinus(26/07/2011 10:17:07 GDT)

Well at least IBM listen’s to you  they just say they don’t do it because its not commercially interestingwh but at least they listen

Mark Myers(26/07/2011 11:10:12 GDT)

@sjaak Oooooo cutting