Hugh McMaster
577258a981
conhost: Update debug output and comments when loading/saving settings.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-09 20:55:20 +02:00
Hugh McMaster
1c9c1ebc80
conhost: Show caret immediately after reshaping.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-09 20:55:20 +02:00
Hugh McMaster
25f012edcb
conhost: Don't prompt the user to save their app-specific settings.
...
On Windows, app-specific console settings are always saved to the
registry unless the user cancels the console properties dialog.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 22:07:42 +02:00
Hugh McMaster
bb2b1d0ed1
conhost: Only save app-specific settings that differ from the defaults.
...
On Windows, app-specific subkeys of HKCU\Console only hold console
settings that differ from the global defaults.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 22:07:42 +02:00
Hugh McMaster
37bcbe6bca
conhost: Save console settings as global defaults on first run.
...
On Windows, HKCU\Console holds global default settings, while subkeys
hold any app-specific settings that differ from the defaults.
Wine's conhost.exe implementation currently saves all console settings
to an app-specific subkey on the first run, while global defaults are
only saved to HKCU\Console if the user selects 'Set Defaults' from the
pop-up menu and saves new settings. This is the opposite of console
behaviour on Windows.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-30 22:07:42 +02:00
Hugh McMaster
303f8042f9
conhost: Set correct face name when the specified font is not available.
...
conhost.exe currently copies the user-specified face name from the
LOGFONT structure. This results in an invalid face name when the
specified font is not available.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-24 21:25:02 +02:00
Hugh McMaster
7a32bc9e32
conhost: Split first font code path from font update code path.
...
This change prevents calls to update_console_font() setting any defaults.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-23 20:50:21 +02:00
Hugh McMaster
a2bb60e62c
conhost: Save default font's pitch and family on first run.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 13:09:51 +02:00
Francois Gouget
7b63a5f446
conhost: Fix the spelling of a couple of comments.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-18 12:36:24 +02:00
Jacek Caban
b4d91adb16
kernelbase: Add support for CREATE_NO_WINDOW flag in CreateProcess.
...
Based on patches by Eric Pouech and Torge Matthies.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-12 21:39:42 +02:00
Eric Pouech
bb05f13fd8
conhost: Support relative cursor positioning.
...
Also add fallback method when legacy console APIs where used.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-25 21:24:59 +01:00
Eric Pouech
9198ca27d0
conhost: Correctly recompute start of edit line on ReadConsole.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-25 19:11:06 +01:00
Hugh McMaster
da854c537d
conhost: Reimplement font dialog handling.
...
Much of the existing font dialog code is overly complicated and difficult
to follow. There are also bugs in the code, which cannot be fixed with
minimal changes due to the complexity of the existing source. For example,
changing the font face via the listbox unexpectedly changes the font size.
It is also unnecessary to recreate the list of available font sizes
each font face selection if the font type remains unchanged.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-11 21:42:43 +01:00
Hugh McMaster
dfb7428f20
conhost: Don't compare the console config if the user cancels the dialog.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-02 20:17:25 +01:00
Eric Pouech
89a8b32d7a
conhost/tests: Add tests for ReadConsoleW with control.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-01 22:41:15 +01:00
Eric Pouech
68b4ffebfb
kernelbase: Return key state in ReadConsoleW with control.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-01 22:41:15 +01:00
Eric Pouech
ef8d44e58e
kernelbase: Support CONSOLE_READCONSOLE_CONTROL in ReadConsoleW.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-01 22:41:15 +01:00
Eric Pouech
accacf1a49
conhost/tests: Add tests for shift-tab processing.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-28 21:31:56 +01:00
Eric Pouech
5b3bc2eeb4
conhost: Handle csi escape sequence for shift tab.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-28 21:31:56 +01:00
Hugh McMaster
27df7f518c
kernelbase: Implement SetCurrentConsoleFontEx.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-10 10:47:05 +01:00
Eric Pouech
620305d90e
conhost: Enable compilation with long types.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-04 11:20:33 +01:00
Eric Pouech
7783f021fb
conhost/tests: Enable compilation with long types.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-03 17:19:41 +01:00
Alex Henrie
78df9cb96c
conhost: Fix memory leak on error path in create_screen_buffer (cppcheck).
...
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-02 18:43:10 +01:00
Alexandre Julliard
f0cd33c69e
include: Add support for defining Win32 types as 'long' where possible.
...
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Jacek Caban
288093229d
conhost: Remove unused extra_size argument from set_output_info.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-14 20:55:35 +01:00
Hugh McMaster
12cf3459b5
conhost: Process Ctrl-M key input.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50526
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-14 20:53:42 +01:00
Hugh McMaster
996126b2de
conhost: Only use the maximum character width if a double-byte character set is in use.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-23 13:38:23 +01:00
Alexandre Julliard
088a787a2c
makefiles: Make -mno-cygwin the default.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-20 22:45:48 +02:00
Hugh McMaster
0eab766bce
conhost: Set keyboard focus to correct radio button in save dialog.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-31 21:56:52 +02:00
Hugh McMaster
a7fb08fba6
conhost: Use font face length as number of characters.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 18:27:44 +02:00
Jacek Caban
da86e50e29
conhost: Use message window to return a window for windowless consoles.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=38640
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Jacek Caban
365e99c022
conhost: Use dedicated ioctl for GetConsoleWindow.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 18:16:49 +02:00
Hugh McMaster
bd9db4b6de
conhost: Use correct size when storing font FaceName in the registry.
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-09 21:40:44 +02:00
Hugh McMaster
3bf6b27882
conhost: Copy font properties to the new screen buffer.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50187
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-05 20:43:28 +02:00
Hugh McMaster
cfb0d152eb
conhost: Set screen buffer height to 150 characters in registry defaults.
...
This matches the defaults in create_screen_buffer().
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 22:57:38 +02:00
Hugh McMaster
30edd84929
conhost: Remove duplicate lines from current_config().
...
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-02 22:57:38 +02:00
Hugh McMaster
f1023b4b52
conhost: Popup Attributes should match Character Attributes when creating a new screen buffer.
...
Popup Attributes should match Character Attributes when a new screen
buffer is created. The existing Popup Attributes are copied when
using a pseudo console.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-26 21:44:25 +02:00
Hugh McMaster
b17eb27112
conhost: Copy Character Attributes (colors) to the new screen buffer.
...
CreateConsoleScreenBuffer() copies the Character Attributes (colors)
to the new screen buffer when called.
Signed-off-by: Hugh McMaster <hugh.mcmaster@outlook.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-23 16:43:50 +02:00
Jacek Caban
8dfcc1e3bc
conhost: Silence FIXME in console_input_ioctl.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-28 19:43:28 +02:00
Alexandre Julliard
1bd4473484
ntdll: Create a thread to run the ctrl-C routine instead of raising an exception.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-09 23:38:43 +02:00
Jacek Caban
fdf568aaae
ntdll: Inherit tty std input and output in processes attached to Unix console.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50117
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-05 21:52:23 +02:00
Gabriel Ivăncescu
8d076bc5e4
conhost: Fix line wrapping around when ENABLE_VIRTUAL_TERMINAL_PROCESSING is set.
...
Remember the fact we completed the entire line but normalize the cursor
otherwise. A newline is delayed so it wraps when writing a new character
if the cursor is outside the width.
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-05 23:00:00 +02:00
Gabriel Ivăncescu
85c4adc80b
conhost: Wrap around immediately if ENABLE_VIRTUAL_TERMINAL_PROCESSING is not set.
...
Signed-off-by: Gabriel Ivăncescu <gabrielopcode@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-05 23:00:00 +02:00
Jacek Caban
8ccf24ccb0
conhost: Delay window refresh on output update.
...
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-31 19:26:09 +02:00
Francois Gouget
e0d1bec916
conhost: Add a trailing linefeed to TRACE() and ERR() messages.
...
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-02 20:42:44 +01:00
Jacek Caban
9e97f3513e
conhost: Avoid assumption about the exact Unix cursor position after writing to the last column.
...
Spotted by Roman Pišl.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50581
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-16 23:01:38 +01:00
Roman Pišl
2ca86d3b59
conhost: Improve notification when resizing window.
...
Signed-off-by: Roman Pišl <rpisl@seznam.cz>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-03 20:59:55 +01:00
Roman Pišl
361b4c381e
conhost: Fix copy-paste error when setting windows size.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50602
Signed-off-by: Roman Pišl <rpisl@seznam.cz>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-01 22:16:47 +01:00
Jacek Caban
105db4c538
conhost: Fix wrapping search in edit_line_find_in_history.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50000
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-01-04 21:48:25 +01:00
Jacek Caban
d7d315ddf4
conhost: Ignore CONTROL_C_EXIT exceptions in Unix mode.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50304
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-30 11:19:16 +01:00