Index: head/news/xpn/Makefile =================================================================== --- head/news/xpn/Makefile (revision 485065) +++ head/news/xpn/Makefile (revision 485066) @@ -1,39 +1,40 @@ # Created by: Nicola Vitale # $FreeBSD$ PORTNAME= xpn PORTVERSION= 1.2.6 -PORTREVISION= 6 +PORTREVISION= 7 CATEGORIES= news python MASTER_SITES= http://xpn.altervista.org/codice/ -MAINTAINER= nivit@FreeBSD.org +MAINTAINER= ports@FreeBSD.org COMMENT= X Python Newsreader LICENSE= GPLv2 RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}gtk2>=2.24.0:x11-toolkits/py-gtk2@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}sqlite3>=2.7.9:databases/py-sqlite3@${PY_FLAVOR} +NO_ARCH= yes NO_BUILD= yes SHEBANG_FILES= ${XPN} SUB_FILES= ${PORTNAME} SUB_LIST= PYTHON_CMD=${PYTHON_CMD} XPN=${XPN} USES= gettext python:2.7 shebangfix XPN= ${PORTNAME}.py OPTIONS_DEFINE= DOCS do-install: ${MKDIR} ${STAGEDIR}${DATADIR} ${INSTALL_SCRIPT} ${WRKSRC}/${XPN} ${STAGEDIR}${DATADIR}/${XPN} ${INSTALL_SCRIPT} ${WRKDIR}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/${PORTNAME} (cd ${WRKSRC} && \ ${COPYTREE_SHARE} . ${STAGEDIR}${DATADIR} "-mindepth 2") ${MKDIR} ${STAGEDIR}${DOCSDIR} ${INSTALL_DATA} ${WRKSRC}/${PORTNAME}.html ${STAGEDIR}${DOCSDIR} .include Index: head/news/xpn/files/patch-xpn.py =================================================================== --- head/news/xpn/files/patch-xpn.py (nonexistent) +++ head/news/xpn/files/patch-xpn.py (revision 485066) @@ -0,0 +1,97 @@ +From: David Paleino +Subject: implement a trayicon, with a context menu, and blinking on new + posts. + +--- xpn.py.orig 2018-11-16 09:23:53 UTC ++++ xpn.py +@@ -329,7 +329,6 @@ class MainWin: + self.win_outbox=Outbox_Manager(self,VERSION) + self.win_outbox.show() + +- + def open_edit_win(self,object,is_followup=False): + group="" + id_name="" +@@ -396,7 +395,6 @@ class MainWin: + self.win4=Edit_Win(self.configs,group,None,None,self.subscribed_groups,server_name=self.current_server,id_name=id_name) + #self.win4.show() + +- + def open_edit_mail_win(self,object): + to_name="" + id_name="" +@@ -579,6 +577,31 @@ class MainWin: + except: pass + gtk.main_quit() + ++ def tray_activated(self, widget): ++ if self.window.get_property("is-active"): ++ self.window.iconify() ++ self.window.hide() ++ else: ++ self.window.present() ++ self.window.deiconify() ++ widget.set_blinking(False) ++ ++ def tray_popuped(self, widget, button, timestamp): ++ menu = gtk.Menu() ++ menuitem = gtk.ImageMenuItem(gtk.STOCK_PREFERENCES) ++ menuitem.connect("activate", self.open_configure_win) ++ menu.append(menuitem) ++ menu.append(gtk.SeparatorMenuItem()) ++ menuitem = gtk.ImageMenuItem(gtk.STOCK_ABOUT) ++ menuitem.connect('activate', self.open_about_dialog) ++ menu.append(menuitem) ++ menuitem = gtk.ImageMenuItem(gtk.STOCK_QUIT) ++ menuitem.connect('activate', self.destroy) ++ menu.append(menuitem) ++ ++ menu.show_all() ++ menu.popup(None, None, None, button, timestamp) ++ + def save_sorting_type(self,obj=None): + for n in range(1,5): + col=self.threads_pane.threads_tree.get_column(n) +@@ -592,9 +615,7 @@ class MainWin: + self.configs["ascend_order"]=ascend_order + self.configs["sort_col"]=col_name + self.conf.write_configs() +- +- +- ++ + def show_subscribed(self): + model,path_list,iter_list=self.groups_pane.get_selected_rows() + +@@ -1588,6 +1609,8 @@ class MainWin: + self.statusbar.push(1,message) + if total_headers: + self.progressbar.set_text(_("Building Articles")) ++ if not self.window.get_property("is-active"): ++ self.trayicon.set_blinking(True) + else: + self.progressbar.set_text(_("No New Headers")) + self.progressbar.set_fraction(2/float(2)) +@@ -2600,8 +2623,6 @@ When you try to import a newsrc file XPN searches for + article.has_body=False + self.art_db.insertArticle(group[0],article) + +- +- + def __init__(self,use_home,custom_dir): + Edit_Win.VERSION=VERSION + Edit_Mail_Win.VERSION=VERSION +@@ -2615,6 +2636,13 @@ When you try to import a newsrc file XPN searches for + if ret>0 :sys.exit(ret) + self.wdir=userdir.dir + ++ # handle the trayicon ++ self.trayicon = gtk.StatusIcon() ++ self.trayicon.set_tooltip_text(_("XPN Newsreader")) ++ self.trayicon.set_from_file("pixmaps/xpn-icon.png") ++ self.trayicon.connect("activate", self.tray_activated) ++ self.trayicon.connect("popup-menu", self.tray_popuped) ++ + self.conf=Config_File() + self.configs=self.conf.get_configs() + Property changes on: head/news/xpn/files/patch-xpn.py ___________________________________________________________________ Added: fbsd:nokeywords ## -0,0 +1 ## +yes \ No newline at end of property Added: svn:eol-style ## -0,0 +1 ## +native \ No newline at end of property Added: svn:mime-type ## -0,0 +1 ## +text/plain \ No newline at end of property