Evinceフルスクリーンモードでツールバーを非表示にするにはどうすればよいですか?


12

Linuxは初めてということで、これの前置きとして、ウィザードが思いついたものなら何でも試してみたいと思います(できればキーボードショートカットが望ましいです)。

Evince 3.10.3を全画面モードで使用すると、この見栄えは良いですが、画面の上部の一部を占める半煩わしいツールバーが表示されます...:

私の邪魔をしているその美しいツールバー...

Evinceのドキュメントで、ツールバーのセクションに、ツールバーの表示、非表示、または編集についての説明があります。ページに移動したときに表示されるのは、ツールバーの対応する機能のレイアウトだけですが、ツールバーを非表示にする方法についての情報はありません。

よし、これはよさそうだ! ヒント、トリックはどこにありますか?!

Evinceバージョン3.10.3、またはこの同様のセットアップをツールバーに含むバージョンでツールバーを非表示にするにはどうすればよいですか?

PSツールバーが魔法のように消えてしまうことがあります。この動作をオンデマンドで呼び出す方法が欲しいだけです。ありがとう!


プレゼンテーションモードであるF5を試しましたか?ツールバーはありません
Sergiy Kolodyazhnyy 2015

2
ツールバーを削除するF5を試しましたが、残念ながらプレゼンテーションモードでもズームが無効になっています。ページ幅にズームできるようにしたい。
cody.codes、2015

そこにある同様のポストは任意の回避策はないことを除いて、同様に、以前のリリースで尋ねました。
clearkimura 2015

1
マウスが近くにない場合、ツールバーは「魔法のように消えます」。Gnomeを使用しているときは、Pixel SaverまたはMaximusの2つの拡張機能を使用して、Chromeのような(ほとんどの)アプリのタイトルバーを非表示にできます。また、どのテーマを使用していますか:)
Wilf '22

回答:


4

簡単に言えば、できません。

(12.04で)示す3.4.0は、メニューから[ツールバーを非表示にするオプションだった[表示]> [ツールバー]を [選択] フルスクリーンのメニューから、または経由でF11キーフルスクリーンモードでツールバーを非表示になります。

どうやら、この機能はEvinceの新しいバージョンから削除され、ランチパッドメーリングリストのバグとしても報告されています。

おそらくこれは新しいバージョンで修正されるかもしれませんが、誰もが知っています。

即時の回避策は次のいずれかです。

  • @zarnaikの提案に従ってウィンドウマネージャーを使用する
  • MuPDFなどの他のPDFビューアを使用します。

Xubuntu 14.04でMuPDFを使用しましたが、フルスクリーンで表示しているときにツールバーがなく、任意の幅にズームできるため、望みどおりの結果が得られたようです。


3

私はあなたがしたのと全く同じ問題に出くわしました。私がしているsucessfullyツールバーを非表示することができていない、私は方法が出ているものの、動作をエミュレートします

単純にエビンスウィンドウを最大化します。次に、キーボードショートカットAlt+ Spaceを使用してウィンドウのコンテキストメニューを開きます。

リサイズ

これに従ってz、メニューでサイズ変更を選択します(英語で、使用する言語によって異なる場合があります)。サイズ変更モードになると、矢印キーUpを使用してウィンドウを拡大できます。メニューとツールバーの両方が画面の「外側」になるまで、単にそれを伸ばします。

または、ウィンドウを少し下にドラッグして、必要に応じてウィンドウを長くします。次に上にドラッグします。

実行中のドックまたはタスクバーの下にevinceが表示される可能性があります。これは、ウィンドウレイヤーをに設定することで修正できますalways on top

常にトップに

使用しているドック/タスクバーに慣れていないため、結果が異なる場合があります。うまくいったかどうか教えてください。(私はtint2ドックでopenboxを使用しています)


1
非常に素晴らしい回避

1

タイトルバーのないマキシムスをどこでも使用しています。

ユーザー補助オプションの拡大鏡でズームの問題を解決しました。ショートカット:Alt+スクロール


1

Ubuntu 14.04でも16.04でも、アップストリーム/バニラevince(Ubuntuによって変更されていない)でも、ツールバーを非表示にすることはできませんが、必死であれば、ソースにパッチを適用して再コンパイルできます。

バニラエヴィンスでは、フルスクリーンモードで、ツールバーは自動的に非表示になります。これは、完全に十分ではない場合でも、ある程度役立ちます(半インテリジェントな動作では、意図したとおりに動作しないため、さらに、ツールバーを非表示にできないと非常に便利です。全画面モードも同様です—おそらくそれは、画面スペースの節約が特に重要なときです)。

残念ながら、Ubuntu(14.04および16.04)にパッケージ化されているように、それは不可能です。(そうでなければ非常に便利な)Ubuntu固有のパッチが通常のメニューバーとツールバーの通常の場所を返すようで、自動非表示の動作を壊し、問題を悪化させているようです。

バグレポート

関連するバグ(ubuntu固有およびアップストリーム)は次のとおりです。

https://bugs.launchpad.net/ubuntu/+source/evince/+bug/1522527

https://bugs.launchpad.net/ubuntu/+source/evince/+bug/1409291

https://bugzilla.gnome.org/show_bug.cgi?id=714996

パッチ

作業パッチはGNOMEバグレポートで(Reinis Danneによって)提供されましたが、受け入れられませんでした。3.12コンテンポラリーマスターブランチ3.14の直接リンク。

幸運なことに、Ubuntu 16.04にあるように、これらのパッチは3.18に手動で適用(コードをコピーして貼り付ける)できます。それらを直接適用してもpatch、おそらく周囲のコードがわずかに変更されたために機能しないようです。

ソースを取得するには:

apt-get source evince
cd evince-3.18.2/

これが機能しない場合は、のdeb-src行のコメントを外してください/etc/apt/sources.list

次のパッチを適用します(Reinis Danneによって提供されたパッチから適応され、完全にリンクするためにここに提供されています)。

--- a/shell/ev-application.c    2018-01-02 23:00:00.502095551 +0100
+++ b/shell/ev-application.c    2018-01-03 23:15:00.713553169 +0100
@@ -1059,9 +1059,24 @@
 }

 static void
+app_toggle_toolbar_cb (GSimpleAction *action,
+                       GVariant      *parameter,
+                       gpointer       user_data)
+{
+        EvApplication *application = user_data;
+        EvWindow      *window      = EV_WINDOW (gtk_application_get_active_window (GTK_APPLICATION (application)));
+        GActionMap    *action_map  = G_ACTION_MAP (window);
+        GAction       *gaction     = g_action_map_lookup_action (action_map, "toggle-toolbar");
+
+        g_action_activate (gaction, NULL);
+}
+
+
+static void
 ev_application_startup (GApplication *gapplication)
 {
         const GActionEntry app_menu_actions[] = {
+       { "toggle-toolbar", app_toggle_toolbar_cb, NULL, NULL, NULL },
        { "new",  app_new_cb, NULL, NULL, NULL },
                 { "help", app_help_cb, NULL, NULL, NULL },
                 { "about", app_about_cb, NULL, NULL, NULL }
@@ -1095,6 +1110,7 @@
           "win.caret-navigation",       "F7", NULL,
           "win.zoom-in",                "plus", "<Ctrl>plus", "KP_Add", "<Ctrl>KP_Add", "equal", "<Ctrl>equal", NULL,
           "win.zoom-out",               "minus", "<Ctrl>minus", "KP_Subtract", "<Ctrl>KP_Subtract", NULL,
+          "win.toggle-toolbar",         "<Ctrl>H", NULL,
           "win.show-side-pane",         "F9", NULL,
           "win.fullscreen",             "F11", NULL,
           "win.presentation",           "F5", NULL,
--- a/shell/ev-window.c 2018-01-02 23:00:00.502095551 +0100
+++ b/shell/ev-window.c 2018-01-02 23:14:36.995706943 +0100
@@ -4907,6 +4907,27 @@
 }

 static void
+ev_window_view_cmd_toggle_toolbar (GSimpleAction *action,
+                                   GVariant      *state,
+                                   gpointer       user_data)
+{
+        EvWindow        *ev_window = user_data;
+        EvWindowPrivate *priv      = ev_window->priv;
+
+        gboolean toolbar;
+        gboolean presentation;
+
+        presentation = EV_WINDOW_IS_PRESENTATION (ev_window);
+
+        toolbar = ((priv->chrome & EV_CHROME_TOOLBAR) != 0  ||
+                   (priv->chrome & EV_CHROME_RAISE_TOOLBAR) != 0) && !presentation;
+
+        update_chrome_flag (ev_window, EV_CHROME_TOOLBAR, !toolbar);
+
+        set_widget_visibility (priv->toolbar, !toolbar);
+}
+
+static void
 ev_window_view_cmd_toggle_sidebar (GSimpleAction *action,
                   GVariant      *state,
                   gpointer       user_data)
@@ -5697,6 +5718,7 @@
    { "continuous", NULL, NULL, "true", ev_window_cmd_continuous },
    { "dual-page", NULL, NULL, "false", ev_window_cmd_dual },
    { "dual-odd-left", NULL, NULL, "false", ev_window_cmd_dual_odd_pages_left },
+   { "toggle-toolbar", NULL, NULL, "true", ev_window_view_cmd_toggle_toolbar },
    { "show-side-pane", NULL, NULL, "false", ev_window_view_cmd_toggle_sidebar },
    { "inverted-colors", NULL, NULL, "false", ev_window_cmd_view_inverted_colors },
    { "fullscreen", NULL, NULL, "false", ev_window_cmd_view_fullscreen },
--- a/shell/evince-menus.ui 2018-01-02 23:00:00.502095551 +0100
+++ b/shell/evince-menus.ui 2018-01-03 23:16:02.969635772 +0100
@@ -21,6 +21,12 @@
   <menu id="appmenu">
     <section>
       <item>
+        <attribute name="label" translatable="yes">_Toggle toolbar</attribute>
+        <attribute name="action">app.toggle-toolbar</attribute>
+        <attribute name="accel">&lt;Primary&gt;H</attribute>
+      </item>
+    </section>    <section>
+      <item>
         <attribute name="label" translatable="yes">_New Window</attribute>
         <attribute name="action">app.new</attribute>
       </item>
@@ -41,6 +47,10 @@
   <menu id="view-menu">
     <section>
       <item>
+        <attribute name="label" translatable="yes">_Toolbar</attribute>
+   <attribute name="action">win.toggle-toolbar</attribute>
+      </item>
+      <item>
         <attribute name="label" translatable="yes">_Continuous</attribute>
         <attribute name="action">win.continuous</attribute>
       </item>

with patch -p1 < name_of_patch_file.patchまたはusing quilt(そして理想的には、パッチを適用する前または後にパッチを読んでください。実際には、特に状況に応じて、非常にわかりやすいです)。

最後に、evinceを標準でコンパイルして./configure; make; sudo make install、パッチを適用したevinceをにインストールし/usr/local/ます。他の場所にインストールするには、たとえばを使用する必要がないようsudoにするには、を使用します./configure --prefix=/full/path/to/alternative/location/

パッチが適用されたevinceには、ツールバーを非表示にするオプションがありますCtrl+h。メニューバーは表示になりません。これは、必要な場合とそうでない場合があります。

メニューバーを隠す

上記のパッチに加えて、以下を追加する必要があります。

gtk_application_window_set_show_menubar (GTK_APPLICATION_WINDOW (ev_window), !toolbar);

ev_window_view_cmd_toggle_toolbarin shell/ev-window.cとchangeの定義の終わりまで:

gtk_application_window_set_show_menubar (GTK_APPLICATION_WINDOW (window), !presentation);

に:

gtk_application_window_set_show_menubar (GTK_APPLICATION_WINDOW (window), !presentation && toolbar);

の定義でupdate_chrome_visibility、またでshell/ev-window.c

安全保障

evinceのバージョンに対するセキュリティ修正は受け取れないため、Ubuntuセキュリティ通知/etc/apparmor.d/usr.local.bin.evince基づいてusr.bin.evinceサブスクライブするapparmorプロファイルを追加することもお勧めします。または、などの使用を検討することもできます。apt-src


適用を容易にするために、両方の完全なパッチがここにあります:gist.github.com/aplaice/5b2b75c410ee32ad57335466713b75e8
aplaice

0

ブラウザーを持っている可能性が高いことを忘れて、「PDFリーダー」を検索するためにあなたの考えを閉じ込めることは簡単です。ChromeやFirefoxのようなブラウザーは、かなり優れたPDF読み取り機能(選択した切り取り、コピー/貼り付け、ブックマーク、スクロール)を備えています... PDFを画像として表示し、スクロール時にそれを壊すのに便利なMuPDFとは対照的に、必要なものに加えて、邪魔にならない明確なフルスクリーンです。おまけとして、選択/右クリックしてグーグルを検索するなどのブラウザ機能を使用できます...試してください。


0

UbuntuのデフォルトのDocument Viewerアプリケーション(evince)には、真の全画面モードがあります。Evinceツールバーから[ 表示] -> [ プレゼンテーション]を選択します。プレゼンテーションモードでは、画面に視覚的に邪魔になるツールバーやスクロールバーはありません。全画面モードで画像を表示しているように見えます。iTunesや7digitalからダウンロードできるアルバムにバンドルされている.pdfデジタルブックレットを表示するのに最適です。

プレゼンテーションモードを終了するには、Escキーまたはを押しますF11


1
ただし、問題は、プレゼンテーションモードで全幅にできることです。キャラクターはとても小さく見えます
Ashok Koyi

プレゼンテーションモードは、iTunesまたは7digitalからダウンロードしたアルバムに付属するデジタルブックレットを表示するのに適しています。
karel
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.