December 31, 2002
Silk Alpha 2

This may be extremely buggy. This is the first time someone other than me has used it. Never tested on 10.1.5.

Get it here

Version 1.5a2
- Bug Free*
- Fixed a problem that caused the Theme font to be replaced in Cocoa if minimum font size was enabled.
- New applications are now shown when you add them to the Application popup in the Font tab.
- Automatically selects the newly added application.
- Fixed a problem where the RKAlias class would not be loaded if FruitMenu or some other pref panes were clicked before Silk was opened. Blank Items will no longer appear.
- Can now actually delete presets
- Fixed a problem that causes a cocoa exception if you try to add a font by drag and drop onto a font box and there were no previous substitution rules in place. Also fixed the other exceptions that occurred after this fix. I hate exceptions because they sometimes happen deeper down than they should and prefer errors. Thanks to Philippe Martin for finding and reporting this bug.
- Can no longer set a replacement font via the font views (boxes) if there is no original font. This was easier than fixing the bugs that occurred if you tried it. Also fixed all the bugs associated with this change.
- Changed the GUI around a little bit.

*Except for the bugs that exist in silk, of course.

Version 1.5a
- Font substitution
- Theme Font Replacement
- Minimum Font Size
- Moved to .APE
- Some other bugs fixed I can't remember. Like this one caused by a bug in OS X that makes it so Silk can't get the path of a CFM unbundled application using CFBundle.

Known Problems

- Changes may not take effect immediately for the new fonts tab.
- May replace some fonts it shouldn't and might not replace others it should.
- TextEdit (the API, not the Application) selection shows fuzzy pixels. Want to fix this for next version. Not sure how yet.
- Doesn't make sure APE is installed.
- Minimum font size is wacky at times.
- The desktop seems to randomly decide when to draw shadows when Fast Theme font replacement is selected.
- If you have substitution rule for Lucida Grande to some other font and a theme font selected that is different from the rule, you will get some odd results.
- If you replace the font that is the theme font as a font substitution rule, you will get some weird results as well.
- Because of Objective-C's inherent slowness, doing font substitution on a Cocoa app that uses Cocoa text handling (Like OmniWeb and ProjectBuilder but not Chimera) can be extremely painful.
- There may be some memory leaks here and there.

Settings Fonts

- You can drag and drop just about any text selection with font information or object from the right side of the Silk Preference pane to the left side of the Silk Preference Pane's Font Tab or two the "Font Boxes" below the tables. Like if you don't like a font in Internet Explorer but don't know the name of the font, just drag a text selection containing the font onto the Original Font box or the font substitution rule table of the Font tab of the Silk preference pane. I'll make a movie later to explain this.

Posted by rosyna at 05:13 AM
CFReleaseProtector 1.1

I have updated CFReleaseProtector based on one Chris Murphy's problems with applications creating a folder named "Desktop" in the root of his hard drives. This new version will now ask you what do to if an application tries to create such a folder as soon as it tries.
APE is required. To install, just open the build folder in the CFReleaseProtector folder an put the folder named "CFReleaseProtector.ape" inside ~/Library/Application Enhancers/ folder.

CFReleaseProtector will still prevent a NULL value from being CFRelease'd.

Oh Yeah, you can get it here.

Posted by rosyna at 12:37 AM
December 27, 2002
Future plans

A small development update.

Well, we will be releasing Labels X 1.1.1 tonight, that fixes the issues with Recent Items functionality in Mac OS X 10.2. It was our fault, after all; items launched from the Finder were not added to the Recent Items list. All because Apple ditched the idea of opaque data structures in LaunchServices.framework and was accessing IconRef opaque data structure members directly (probably included some private header from IconServices). Not that they have no rights to do so, but IMHO it just breaks the idea of opaque data structures - you are not supposed to know what's inside, but you got a bunch of accessor calls to get anything you'd like. Not the case for LaunchServices, so Labels X was choking up. Fixed it anyway, so look for an update tonight.

Next thing I am working on now is a new version of FruitMenu. It will bring a bunch of needed fixes as well, and some interesting new features I'll highlight during the coming weeks of development.

WindowShade X and minimize-in-place functionality is somewhere in the queue right after that; if SJ will not announce MIP on the MacWorld, that is. Supposedly Apple had removed it because it was not tested/documented enough, but they are at implementing it in a future major OS revision. At least that's what the little birdie whispered to me a while ago. ;) That would be the ideal scenario for both you and us - we'll get an Apple-approved mechanism of doing minimize in place, and we certainly will be able to extend and improve it the way you want it.

Either way, work goes on, I'll take 3 days off on a New Year (31st, 1st and 2nd), but other than that, I am here, working and having fun, too. Cheers! ;)

PS No I haven't forgot about Barcelona recap. I've just been too lazy to finish typing up that blog entry. I'll get over myself and do it soon enough, promise.

PPS This is the first blog entry I did using the most excellent NetNewsWire Pro beta. It works!

Posted by slava at 06:01 AM
December 25, 2002
Merry Christmas!

Just a quick note to you wishing you a Merry Christmas! Thanks for staying with us, reading our pointless and not-so-pointless rants, being users of our products, and just being there. It is you who keeps us going - so keep being there! ;)

Ho Ho Ho.

(No Xmas for me till Jan 7th - we're orthodox here in Russia, so I spend the day working on a FruitMenu update, more on that later).

Thanks again, our users. You kick ass. Seriously.

Posted by slava at 07:13 AM
December 23, 2002
Silk Alpha

This may be extremely buggy. This is the first time someone other than me has used it. Never tested on 10.1.5.

Get it here

Version 1.5a
- Font substitution
- Theme Font Replacement
- Minimum Font Size
- Moved to .APE
- Some other bugs fixed I can't remember. Like this one caused by a bug in OS X that makes it so Silk can't get the path of a CFM unbundled application using CFBundle.

Known Problems

- Changes may not take effect immediately for the new fonts tab.
- May replace some fonts it shouldn't and might not replace others it should.
- TextEdit (the API, not the Application) selection shows fuzzy pixels. Want to fix this for next version. Not sure how yet.
- Doesn't make sure APE is installed.
- Minimum font size is wacky at times.
- The desktop seems to randomly decide when to draw shadows when Fast Theme font replacement is selected.
- If you have substitution rule for Lucida Grande to some other font and a theme font selected that is different from the rule, you will get some odd results.
- If you replace the font that is the theme font as a font substitution rule, you will get some weird results as well.
- Because of Objective-C's inherent slowness, doing font substitution on a Cocoa app that uses Cocoa text handling (Like OmniWeb and ProjectBuilder but not Chimera) can be extremely painful.
- There may be some memory leaks here and there.

Settings Fonts

- You can drag and drop just about any text selection with font information or object from the right side of the Silk Preference pane to the left side of the Silk Preference Pane's Font Tab or two the "Font Boxes" below the tables. Like if you don't like a font in Internet Explorer but don't know the name of the font, just drag a text selection containing the font onto the Original Font box or the font substitution rule table of the Font tab of the Silk preference pane. I'll make a movie later to explain this.

Posted by rosyna at 10:50 PM
December 17, 2002
Bcn/2

Well, well, well. It's me now doing a quick blog entry about Barcelona right down from our hotel's "Cyber Corner" (a room filled with a pre-historic PCs connected to ISDN). We just came down here with Rosyna today and ripped Ethernet cables from these PCs to use in our powerbooks. Finally, I can check email -- due to the fact I am barely subscribed to any mailing lists, I only had 400-something pending messages; only 3 were actually addressed to me, all the reset were mailing lists and spam. How sad.

Anyway, about this place -- it is quite nice, warm, and peaceful. At least its warm for me, but probably not for the most people here -- they seem to have an impression its winter here -- so they wear leather jackets, sweaters, and all that stuff. I think I am the only crazy one wearing a t-shirt and a shirt, even not wearing any gloves! ;) It's +15C (59F) here on average, and it is a decent temperature for me (compare to -15C (5F) I'll have to expose myself to when I get back to St.Pete tomorrow).

Rosyna covered up the generic impressions of this place in the previous blog entry, so I guess I am feeling a wee bit lazy to do it now; just a few random points about this place:
- metro system is easy to use and doesn't costs much;
- people are generally friendly and it doesnt takes too much effort to speak to them (its a mix of weird monkey gestures I make and English with heavy Russian accent);
- the food is nice, except that Rosyna had a big disappointment with Mexican food here - it was not spicy at all;
- the wine is great too (I personally prefer Spanish wine to French wine anyway);
- the discos and girls are pretty nice and outgoing as well.

Either way, I'll be leaving to St.Pete tomorrow where I can finally get back to work, post some pictures online, and make a more extended blog entry. Thanks for your attention, see you next time!

(blech: who said this is a purely technical blog? yo? =)

Posted by slava at 07:29 AM
December 13, 2002
So I´m in Spain

Ok, so me an slava are here in Barcelona, Spain. He's out shopping for underwear right now and I'm in an internet café (Alt+130) using some PC here. I could not find any place here to hook my iBook up to here and that's a... bummer. I only found this place because slava found a map to it in the hotel and he's good at following maps. They keep playing Michael Jackson music at this café...

While exploring the city, we found some neat shops on some of these streets and the the Rambla mall thingy. We thought they were unique. Then we realized that there are about 5 kinds of shops in Barcelona and they all sell the same stuff: Jewerly, T-Shirts, general clothes, electronics, and raw meat or pastries.

Speaking of meat, I've noticed something else odd about this place, their meat looks real. Their bacon looks like it came from a pig, their sausage looks like it was really wrapped in something (and tastes funny), and their seafood looks real. Compare this to the United States where everything looks fake and processed. The sausage looks like it was not wrapped and has a uniform shape, the bacon looks straight, And the seafood is "groomed". I like the processed looked more as it distances me from realizing that an animal was butchered horribly and en masse. This gives me comfort and doesn't decrease my appetite as much.

One more annoyance of Spain (Barcelona at least). They don't have enough soda! In the US I go to a restaurant or fast food place and they just keep bringing more and more soda over even if I don't ask for it. Here they give me little 20cl. bottles of coke and I have to pay for each one. At the seafood place we went to yesterday, I went through 5 bottles and that's low for me! I kept asking for 2 bottles at a time. The first time I did this, the busboy(?) brought out 2 glasses, one for me and slava. The waiter told him they were both for me and the busboy(?) looked shocked. Luckily, slava had purchased two 2 liter bottles of Coke earlier so I could get more when we went back to the hotel. Personally, I prefer Pepsi (what is Pepsi Max?) since Coke makes my butt bleed. I bought six 33cl. bottles of Pepsi on the way here.

Languages are a funny thing. Neither slava nor I speak any Spanish. We can read some Spanish words and figure out some spoken words, but that's it. This becomes kind of amusing at times. For example, at the seafood place I had mentioned earlier, I wanted prawns, eggs, and potatoes as a starter (they should have translated it as "Appetizer") but they couldn't understand what I was saying so they brought out some weird pasta thing with a weird oil and some shrimp. It was good actually. Their cherry tomatoes are to die for! Next I wanted some weird prawn thing but they gave me some weird prawn thing with crab legs. I don't know how to eat crab legs so I just had the prawn which was excellent and had a sauce that tasted like that stuff they put over the shrimp scampi at Red Lobster (butter and garlic or somesuch). The desert they brought me was actually the same as I ordered. It was some apple flat pastry with vanilla ice cream and fudge. That was really good. Slava had octopus as an appetizer, a fish and seafood paella for the entreé and a flaming pineapple thing for desert. Everything he got is what he ordered. Lucky freak. At other places, I either have to mime the thing I am asking for, or write down some weird equation. Example, I couldn't get the light on in the bathroom in the hotel. I asked a nearby cleaning lady how to turn it on and she said "No Habla Inglés" or something. I start down the elevator then get an idea (!!!). She was close to my room so I motioned for her to come into the doorway, I pointed at the light and she says I have to stick my door card into the slot on the wall to get any sort of power in the room. Humans have a connection that's deeper than language. Paying people an absurd amount of Euros doesn't hurt much either. ;)

Smoking are way too tolerated in Spain. People smoke in the train station (metro, not quite subway I think), in the aiport, in fast food places, in restaurants, in this café place, on the street, and anywhere else it's prohibited in the US. This is extremely annoying as cigarette smoke gives me migraines. Luckily, I have plenty of Duradrin. They also have cigarette vending machines all over the place. AFAIK, these were banned in the US a few years ago.

And we will have pictures of our journey here. Slava's taken about 120 pictures so far. He takes them since we go to the same places and his camera is lighter than mine.

I haven't proofread this at all and I'm on a weird Euorpean keyboard. Luckily, unlike OS X, Windows seems to have decent muscle memory so I can still use this machine fine even though I can't read any of the text.

Posted by rosyna at 06:41 AM
December 10, 2002
Lame US Cell Phone companies

So I'll be leaving to the airport for Spain in a about 4 hours. Doing laundry now. I'd rather die than do it with you.

Today I called my cell phone provider (T-Mobile) to see if I'd have any problems calling from Spain. They told me I had to have "International Permissions" and I said, "Ok, do that." "I'm sorry, we can't do that. It's been disabled. You need to have a good payment record for at least 3 months before you can call from an international location." I'll international location you! I've made all my payments on time (it's auto deducted from my account) and I've had my cell since sept 10th or so. T-Mobile is lame. If I had gotten a cell phone provider in any country than the US I'd probably have no problem calling from inside or outside the US. I swear, America has the worst cell phone service ever.

On another note, Bank One is too permissive. They'll let me use my Bank One card at any Visa location in the world. This makes me mad. I wanted to limit international access for the time I'll be gone in case the card is stolen. I also wanted to limit the minimum account balance on my account. Bank One won't do that either. Sigh. Too restrictive or too permissive.

"The beginning and the end are one in the same. Yes, all is well with the world." *Explodes*

I was hoping to have a Silk beta available by now but I don't have cocoa support complete. I can replace some of the theme fonts (Window title, some controls) but not NSTextFields or some small buttons. It depends on the application. I'm looking for any suggestions. It seems not all apps use the _makeSpecialFont... method either indirectly or directly. That is lame too. Because Snapz somehow think it's unregistered on my iBook, I can't take any screenshots of the Cocoa support. That is doubly lame. I don't need you. You wimp.

Again, any suggestions are welcome.

Posted by rosyna at 03:38 AM
December 09, 2002
Updates, Updates!

Wee, so the much promised updates to Labels X and Xounds are out... I'll repeat what's new here for the sake of completeness:

Xounds 1.4:


  • Substantial speed-ups of the code, causing up to 30x performance increases in playing sounds.
  • Updated for Application Enhancer 1.2, including new and improved Exclude List feature.
  • Included with a new, improved version of Unsanity Installer.
  • Window dragging sound in Cocoa applications starts playing immediately, just like in Carbon ones.
  • Volume mount and unmount sounds are now played again.
  • Panning for multi-monitor setups should be calculated more correctly now.
  • Fixed a bug with XoundSets when non-English characters in their names were not working.
  • Fixed a bug with window dragging sound getting 'stuck' sometimes.
  • More various bugfixes all over the code.

Labels X 1.1:


  • Labels X are now compatible with Mac OS X 10.1 as well as Mac OS X 10.2 "Jaguar".
  • File labels are now shown in Dock popup menus containing file listings.
  • Labels contextual menu will be disabled for files you do not have correct access privileges for.
  • Fixed the issues with mis-coloring of icons in the toolbars, search results, and window proxy icons.
  • Fixed a bug with non-English label names displaying incorrectly in the Labels contextual menu.
  • Updated for Application Enhancer 1.2.
  • New installer.
  • Misc code cleanups and bug fixes.

And of course, as usual, these upgrades are completely free of charge for registered users. I would like to thank our beta testing team, and all of our users for contributing ideas, giving feedback, and noticing glitches in our haxies. Let's keep it up and together we'll be able to make Mac OS X a supreme working environment!

Posted by slava at 01:09 PM
December 08, 2002
Spain

Ah, we'll see Xounds and Labels X updates this Monday (hopefully), and I'll be leaving to Barcelona, Spain on Tuesday for a week. Figured I'd take a tiny vacation from coding, do some sightseeing, not to mention I got some business to do there as well. I'll be back on Wednesday 18th evening, so the updates from me will be sparse (as if they aren't sparse right now, heh).

(15 mins later) Funny how this world works. I sat down to sketch up a little list of things I gotta pack up tomorrow. Second item on the list was a CD with the sources to work while in Spain. God, I just cannot beleive in a fact a person can just relax and do not do any work for some period of time. So let it be - I have faced the fact I am a geek and a workaholic a long time ago, and learnt to live with it. Have a great week, everyone, and hopefully you'll enjoy the upcoming updates (I'll post about these tomorrow, as well, I think).

Posted by slava at 06:25 AM
December 06, 2002
CFRelease no more crash on NULL

Ok, I made a really lame APE module today. Let's call it CFReleaseProtector. You can get it here. Source code is included. The built files are in the build directory. Put the APE in ~/Library/Application Enhancers/ then run TestApplication.

ProjectBuilder is lame. It doesn't place all the default files in a project if you make a new target. It only does it if you make a new project. Lame and double-lame.

Posted by rosyna at 06:56 PM