diff --git a/Lib/io.py b/Lib/io.py
index 24bf37b..98843d3 100644
--- a/Lib/io.py
+++ b/Lib/io.py
@@ -1203,7 +1203,7 @@
     # were rendered by the decoder after feeding it those bytes.  We
     # use this to reconstruct intermediate decoder states in tell().
 
-    def _seekable(self):
+    def seekable(self):
         return self._seekable
 
     def flush(self):
diff --git a/Lib/test/test_io.py b/Lib/test/test_io.py
index 4963416..0bc2b48 100644
--- a/Lib/test/test_io.py
+++ b/Lib/test/test_io.py
@@ -895,6 +895,12 @@
         txt.seek(pos)
         self.assertEquals(txt.read(4), "BBB\n")
 
+    def test_issue2282(self):
+        buffer = io.BytesIO(self.testdata)
+        txt = io.TextIOWrapper(buffer, encoding="ascii")
+
+        self.assertEqual(buffer.seekable(), txt.seekable())
+
     def test_newline_decoder(self):
         import codecs
         decoder = codecs.getincrementaldecoder("utf-8")()
diff --git a/Misc/ACKS b/Misc/ACKS
index 0c431c0..1ae773f 100644
--- a/Misc/ACKS
+++ b/Misc/ACKS
@@ -33,6 +33,7 @@
 Stig Bakken
 Greg Ball
 Luigi Ballabio
+Jeff Balogh
 Michael J. Barber
 Chris Barker
 Quentin Barnes
diff --git a/Misc/NEWS b/Misc/NEWS
index b654516..1665256 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -30,6 +30,8 @@
 Core and Builtins
 -----------------
 
+- Issue #2282: io.TextIOWrapper was not overriding seekable() from io.IOBase.
+
 - Issue #2115: Important speedup in setting __slot__ attributes.  Also 
   prevent a possible crash: an Abstract Base Class would try to access a slot 
   on a registered virtual subclass.
