ZMGoogleCSS 2.0.1
Google の仕様変更に対応した ZMGoogleCSS 2.0.1 をリリース。
最近の Google はいろいろ試行錯誤してる。今回の変更で矢印キーの挙動が普通のスクロールに戻ったのがうれしい。
Google の仕様変更に対応した ZMGoogleCSS 2.0.1 をリリース。
最近の Google はいろいろ試行錯誤してる。今回の変更で矢印キーの挙動が普通のスクロールに戻ったのがうれしい。
Google の仕様変更が大きすぎてしばらく開発を休止していた ZMGoogleCSS だけど、一から作り直してバージョン 2.0 として復活させることにした。
今回もいろいろといじってある。Safari RSS 風なサイドバー、フォーカスリングのある検索フィールド、選択のしやすい Goooooogle など。自分には不要かつ邪魔なので隠すようにしたものも多く、左上の "+あなた"、検索ボタン、サイドバーの地域設定などが表示されなくなる。サイドバーもマウスが乗っていないときは薄くなるので邪魔にならない。
これに影響されてユーザスタイルシートを作る人が増えるといいな。
LandVolume 2.0 をリリース。
今回から Mac App Store で販売。App Store 配布の経験がなかったので、その練習でもある。
やはり審査が大変だった。最初の Submit で「機能がなさすぎるのでリジェクト」と言われて App Review Board に英語で説明。それは受け入れてもらえたけど、その後も 3 回ほどリジェクトされたのでひと月以上かかってしまった。
コードはバージョン 1.x から全面的に書き直してある。
ぜひどうぞ。
Lion でスクローラ(スクロールバーのつまみ)が iOS 風に自動的に隠れるようになり見た目がすっきりしたのはいいけど、 スクローラが表示されるタイミングが非常に少ないので、別のビューで作業しようと思ったとき表示している範囲を把握しにくい。
それならマウスカーソルがビューに入ったタイミングで一時的に表示されるようになればいいのではないか。そう考えたので、その動作を実現するための SIMBL プラグイン “ZMScrollerFlasher” を作ってみた。ダウンロードは Products の misc. のページから。
実際に使ってみると、カーソルの移動に応じて表示されるのは便利だけど、過剰な気がしないでもない。なぜ Apple がスクローラ表示タイミングをあのように設定したのかわかるような。
Snow Leopard になってから 64 ビットで動くソフトが増えてきた。Animatabler も 64 ビット化しないと 32 ビットのソフトでしか動作しない。
Animatabler でウインドウを変形させるのに使用している Core Graphics のプライベート関数 CGSSetWindowWarp()
は本来、ウインドウを Dock にしまうときのジニーエフェクトや Exposé のウインドウ縮小などを実現するために用意されたものらしいけど 64 ビットでは使用されていないみたいでこれを呼んでも何も起きない。
個人的には CGSSetWindowTransformAtPlacement()
が代わりに用意された関数ではないかと考えているけど、資料が少なくわからないという状況...
と書いていると Deskovery というソフトを発見。Compiz Fusion のふにゃふにゃウィンドウ移動を再現している。よくやるな〜
64 ビットには対応していないけど、環境設定アプリケーションを追加したバージョン 2.1.1 をリリース。ダウンロードはこちらから。(遅くなってしまったけど、Shige さん感謝です!)
去年 5 月の Google 仕様変更で使えなくなった。CSS を上書きする方法の限界を感じてしまった。
Google が仕様を変更するたびに複雑な HTML 構造を調べ、CSS で無理矢理デザインを変更するには時間と労力がかかりすぎるし、できることの幅も少ない。
Google の提供する API を使ってデザインする方法もあり、デザインはいいものが作れそうだけど(→ Google Powered Site Search with jQuery)、通常の検索ページと URL が変わってしまうのは不便だし、JSON/Atom Custom Search API は "100 search queries per day" という制限があるので現実的ではない。
ほかの方法もなくはないけど、Google の規約に引っかかる可能性が出てくる。
これに影響されてこの分野が盛り上がることを期待してリリースしたけど、上記の問題もあり、なかなか作る人は現れない...
他者のソフト/サービスをプライベートな方法で拡張するのは仕様変更のリスクが大きい。個人的に使える時間が限られてきたため、期待してくれていた方々には申し訳ないけど ZMGoogleCSS と Animatabler の開発は、しばらく休止します。
今年は Mac App Store が始まったこともあり、正当な方法で作ったソフトを中心にリリースしていく予定。
LandVolume 1.1 をリリース。
Leopard で正しく動作するようになり、スライダーの回転ができるようになった。
スライダーの回転は、レイヤーの -[CALayer setTransform:]
を呼ぶだけで実装できて感動。
このソフトのリクエストを送ってくれた方が Leopard を使用されていたので、Leopard 対応は重要な課題だった。1.0 をリリースした時点で対応させたつもりになっていたが、実際は動作せず...
原因は
awakeFromNib
実装で super
の awakeFromNib
を呼んでいた。NSObject
が awakeFromNib
を実装しているのは Snow Leopard 以降。kAudioHardwarePropertyDefaultOutputDevice
によって、選択されている出力デバイスを取得したあと、そのプロパティ kAudioHardwareServiceDeviceProperty_VirtualMasterVolume
によって音量を取得/変更する方法をとっていた。同プロパティは Available in Mac OS X v10.5 and later と書いてあったから問題ないと思っていたのに、実際は Snow Leopard 上でないと正しく動作しなかった。kAudioDevicePropertyPreferredChannelsForStereo
によってステレオの 2 つのチャンネルを取得し、それらのプロパティ kAudioDevicePropertyVolumeScalar
を取得/変更することで対処。LandVolume でのアイデアは開発中の iTunes コントローラにも活かされる予定。
ちょっとしたソフトをリリース。Mac の音量を調節するためだけのソフト。
スライダーと背景の中身を CALayer を使って作ってみた。Core Animation は便利だ。
iPhone プログラマは恵まれているな〜。