Index: /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/control
===================================================================
--- /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/control	(revision 8757)
+++ /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/control	(revision 8757)
@@ -0,0 +1,11 @@
+Package: enigma2-plugin-swapbrowsers-zaphistorybrowser
+Version: 1.2
+Architecture: sh4
+OE: Zap History Browser 1.2 mod by MC_Ohr, Civer
+Section: browsers
+Priority: optional
+Maintainer: AAF-Forum
+Description: This plugin shows last channels visited for quck zapping. SWAPSTICK IS NEEDED!
+Homepage: http://www.aaf-digital.info
+Depends:
+Source: http://www.aaf-digital.info
Index: /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/postinst
===================================================================
--- /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/postinst	(revision 8757)
+++ /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/postinst	(revision 8757)
@@ -0,0 +1,7 @@
+#!/bin/sh
+TMP=/tmp/.browsers
+echo "successfully installed"
+echo "syncing disk"
+echo "please reboot your box so that the extension will be mounted..."
+sync
+exit 0
Index: /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/postrm
===================================================================
--- /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/postrm	(revision 8757)
+++ /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/postrm	(revision 8757)
@@ -0,0 +1,9 @@
+#!/bin/sh
+TMP=/tmp/.browsers
+
+rm -rf /var/swap/extensions/zaphistorybrowser
+
+echo "successfully removed"
+echo "syncing disk"
+sync
+exit 0
Index: /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/preinst
===================================================================
--- /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/preinst	(revision 8757)
+++ /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/preinst	(revision 8757)
@@ -0,0 +1,38 @@
+#!/bin/sh
+#
+TMP=/tmp/.browsers
+echo "syncing disk"
+sync
+
+model=`cat /etc/model`
+echo""
+echo "Checking your Boxtype...."
+echo "Some Plugins will not work correctly on your $model!"
+echo ""
+if [ "$model" = "" ]; then
+	echo "Sorry! This Plugin is not available for your $model because it will not work correctly!!!"
+	echo "Aborting installation..."
+	exit 1
+else
+	echo "Boxtype: $model OK"
+fi
+
+echo "checking swapstick"
+if [ ! -d /var/swap/extensions/ ]; then
+  echo "--------------------------"
+	echo "no swapstick found...."
+	echo "--------------------------"
+	exit 1
+fi
+echo "swapstick found...."
+echo "installing ZapHistoryBrowser 1.2 to swapstick..."
+echo "checking OS"
+if  [ `cat /etc/motd | grep AAF | grep M | grep rev | wc -l` -eq 0 ]; then                      
+	echo ---------------------------
+	echo DONT USE this IPK Package!!
+	echo ---
+	echo Only for AAF Image!!
+	echo ---------------------------
+	exit 1
+fi
+exit 0
Index: /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/prerm
===================================================================
--- /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/prerm	(revision 8757)
+++ /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/CONTROL/prerm	(revision 8757)
@@ -0,0 +1,6 @@
+#!/bin/sh
+TMP=/tmp/.browsers
+echo "syncing disk"
+sync
+echo "removing ZapHistoryBrowser 1.2 from swapstick"
+exit 0
Index: /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/var/swap/extensions/zaphistorybrowser/plugin.py
===================================================================
--- /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/var/swap/extensions/zaphistorybrowser/plugin.py	(revision 8757)
+++ /ipk/source.sh4/swapbrowsers_zaphistorybrowser_1_2/var/swap/extensions/zaphistorybrowser/plugin.py	(revision 8757)
@@ -0,0 +1,136 @@
+##
+## Zap-History Browser
+## by AliAbdul
+## modded by MC_Ohr from AAF-Digital HD Forum
+##
+from Components.ActionMap import ActionMap
+from Components.Label import Label
+from Components.MenuList import MenuList
+from enigma import eServiceCenter
+from Plugins.Plugin import PluginDescriptor
+from Screens.Screen import Screen
+
+#--- Civer start Skindetection----
+from enigma import getDesktop
+
+global HDskin
+global KSskin
+HDskin = False
+KSskin = False
+try:
+	skin_w = getDesktop(0).size().width()
+	if skin_w == 1280:
+		HDskin = True
+		KSskin = False
+	elif skin_w == 1024:
+		HDskin = False
+		KSskin = True
+	else:
+		HDskin = False
+		KSskin = False
+except:
+	HDskin = False
+	KSskin = False
+#--- Civer end Skindetection----
+
+################################################
+
+class ZapHistoryBrowser(Screen):
+#--- Civer start (added skinKS and skinHD)----
+	skin = """
+	<screen position="200,80" size="320,440" title="Zap-History Browser" >
+		<ePixmap pixmap="skin_default/buttons/red.png" position="10,0" size="140,40" transparent="1" alphatest="on" />
+		<ePixmap pixmap="skin_default/buttons/green.png" position="170,0" size="140,40" transparent="1" alphatest="on" />
+		<widget name="key_red" position="10,0" zPosition="1" size="140,40" font="Regular;20" valign="center" halign="center" backgroundColor="#1f771f" transparent="1" />
+		<widget name="key_green" position="170,0" zPosition="1" size="140,40" font="Regular;20" valign="center" halign="center" backgroundColor="#1f771f" transparent="1" />
+		<widget name="list" position="0,40" size="320,400" scrollbarMode="showOnDemand" />
+	</screen>"""
+	
+	skinKS = """
+	<screen position="352,80" size="320,440" title="Zap-History Browser" >
+		<ePixmap pixmap="skin_default/buttons/red.png" position="10,0" size="140,40" transparent="1" alphatest="on" />
+		<ePixmap pixmap="skin_default/buttons/green.png" position="170,0" size="140,40" transparent="1" alphatest="on" />
+		<widget name="key_red" position="10,0" zPosition="1" size="140,40" font="Regular;20" valign="center" halign="center" backgroundColor="#1f771f" transparent="1" />
+		<widget name="key_green" position="170,0" zPosition="1" size="140,40" font="Regular;20" valign="center" halign="center" backgroundColor="#1f771f" transparent="1" />
+		<widget name="list" position="0,40" size="320,400" scrollbarMode="showOnDemand" />
+	</screen>"""
+	
+	skinHD = """
+	<screen position="480,140" size="320,440" title="Zap-History Browser" >
+		<ePixmap pixmap="skin_default/buttons/red.png" position="10,0" size="140,40" transparent="1" alphatest="on" />
+		<ePixmap pixmap="skin_default/buttons/green.png" position="170,0" size="140,40" transparent="1" alphatest="on" />
+		<widget name="key_red" position="10,0" zPosition="1" size="140,40" font="Regular;20" valign="center" halign="center" backgroundColor="#1f771f" transparent="1" />
+		<widget name="key_green" position="170,0" zPosition="1" size="140,40" font="Regular;20" valign="center" halign="center" backgroundColor="#1f771f" transparent="1" />
+		<widget name="list" position="0,40" size="320,400" scrollbarMode="showOnDemand" />
+	</screen>"""
+#--- Civer end (added skinKS and skinHD)----
+
+	def __init__(self, session, servicelist):
+		#---- Civer start skindetection---
+		if HDskin:
+			self.skin = ZapHistoryBrowser.skinHD
+		elif KSskin:
+			self.skin = ZapHistoryBrowser.skinKS
+		else:
+			self.skin = ZapHistoryBrowser.skin
+#---- Civer end skindetection---
+		Screen.__init__(self, session)
+
+		self.servicelist = servicelist
+		self.serviceHandler = eServiceCenter.getInstance()
+
+		self["list"] = MenuList([])
+		self["key_red"] = Label(_("Clear"))
+		self["key_green"] = Label(_("Delete"))
+
+		self["actions"] = ActionMap(["OkCancelActions", "ColorActions"],
+			{
+				"ok": self.zap,
+				"cancel": self.close,
+				"red": self.clear,
+				"green": self.delete
+			}, prio=-1)
+
+		self.onLayoutFinish.append(self.buildList)
+
+	def buildList(self):
+		list = []
+		for x in self.servicelist.history:
+			if len(x) == 2:
+				#print "Single-Bouquet!!!"
+				ref = x[1]
+			else:
+				#print "Multi-Bouquet!!!"
+				ref = x[2]
+			info = self.serviceHandler.info(ref)
+			name = info.getName(ref).replace('\xc2\x86', '').replace('\xc2\x87', '')
+			list.append(name)
+		list.reverse()
+		self["list"].setList(list)
+
+	def zap(self):
+		length = len(self.servicelist.history)
+		if length > 0:
+			self.servicelist.history_pos = (length - self["list"].getSelectionIndex()) - 1
+			self.servicelist.setHistoryPath()
+			self.close()
+
+	def clear(self):
+		for i in range(0, len(self.servicelist.history)):
+			del self.servicelist.history[0]
+		self.buildList()
+
+	def delete(self):
+		length = len(self.servicelist.history)
+		if length > 0:
+			idx = (length - self["list"].getSelectionIndex()) - 1
+			del self.servicelist.history[idx]
+			self.buildList()
+
+################################################
+
+def main(session, servicelist, **kwargs):
+	session.open(ZapHistoryBrowser, servicelist)
+
+def Plugins(**kwargs):
+	return PluginDescriptor(name=_("Zap-History Browser"), where=PluginDescriptor.WHERE_EXTENSIONSMENU, fnc=main)
