|
From: hiroshi h. <cos...@gm...> - 2013-10-22 15:30:35
|
畑ケです。 (2013年10月22日 23:49), Kouhei Sutou wrote: > 須藤です。 > > In <201...@co...> > "Re: [ruby-gnome2-devel-ja] gdk3とgtk3のdeprecatation warningの対応を始めます" on Mon, 21 Oct 2013 23:27:58 +0900 (JST), > Kouhei Sutou <ko...@co...> wrote: > >>> gdkdisplay.hやgdkwindow.hに定義されているGDK_DEPRECATED_IN_3_0_FORによる >>> 以下のようなdeprecation warningが出てしまっています。(長いので抜粋) >> ... >>> これはGithubにはIssueが立っていませんが、 >>> Ruby-GNOME2のgdk3,gtk3はのGTK+ 3.4.2 or laterが要求されている為、 >>> GTK+ 3.4までの環境でgdk3とgtk3のgemをインストールした際に出力される >>> deprecation warningに対応しようと考えています。 >> はい、よろしくおねがいします! >> >> ちなみに、GTK+ 3.4.2 or laterなのはDebian GNU/Linux wheezyが >> 提供しているGTK+が3.4.2だからだったりします。 > ちょっとソースを見てみたんですが、対応していないメソッドがそ > こそこありそうなので、手書きで一つずつ対応していくのは辛そう > だなぁという気がしてきました。。。 > > clutter(*)のようにGObjectIntrospectionベースで頑張っていくの > がいいような気がします。 > > https://github.com/ruby-gnome2/ruby-gnome2/tree/master/clutter > > ということで、とりあえず、ディレクトリを掘ってみました。 > gtk3/の方もやらないと動かせませんが。。。 > > https://github.com/ruby-gnome2/ruby-gnome2/tree/master/gdk3-gi 対応してないメソッドをどうやって対応させるか頭を悩ませていたところでした。 助かります! deprecation warningが出ているAPIですが、 GTK+2の時はGdk::Windowだけで頑張れたAPIをGTK+3が推奨するAPIを使うよう変 更しようとすると Gdk::Deviceのオブジェクトも必要になっているものがありますね。。。 例えば、須藤さんに指摘していただいた https://github.com/ruby-gnome2/ruby-gnome2/commit/eeeccc927147af47458a102af08e5786e0ad27be#diff-aa4bfedd0d165a6d946c9ee3fd026c63R64 もその一つです。 # GTK+3はまともに対応するとなるとかなりGTK+2からAPIが変わってしまいます ね。。。 # 最初の印象以上に手強いです。。。 -- Hatake Hiroshi cos...@gm... |