From 2e1499d9c10251dfa46cdfc2c17a88c15765619c Mon Sep 17 00:00:00 2001 From: Doug Kearns Date: Sun, 14 Oct 2007 22:47:45 +0000 Subject: [PATCH] beep if trying to delete the last tab which is already an empty tab --- content/events.js | 4 +++- content/tabs.js | 10 ++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/content/events.js b/content/events.js index 1922b831..b0cb8c39 100644 --- a/content/events.js +++ b/content/events.js @@ -661,8 +661,10 @@ function Events() //{{{ vimperator.input.pendingArgMap = null; vimperator.input.pendingMotionMap = null; - stop = false; // command was not a vimperator command, maybe it is a firefox command + // allow key to be passed to firefox if we can't handle it + stop = false; + // TODO: see if this check is needed or are all motion commands already mapped in these modes? if (!vimperator.hasMode(vimperator.modes.COMMAND_LINE)) vimperator.beep(); } diff --git a/content/tabs.js b/content/tabs.js index 37b75f78..e0e25d7c 100644 --- a/content/tabs.js +++ b/content/tabs.js @@ -157,8 +157,14 @@ function Tabs() //{{{ getBrowser().removeTab(tab); else { - vimperator.open("about:blank", vimperator.NEW_BACKGROUND_TAB); - getBrowser().removeTab(tab); + if (vimperator.buffer.URL != "about:blank" || + getWebNavigation().sessionHistory.count > 0) + { + vimperator.open("about:blank", vimperator.NEW_BACKGROUND_TAB); + getBrowser().removeTab(tab); + } + else + vimperator.beep(); } }