| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2025-07-08 | Replace std::unique_ptr with a custom implementation | Maxime Coste | |
| <memory> is a costly header we can avoid by just implementing UniquePtr ourselves, which is a pretty straightforward in modern C++, this saves around 10% of the compilation time here. | |||
| 2022-12-06 | Load buffer in command line order | Maxime Coste | |
| Pass the first buffer on the the command line explicitely to client creation. This ensure the buffer list matches the command line, which makes buffer-next/buffer-previous a bit more useful. Fixes #2705 | |||
| 2021-03-11 | Always redraw after getting some user input | Maxime Coste | |
| 2019-04-12 | Prevent conversion to client on suspend from disconnecting other clients | Maxime Coste | |
| clear the client manager in the to be converted process without sending exit messages as the forked server will still be there. Fixes #2847 | |||
| 2019-04-04 | Fix detection of client ungraceful disconnection | Maxime Coste | |
| 2018-03-25 | Cleanup client name validation code | Maxime Coste | |
| 2018-03-23 | Restore client name after converting to client | Maxime Coste | |
| When Kakoune forked the sever to background, the newly converted to client process (the original client/server process) was not preserving its previous client name. | |||
| 2018-01-21 | Do not block when waiting for next event if we have pending input | Maxime Coste | |
| Handle next event should never block if we have already accumulated input that we want to process. As we can accumulate new input in lots of places (everytime we run a shell process for example, we might end up reading input keys. That can be triggered during the mode line generation which takes place during display of the window) Fixes #1804 | |||
| 2017-08-28 | Expose client pid as $kak_client_pid | Maxime Coste | |
| As requested in #1414 | |||
| 2017-08-23 | Support specifying an exit status on `quit` commands | Maxime Coste | |
| The current client exit status can be specified as an optional parameter, is nothing is given the exit status will be 0. Fixes #1230 | |||
| 2017-01-29 | Remove unused WindowAndSelections timestamp field | Maxime Coste | |
| The SelectionList already has a timestamp. | |||
| 2017-01-19 | Only touch new clients selections when target coord are explicit | Maxime Coste | |
| Do not implicitely change new clients selections to target coordinates when the user did not specify them, so that we can re-use the selections from the found free window, which is the generally desired behaviour. | |||
| 2016-12-01 | Rework handling of initial coordinates so that init commands can change them | Maxime Coste | |
| Fixes #944 | |||
| 2016-11-29 | Simplify greatly UI input handling | Maxime Coste | |
| This round trip through an input callback expected to call is_key_available and get_key was overcomplicated, just send the keys as they arrive, the client is already buffering due to urgent event mode. | |||
| 2016-11-28 | Add more memory domains to certain data | Maxime Coste | |
| 2016-09-04 | Rework client quitting and handling of remote errors | Maxime Coste | |
| Client quitting no longer immediately unwinds, client is just pushed for deletion until we get back to the main loop, similarly to what happens for buffer and window deletion. | |||
| 2016-05-14 | Delay window deletion until we get back to main loop | Maxime Coste | |
| Avoid WinResize hooks while redrawing, ensure window resize only take place while handling user input. Fixes #672 | |||
| 2016-03-03 | destroy buffer manager first but clear clients before destroying buffers. | Maxime Coste | |
| Fixes #612 | |||
| 2015-10-08 | Detect ungraceful exits, and backup modified buffers in these cases | Maxime Coste | |
| 2015-08-26 | Reorganize slightly local client creation | Maxime Coste | |
| 2015-06-03 | Get rid of the mode trash, delete mode directly when leaving on_key | Maxime Coste | |
| 2015-02-12 | Cleanup and refactor externally modified buffer reloading | Maxime Coste | |
| * Correctly hide the reload dialog in every client. * Correctly handle buffer being deleted. | |||
| 2015-01-14 | Even more memory tracking | Maxime Coste | |
| 2015-01-12 | replace all std::vector with Vector | Maxime Coste | |
| 2014-12-23 | Remove trailing blank lines | Maxime Coste | |
| 2014-11-29 | Rework client pending key handling, fix insert/normal timers | Maxime Coste | |
| 2014-11-25 | Separate events between normal and urgent ones | Maxime Coste | |
| Run urgent ones while executing %sh blocks. Fixes #236 | |||
| 2014-10-20 | Port more code to StringView instead of const String& | Maxime Coste | |
| 2014-08-12 | Defer deletion of buffers to after the event loop | Maxime Coste | |
| We can have SelectionList in flights on the buffer, so mark it for deletion by moving it in a buffer trash, and effectively delete it later, at a point where there should not be any further access to it. | |||
| 2014-05-13 | SelectionList know its buffer and timestamp | Maxime Coste | |
| 2014-04-18 | Use StringView for completion functions | Maxime Coste | |
| 2014-04-07 | Add support for querying client environement variables | Maxime Coste | |
| At connection, a remote client sends all its environement to the server, which then provides access to client env through kak_client_env_VAR_NAME variables in the shell. | |||
| 2014-04-07 | Add ClientManager::complete_client_name | Maxime Coste | |
| 2014-01-27 | Fix compilation with clang 3.4 | Maxime Coste | |
| 2013-12-20 | Get rid of Editor for good | Maxime Coste | |
| ClientManager now stores only the free windows, clients take ownership of its own. | |||
| 2013-12-07 | Add Client* ClientManager::get_client_ifp() that can return nullptr | Maxime Coste | |
| 2013-11-14 | Extract InputHandler from Client | Maxime Coste | |
| 2013-09-13 | Rework client name change | Maxime Coste | |
| 2013-09-12 | rename InputHandler to Client | Maxime Coste | |
| 2013-09-12 | Move Client responsibilities to InputHandler | Maxime Coste | |
| InputHandler owns it's UserInterface, and is directly stored by the ClientManager. | |||
| 2013-04-15 | Handle SIGHUP gracefully | Maxime Coste | |
| 2013-04-15 | move Client as a public class instead of a ClientManager implementation detail | Maxime Coste | |
| 2013-02-07 | ClientManager: move the Client inner class detail in the cpp file | Maxime Coste | |
| 2013-01-28 | InputHandler have it's own context | Maxime Coste | |
| 2013-01-14 | move input watching responsibility into UserInterface implementations | Maxime Coste | |
| 2013-01-07 | Autoname client on creation, and access client name from shell with $kak_client | Maxime Coste | |
| 2012-12-28 | new clients always takes last used buffer, support multiple file on command line | Maxime Coste | |
| 2012-12-18 | Support initial command passing when a client is connecting | Maxime Coste | |
| 2012-12-03 | ClientManager: support naming clients and accessing client's context by name | Maxime Coste | |
| 2012-11-22 | ClientManager: store client with a unique_ptr | Maxime Coste | |
