Skip to content

Instantly share code, notes, and snippets.

@ma8ma
Created March 22, 2020 13:16
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ma8ma/bab733324f660c906bacc471db5ed732 to your computer and use it in GitHub Desktop.
Save ma8ma/bab733324f660c906bacc471db5ed732 to your computer and use it in GitHub Desktop.
JDim GTK2版のパッチ: 右クリックしながらマウスホイールを回すとタブを切り替える
JDim GTK2版のパッチです。
板一覧、スレ一覧、スレビュー、画像ビューで右クリックしながらマウスホイールを回すとタブの切り替えを実行します?
パッチ作成者の環境ではパッチ無しで動作するため効果は不明です。
パッチのライセンス: GPL v2 or later
対象のコミット
subject: Merge pull request #221 from ma8ma/refactor-dom
hash: a8cff729ea97d21e9b6bf33ac9a77594c7a4bb64
参照: https://mao.5ch.net/test/read.cgi/linux/1584619744/12
> 後、別件ですが前スレで話題になっていた、マウスホイールでのタブ切替えの件ですが、
> ↑のGTK2版ではJDの頃から画像ビューでの画像切替は出来ますが、
> スレビュー、一覧のタブ切替は出来無い様です
> Ubuntu 18.04.4 LTS 64 ビット、最新のGTK3版では全部出来ます
パッチの使い方
1. gistページにある「Download ZIP」を押して圧縮ファイルをダウンロードします。
2. ダウンロードした圧縮ファイルを展開してパッチファイル「jdim-gtk2-tabswitch.patch」を取り出します。
3. JDimのディレクトリにパッチファイルをコピーします。
4. ターミナルを立ち上げてJDimのディレクトリに移動します。
5. patchコマンドをインストールします。(以下のコマンドをコピペ)
sudo apt install patch
6. masterブランチに切り替えます。(すでにmasterなら不要)
git checkout master
7. patchコマンドでパッチを適用します。
patch -p1 <jdim-gtk2-tabswitch.patch
8. README.mdの手順にしたがってGTK2版をビルドします。
autoreconf -i
./configure --with-gtkmm3=no
make
9. ./src/jdimを実行してタブ切り替えが動作するか確認します。
10. 確認を終えたらパッチによる変更を削除して元に戻します。
git reset --hard master
make
diff --git a/src/article/articleviewbase.cpp b/src/article/articleviewbase.cpp
index 2e2620c1f..ddbd7b253 100644
--- a/src/article/articleviewbase.cpp
+++ b/src/article/articleviewbase.cpp
@@ -149,6 +149,7 @@ void ArticleViewBase::setup_view()
assert( m_article );
assert( m_drawarea );
+ m_drawarea->add_events( Gdk::SCROLL_MASK );
#if GTKMM_CHECK_VERSION(3,3,18)
m_drawarea->add_events( Gdk::SMOOTH_SCROLL_MASK );
#endif
diff --git a/src/bbslist/bbslistviewbase.cpp b/src/bbslist/bbslistviewbase.cpp
index 561853e7e..ff383b238 100644
--- a/src/bbslist/bbslistviewbase.cpp
+++ b/src/bbslist/bbslistviewbase.cpp
@@ -172,6 +172,7 @@ BBSListViewBase::BBSListViewBase( const std::string& url,const std::string& arg1
m_treeview.set_show_expanders( CONFIG::get_tree_show_expanders() );
m_treeview.set_level_indentation( CONFIG::get_tree_level_indent() );
+ m_treeview.add_events( Gdk::SCROLL_MASK );
#if GTKMM_CHECK_VERSION(3,3,18)
m_treeview.add_events( Gdk::SMOOTH_SCROLL_MASK );
#endif
diff --git a/src/board/boardviewbase.cpp b/src/board/boardviewbase.cpp
index 4c122aeec..512ff7069 100644
--- a/src/board/boardviewbase.cpp
+++ b/src/board/boardviewbase.cpp
@@ -162,6 +162,7 @@ BoardViewBase::BoardViewBase( const std::string& url, const bool show_col_board
m_liststore->set_sort_func( COL_SPEED, sigc::mem_fun( *this, &BoardViewBase::slot_compare_row ) );
m_liststore->set_sort_func( COL_DIFF, sigc::mem_fun( *this, &BoardViewBase::slot_compare_row ) );
+ m_treeview.add_events( Gdk::SCROLL_MASK );
#if GTKMM_CHECK_VERSION(3,3,18)
m_treeview.add_events( Gdk::SMOOTH_SCROLL_MASK );
#endif
diff --git a/src/image/imageviewbase.cpp b/src/image/imageviewbase.cpp
index 1d7fd198f..f3f2dc165 100644
--- a/src/image/imageviewbase.cpp
+++ b/src/image/imageviewbase.cpp
@@ -95,6 +95,7 @@ void ImageViewBase::setup_common()
// focus 可、モーションキャプチャ可
m_event.set_can_focus( true );
m_event.add_events( Gdk::POINTER_MOTION_MASK );
+ m_event.add_events( Gdk::SCROLL_MASK );
#if GTKMM_CHECK_VERSION(3,3,18)
m_event.add_events( Gdk::SMOOTH_SCROLL_MASK );
#endif
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment