src/jdk.internal.le/windows/classes/jdk/internal/org/jline/terminal/impl/jna/win/JnaWinSysTerminal.java
--- a/src/jdk.internal.le/windows/classes/jdk/internal/org/jline/terminal/impl/jna/win/JnaWinSysTerminal.java Mon Nov 04 14:26:18 2019 +0800
+++ b/src/jdk.internal.le/windows/classes/jdk/internal/org/jline/terminal/impl/jna/win/JnaWinSysTerminal.java Mon Nov 04 09:40:35 2019 +0100
@@ -1,10 +1,10 @@
/*
- * Copyright (c) 2002-2018, the original author or authors.
+ * Copyright (c) 2002-2019, the original author or authors.
*
* This software is distributable under the BSD license. See the terms of the
* BSD license in the documentation provided with this software.
*
- * http://www.opensource.org/licenses/bsd-license.php
+ * https://opensource.org/licenses/BSD-3-Clause
*/
package jdk.internal.org.jline.terminal.impl.jna.win;
@@ -36,7 +36,7 @@
Writer writer;
if (ansiPassThrough) {
if (type == null) {
- type = OSUtils.IS_CONEMU ? TYPE_WINDOWS_256_COLOR : TYPE_WINDOWS;
+ type = OSUtils.IS_CONEMU ? TYPE_WINDOWS_CONEMU : TYPE_WINDOWS;
}
writer = new JnaWinConsoleWriter(consoleOut);
} else {
@@ -51,7 +51,7 @@
} catch (LastErrorException e) {
if (OSUtils.IS_CONEMU) {
if (type == null) {
- type = TYPE_WINDOWS_256_COLOR;
+ type = TYPE_WINDOWS_CONEMU;
}
writer = new JnaWinConsoleWriter(consoleOut);
} else {
@@ -95,6 +95,12 @@
public Size getSize() {
Kernel32.CONSOLE_SCREEN_BUFFER_INFO info = new Kernel32.CONSOLE_SCREEN_BUFFER_INFO();
Kernel32.INSTANCE.GetConsoleScreenBufferInfo(consoleOut, info);
+ return new Size(info.windowWidth(), info.windowHeight());
+ }
+
+ public Size getBufferSize() {
+ Kernel32.CONSOLE_SCREEN_BUFFER_INFO info = new Kernel32.CONSOLE_SCREEN_BUFFER_INFO();
+ Kernel32.INSTANCE.GetConsoleScreenBufferInfo(consoleOut, info);
return new Size(info.dwSize.X, info.dwSize.Y);
}