From 119b8bf2700d079799c837683a8e4227e911ddb4 Mon Sep 17 00:00:00 2001 From: Joshua Lock Date: Tue, 13 Jul 2010 12:35:13 +0100 Subject: [PATCH] epdfview: add epdfview recipe from OE by Manuel Teira Poky Bugzilla #70 is a patch by Manuel Teira to add epdfview for sato. This patch updates the recipe to use the latest epdfview and refreshes the patch for libowl change. Signed-off-by: Joshua Lock --- .../epdfview/epdfview/epdfview-ui-print.xml | 12 + .../epdfview/epdfview/epdfview-ui.xml | 57 +++ .../epdfview/epdfview/epdfview.desktop | 10 + .../epdfview/epdfview/owl-menus.patch | 325 ++++++++++++++++++ meta/packages/epdfview/epdfview_0.1.6.bb | 21 ++ meta/packages/epdfview/epdfview_0.1.7.bb | 21 ++ 6 files changed, 446 insertions(+) create mode 100644 meta/packages/epdfview/epdfview/epdfview-ui-print.xml create mode 100644 meta/packages/epdfview/epdfview/epdfview-ui.xml create mode 100644 meta/packages/epdfview/epdfview/epdfview.desktop create mode 100644 meta/packages/epdfview/epdfview/owl-menus.patch create mode 100644 meta/packages/epdfview/epdfview_0.1.6.bb create mode 100644 meta/packages/epdfview/epdfview_0.1.7.bb diff --git a/meta/packages/epdfview/epdfview/epdfview-ui-print.xml b/meta/packages/epdfview/epdfview/epdfview-ui-print.xml new file mode 100644 index 0000000000..3ddf5147df --- /dev/null +++ b/meta/packages/epdfview/epdfview/epdfview-ui-print.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/meta/packages/epdfview/epdfview/epdfview-ui.xml b/meta/packages/epdfview/epdfview/epdfview-ui.xml new file mode 100644 index 0000000000..602d86f903 --- /dev/null +++ b/meta/packages/epdfview/epdfview/epdfview-ui.xml @@ -0,0 +1,57 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/meta/packages/epdfview/epdfview/epdfview.desktop b/meta/packages/epdfview/epdfview/epdfview.desktop new file mode 100644 index 0000000000..d3bf06d2aa --- /dev/null +++ b/meta/packages/epdfview/epdfview/epdfview.desktop @@ -0,0 +1,10 @@ +[Desktop Entry] +Categories=Viewer;Office;GTK; +Comment=Lightweight PDF document viewer +Exec=epdfview %f +GenericName=PDF Viewer +Icon=accessories-text-editor +Name=PDF Viewer +MimeType=application/pdf; +Terminal=false +Type=Application diff --git a/meta/packages/epdfview/epdfview/owl-menus.patch b/meta/packages/epdfview/epdfview/owl-menus.patch new file mode 100644 index 0000000000..755b71e7a4 --- /dev/null +++ b/meta/packages/epdfview/epdfview/owl-menus.patch @@ -0,0 +1,325 @@ +Index: epdfview-0.1.7/src/Makefile.am +=================================================================== +--- epdfview-0.1.7.orig/src/Makefile.am 2010-07-13 12:30:44.014172385 +0100 ++++ epdfview-0.1.7/src/Makefile.am 2010-07-13 12:30:48.780063260 +0100 +@@ -58,7 +58,7 @@ + main.cxx + + libshell_cxxflags = -I$(top_srcdir)/src/gtk $(GTK2_CFLAGS) +-libshell_ldadd = $(GTK2_LIBS) $(top_builddir)/src/gtk/libshell-gtk.a ++libshell_ldadd = $(GTK2_LIBS) $(top_builddir)/src/gtk/libshell-gtk.a -lowl + + epdfview_CXXFLAGS = \ + -DLOCALEDIR='"$(datadir)/locale"' \ +Index: epdfview-0.1.7/src/gtk/MainView.cxx +=================================================================== +--- epdfview-0.1.7.orig/src/gtk/MainView.cxx 2010-07-13 12:30:44.014172385 +0100 ++++ epdfview-0.1.7/src/gtk/MainView.cxx 2010-07-13 12:30:48.782124540 +0100 +@@ -20,6 +20,7 @@ + #include + #include + #include ++#include + #include + #include "StockIcons.h" + #include "FindView.h" +@@ -86,6 +87,7 @@ + // The actions for menus and toolbars. + static const GtkActionEntry g_NormalEntries[] = + { ++ { "Top", NULL, "", NULL, NULL, NULL }, + { "FileMenu", NULL, N_("_File"), NULL, NULL, NULL }, + { "EditMenu", NULL, N_("_Edit"), NULL, NULL, NULL }, + { "ViewMenu", NULL, N_("_View"), NULL, NULL, NULL }, +@@ -100,7 +102,7 @@ + N_("Reload the current document"), + G_CALLBACK (main_window_reload_cb) }, + +- { "SaveFile", GTK_STOCK_SAVE, N_("_Save a Copy..."), "S", ++ { "SaveFile", GTK_STOCK_SAVE, N_("_Save a Copy..."), "W", + N_("Save a copy of the current document"), + G_CALLBACK (main_window_save_file_cb) }, + +@@ -110,11 +112,11 @@ + G_CALLBACK (main_window_print_cb) }, + #endif // HAVE_CUPS + +- { "Quit", GTK_STOCK_CLOSE, N_("_Close"), "W", ++ { "Quit", GTK_STOCK_CLOSE, N_("_Close"), "Q", + N_("Close this window"), + G_CALLBACK (main_window_quit_cb) }, + +- { "Find", GTK_STOCK_FIND, N_("_Find"), "F", ++ { "Find", GTK_STOCK_FIND, N_("_Find"), "S", + N_("Find a word in the document"), + G_CALLBACK (main_window_find_cb) }, + +@@ -138,19 +140,19 @@ + N_("Rotate the document 90 degrees counter-clockwise"), + G_CALLBACK (main_window_rotate_left_cb) }, + +- { "GoToFirstPage", GTK_STOCK_GOTO_FIRST, N_("_First Page"), "Home", ++ { "GoToFirstPage", GTK_STOCK_GOTO_FIRST, N_("_First Page"), "1", + N_("Go to the first page"), + G_CALLBACK (main_window_go_to_first_page_cb) }, + +- { "GoToNextPage", GTK_STOCK_GO_FORWARD, N_("_Next Page"), "Page_Down", ++ { "GoToNextPage", GTK_STOCK_GO_FORWARD, N_("_Next Page"), "Down", + N_("Go to the next page"), + G_CALLBACK (main_window_go_to_next_page_cb) }, + +- { "GoToPreviousPage", GTK_STOCK_GO_BACK, N_("_Previous Page"), "Page_Up", ++ { "GoToPreviousPage", GTK_STOCK_GO_BACK, N_("_Previous Page"), "Up", + N_("Go to the previous page"), + G_CALLBACK (main_window_go_to_previous_page_cb) }, + +- { "GoToLastPage", GTK_STOCK_GOTO_LAST, N_("_Last Page"), "End", ++ { "GoToLastPage", GTK_STOCK_GOTO_LAST, N_("_Last Page"), "0", + N_("Go to the last page"), + G_CALLBACK (main_window_go_to_last_page_cb) }, + +@@ -172,7 +174,7 @@ + + static GtkToggleActionEntry g_ToggleEntries[] = + { +- { "FullScreen", NULL, N_("F_ull screen"), "F11", ++ { "FullScreen", NULL, N_("F_ull screen"), "F", + N_("Toggle full screen window"), + G_CALLBACK (main_window_fullscreen_cb), FALSE }, + +@@ -184,7 +186,7 @@ + N_("Show or hide the statusbar"), + G_CALLBACK (main_window_show_statusbar_cb), TRUE }, + +- { "ShowIndex", NULL, N_("Show I_ndex"), "F9", ++ { "ShowIndex", NULL, N_("Show I_ndex"), "I", + N_("Show or hide the document's outline"), + G_CALLBACK (main_window_show_index_cb), FALSE }, + +@@ -234,9 +236,8 @@ + GtkAccelGroup *accelGroup = gtk_ui_manager_get_accel_group (m_UIManager); + gtk_window_add_accel_group (GTK_WINDOW (m_MainWindow), accelGroup); + // Add the menu bar and tool bar. +- GtkWidget *menuBar = gtk_ui_manager_get_widget (m_UIManager, "/MenuBar"); +- gtk_box_pack_start (GTK_BOX (m_MainBox), menuBar, FALSE, FALSE, 0); +- gtk_widget_show (menuBar); ++ owl_set_window_menu_item (GTK_WINDOW (m_MainWindow), ++ GTK_MENU_ITEM(gtk_ui_manager_get_widget(m_UIManager, "/MenuBar/TopMenu"))); + GtkWidget *toolBar = gtk_ui_manager_get_widget (m_UIManager, "/ToolBar"); + gtk_box_pack_start (GTK_BOX (m_MainBox), toolBar, FALSE, FALSE, 0); + // Add the current page tool item. +@@ -285,7 +286,7 @@ + MainView::activeZoomFit (gboolean active) + { + GtkAction *zoomFit = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomFit"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomFit"); + gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (zoomFit), active); + } + +@@ -293,7 +294,7 @@ + MainView::activeZoomWidth (gboolean active) + { + GtkAction *zoomWidth = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomWidth"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomWidth"); + gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (zoomWidth), active); + } + +@@ -484,7 +485,7 @@ + MainView::sensitiveFind (gboolean sensitive) + { + GtkAction *find = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/EditMenu/Find"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/EditMenu/Find"); + gtk_action_set_sensitive (find, sensitive); + } + +@@ -492,7 +493,7 @@ + MainView::sensitiveGoToFirstPage (gboolean sensitive) + { + GtkAction *goToFirstPage = gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/GoMenu/GoToFirstPage"); ++ "/MenuBar/TopMenu/GoMenu/GoToFirstPage"); + gtk_action_set_sensitive (goToFirstPage, sensitive); + } + +@@ -500,7 +501,7 @@ + MainView::sensitiveGoToLastPage (gboolean sensitive) + { + GtkAction *goToLastPage = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/GoMenu/GoToLastPage"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/GoMenu/GoToLastPage"); + gtk_action_set_sensitive (goToLastPage, sensitive); + } + +@@ -508,7 +509,7 @@ + MainView::sensitiveGoToNextPage (gboolean sensitive) + { + GtkAction *goToNextPage = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/GoMenu/GoToNextPage"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/GoMenu/GoToNextPage"); + gtk_action_set_sensitive (goToNextPage, sensitive); + } + +@@ -522,7 +523,7 @@ + MainView::sensitiveGoToPreviousPage (gboolean sensitive) + { + GtkAction *goToPreviousPage = gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/GoMenu/GoToPreviousPage"); ++ "/MenuBar/TopMenu/GoMenu/GoToPreviousPage"); + gtk_action_set_sensitive (goToPreviousPage, sensitive); + } + +@@ -530,7 +531,7 @@ + MainView::sensitiveOpen (gboolean sensitive) + { + GtkAction *open = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/FileMenu/OpenFile"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/FileMenu/OpenFile"); + gtk_action_set_sensitive (open, sensitive); + } + +@@ -539,7 +540,7 @@ + MainView::sensitivePrint (gboolean sensitive) + { + GtkAction *print = gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/FileMenu/PrintPlaceHolder/Print"); ++ "/MenuBar/TopMenu/FileMenu/PrintPlaceHolder/Print"); + gtk_action_set_sensitive (print, sensitive); + } + #endif // HAVE_CUPS +@@ -548,7 +549,7 @@ + MainView::sensitiveReload (gboolean sensitive) + { + GtkAction *reload = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/FileMenu/ReloadFile"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/FileMenu/ReloadFile"); + gtk_action_set_sensitive (reload, sensitive); + } + +@@ -556,7 +557,7 @@ + MainView::sensitiveRotateLeft (gboolean sensitive) + { + GtkAction *rotateLeft = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/RotateLeft"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/RotateLeft"); + gtk_action_set_sensitive (rotateLeft, sensitive); + } + +@@ -564,7 +565,7 @@ + MainView::sensitiveRotateRight (gboolean sensitive) + { + GtkAction *rotateRight = gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/RotateRight"); ++ "/MenuBar/TopMenu/ViewMenu/RotateRight"); + gtk_action_set_sensitive (rotateRight, sensitive); + } + +@@ -572,7 +573,7 @@ + MainView::sensitiveSave (gboolean sensitive) + { + GtkAction *save = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/FileMenu/SaveFile"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/FileMenu/SaveFile"); + gtk_action_set_sensitive (save, sensitive); + } + +@@ -586,7 +587,7 @@ + MainView::sensitiveZoomIn (gboolean sensitive) + { + GtkAction *zoomIn = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomIn"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomIn"); + gtk_action_set_sensitive (zoomIn, sensitive); + } + +@@ -594,7 +595,7 @@ + MainView::sensitiveZoomOut (gboolean sensitive) + { + GtkAction *zoomOut = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomOut"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomOut"); + gtk_action_set_sensitive (zoomOut, sensitive); + } + +@@ -602,7 +603,7 @@ + MainView::sensitiveZoomFit (gboolean sensitive) + { + GtkAction *zoomFit = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomFit"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomFit"); + gtk_action_set_sensitive (zoomFit, sensitive); + } + +@@ -610,7 +611,7 @@ + MainView::sensitiveZoomWidth (gboolean sensitive) + { + GtkAction *zoomWidth = +- gtk_ui_manager_get_action (m_UIManager, "/MenuBar/ViewMenu/ZoomWidth"); ++ gtk_ui_manager_get_action (m_UIManager, "/MenuBar/TopMenu/ViewMenu/ZoomWidth"); + gtk_action_set_sensitive (zoomWidth, sensitive); + } + +@@ -654,7 +655,7 @@ + } + GtkAction *showIndex = + gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/ShowIndex"); ++ "/MenuBar/TopMenu/ViewMenu/ShowIndex"); + gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (showIndex), show); + } + +@@ -695,13 +696,13 @@ + gtk_window_fullscreen (GTK_WINDOW (m_MainWindow)); + // Hide the menu bar, tool bar, status bar and the index bar. Then + // zoom to fit. +- gtk_widget_hide (menuBar); ++// gtk_widget_hide (menuBar); + gtk_widget_hide (toolBar); + gtk_widget_hide (m_StatusBar); + gtk_widget_hide (m_Sidebar); + gtk_toggle_action_set_active ( + GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/ZoomFit")), TRUE); ++ "/MenuBar/TopMenu/ViewMenu/ZoomFit")), TRUE); + } + else + { +@@ -711,15 +712,15 @@ + // enabled. + main_window_show_index_cb ( + GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/ShowIndex")), ++ "/MenuBar/TopMenu/ViewMenu/ShowIndex")), + (gpointer)m_Pter); + main_window_show_statusbar_cb ( + GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/ShowStatusBar")), ++ "/MenuBar/TopMenu/ViewMenu/ShowStatusBar")), + (gpointer)m_Pter); + main_window_show_toolbar_cb ( + GTK_TOGGLE_ACTION (gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/ShowToolBar")), ++ "/MenuBar/TopMenu/ViewMenu/ShowToolBar")), + (gpointer)m_Pter); + } + } +@@ -814,7 +815,7 @@ + MainView::showStatusbar (gboolean show) + { + GtkAction *toggleAction = gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/ShowStatusBar"); ++ "/MenuBar/TopMenu/ViewMenu/ShowStatusBar"); + gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (toggleAction), show); + if ( show ) + { +@@ -830,7 +831,7 @@ + MainView::showToolbar (gboolean show) + { + GtkAction *toggleAction = gtk_ui_manager_get_action (m_UIManager, +- "/MenuBar/ViewMenu/ShowToolBar"); ++ "/MenuBar/TopMenu/ViewMenu/ShowToolBar"); + gtk_toggle_action_set_active (GTK_TOGGLE_ACTION (toggleAction), show); + GtkWidget *toolBar = gtk_ui_manager_get_widget (m_UIManager, "/ToolBar"); + if ( show ) diff --git a/meta/packages/epdfview/epdfview_0.1.6.bb b/meta/packages/epdfview/epdfview_0.1.6.bb new file mode 100644 index 0000000000..a528474d9b --- /dev/null +++ b/meta/packages/epdfview/epdfview_0.1.6.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "A minimal PDF viewer based on gtk and poppler" +HOMEPAGE = "http://trac.emma-soft.com/epdfview/" +LICENSE = "GPLv2" +SECTION = "x11/applications" +DEPENDS = "poppler gtk+ libowl" +PR="r0" + +SRC_URI = "http://trac.emma-soft.com/epdfview/chrome/site/releases/epdfview-${PV}.tar.bz2 \ + file://owl-menus.patch \ + file://epdfview.desktop \ + file://epdfview-ui.xml \ + file://epdfview-ui-print.xml" + +inherit autotools gettext + +do_install_prepend() { + install ${WORKDIR}/epdfview-ui.xml ${S}/data/epdfview-ui.xml + install ${WORKDIR}/epdfview-ui-print.xml ${S}/data/epdfview-ui-print.xml + install ${WORKDIR}/epdfview.desktop ${S}/data/epdfview.desktop +} + diff --git a/meta/packages/epdfview/epdfview_0.1.7.bb b/meta/packages/epdfview/epdfview_0.1.7.bb new file mode 100644 index 0000000000..34e08bd140 --- /dev/null +++ b/meta/packages/epdfview/epdfview_0.1.7.bb @@ -0,0 +1,21 @@ +DESCRIPTION = "A minimal PDF viewer based on gtk and poppler" +HOMEPAGE = "http://trac.emma-soft.com/epdfview/" +LICENSE = "GPLv2" +SECTION = "x11/applications" +DEPENDS = "poppler gtk+" +PR="r0" + +SRC_URI = "http://trac.emma-soft.com/epdfview/chrome/site/releases/epdfview-${PV}.tar.bz2 \ + file://owl-menus.patch;patch=1 \ + file://epdfview.desktop \ + file://epdfview-ui.xml \ + file://epdfview-ui-print.xml" + +inherit autotools gettext + +do_install_prepend() { + install ${WORKDIR}/epdfview-ui.xml ${S}/data/epdfview-ui.xml + install ${WORKDIR}/epdfview-ui-print.xml ${S}/data/epdfview-ui-print.xml + install ${WORKDIR}/epdfview.desktop ${S}/data/epdfview.desktop +} +