Add undo command
This commit is contained in:
parent
321c00bbfb
commit
ff938fc0d5
@ -56,6 +56,7 @@ def main():
|
|||||||
cmds['print'].signal.connect(mw.tabs.print_act)
|
cmds['print'].signal.connect(mw.tabs.print_act)
|
||||||
cmds['scrolldown'].signal.connect(mw.tabs.scroll_down_act)
|
cmds['scrolldown'].signal.connect(mw.tabs.scroll_down_act)
|
||||||
cmds['scrollup'].signal.connect(mw.tabs.scroll_up_act)
|
cmds['scrollup'].signal.connect(mw.tabs.scroll_up_act)
|
||||||
|
cmds['undo'].signal.connect(mw.tabs.undo_close)
|
||||||
kp.from_cmd_dict(cmds)
|
kp.from_cmd_dict(cmds)
|
||||||
|
|
||||||
mw.show()
|
mw.show()
|
||||||
|
@ -64,3 +64,8 @@ class ScrollUp(Command):
|
|||||||
nargs = 0
|
nargs = 0
|
||||||
key = 'k'
|
key = 'k'
|
||||||
signal = pyqtSignal()
|
signal = pyqtSignal()
|
||||||
|
|
||||||
|
class Undo(Command):
|
||||||
|
nargs = 0
|
||||||
|
key = 'u'
|
||||||
|
signal = pyqtSignal()
|
||||||
|
@ -7,6 +7,7 @@ import logging
|
|||||||
class TabbedBrowser(TabWidget):
|
class TabbedBrowser(TabWidget):
|
||||||
tabs = []
|
tabs = []
|
||||||
cur_progress = pyqtSignal(int)
|
cur_progress = pyqtSignal(int)
|
||||||
|
url_stack = []
|
||||||
|
|
||||||
def __init__(self, parent):
|
def __init__(self, parent):
|
||||||
super().__init__(parent)
|
super().__init__(parent)
|
||||||
@ -29,10 +30,18 @@ class TabbedBrowser(TabWidget):
|
|||||||
tab = self.tabs[self.currentIndex()]
|
tab = self.tabs[self.currentIndex()]
|
||||||
tab.openurl(url)
|
tab.openurl(url)
|
||||||
|
|
||||||
|
@pyqtSlot()
|
||||||
|
def undo_close(self):
|
||||||
|
if self.url_stack:
|
||||||
|
self.tabopen(self.url_stack.pop())
|
||||||
|
|
||||||
@pyqtSlot()
|
@pyqtSlot()
|
||||||
def close_act(self):
|
def close_act(self):
|
||||||
if len(self.tabs) > 1:
|
if len(self.tabs) > 1:
|
||||||
idx = self.currentIndex()
|
idx = self.currentIndex()
|
||||||
|
# FIXME maybe we should add the QUrl object here and deal with QUrls everywhere
|
||||||
|
# FIXME maybe we actually should store the webview objects here
|
||||||
|
self.url_stack.append(self.tabs[idx].url().url())
|
||||||
self.tabs.pop(idx)
|
self.tabs.pop(idx)
|
||||||
self.removeTab(idx)
|
self.removeTab(idx)
|
||||||
else:
|
else:
|
||||||
|
Loading…
Reference in New Issue
Block a user