aboutsummaryrefslogtreecommitdiffstats
path: root/src/screen.rs (follow)
Commit message (Collapse)AuthorAge
* wip: restructing in progress, to prep for server-clientdenis2021-01-24
|
* fix(main): do not hang on exit (#150)Aram Drevekenin2021-01-20
|
* Added the set_selectable plugin API functionBrooks J Rady2021-01-11
|
* Get clipped, foolBrooks J Rady2021-01-06
|
* A module rename to please clippyBrooks J Rady2021-01-06
|
* Fix early quit with pluginsBrooks J Rady2021-01-06
|
* The RawFd has been slain...Brooks J Rady2021-01-06
|
* Very borkenBrooks J Rady2021-01-05
|
* refactor(tabs): lay down infrastructure for status bar (#116)Doron Tsur2020-12-19
| | | | | | | | | | | * resolves #76 * move private fun to bottom * refactor(tabs): do not allocate when filtering panes to terminals * style(formatting): make rustfmt happy Co-authored-by: Aram Drevekenin <aram@poor.dev>
* feature(infrastructure): tabs (#89)Denis Maximov2020-12-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * wip: tabs, just outlining stuff, for now it is a mess * wip: tabs, just outlining stuff, for now it is a mess * wip: formatting * wip: some moving around * wip: not sure why those things are not imported * wip: cleaning up a bit * wip: doesn't render when new tab is created? * wip: doesnt re-render when a new tab is spawned for now * wip: tabs now are a BTreeMap and we can switch between them in both directions * wip: I think that should also be here * wip: cleanup * Spawn a new terminal simultaneously with a new tab * Ensure proper Opening and Closing of tabs * cleanup * more cleanup * tests(snapshots): add 'loading' snapshot to each scenario * fix(tests): update snapshots * Add tests for tabs implementation * wip: added tests, moved tab related stuff to a separate file * wip: var name change, removed unused imports * chore: fromatting * wip: tests are you ok? * Remove next_tab_index field * clean close_tab() logic in screen.render() * wip: more tests added, review changes covered * chore: a programmer and a formatter walk into a bar.... * style(screen): update description comment * docs(tab): add comment description Co-authored-by: denis <denis@airheadventures.com> Co-authored-by: Kunal Mohan <kunalmohan99@gmail.com> Co-authored-by: Aram Drevekenin <aram@poor.dev> Co-authored-by: Kunal Mohan <44079328+kunalmohan@users.noreply.github.com>
* feat(infrastructure): introduce ErrorContext for tracking errors across ↵Kunal Mohan2020-12-09
| | | | | | | | | | | | | | | | | | | | | | | threads (#83) * Implement ErrorContext for tracking errors across threads * reorder Instruction and ErrorContext * Add ContextType, AppContext, ScreenContext, PtyContext * Use ArrayVec in ErrorContext * increase MAX_THREAD_CALL_STACK to 6 * Custom implement Debug for ErrorContext ad ContextType and color output * Use os_input instead of println!() * Use array instead of ArrayVec and some cleanup * Introduce SenderWithContext * Keep arrayvec at v0.5.1
* feat(rect): directional move focus #55 (#78)Denis Maximov2020-12-04
| | | | | | | | | | | | | | | * feat: directional move focus #55 * wip: refactored match into if let * wip: basic tests * feat: move to most overlapping pane tests * fix: formatting * wip: Moved the definitions to the Rect trait * formatting
* fix(compatibility): keypad arrow fixes (#80)Aram Drevekenin2020-12-03
| | | | | | | * fix(compatibility): make arrow keys work in htop and vim * docs(terminal): add explanatory comments to character string * style(format): make rustfmt happy
* feat(infra): add custom panic hook. Print backtrace and thread, error info ↵Kunal Mohan2020-12-03
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | on panic. (#75) * Add custom panic hook. Print backtrace and thread, error info on panic. * use sync_channel and SyncSender * nit fixes and cleanup * disable custom panic hook while running tests * make separate errors.rs file and address other review comments * improve panic message * debug: does increasing time between snapshots make tests pass? (this is temporary) * fix(tests): suspend before sending quit command * fix(tests): add missing use * style(format): commas are important apparently * fix(tests): can we get away with reducing the QUIT suspense time? * fix(tests): can we get away with 50? Co-authored-by: Aram Drevekenin <aram@poor.dev>
* fix(threads): a race condition, build-times, and warnings (#79)Brooks Rady2020-12-02
| | | | | | | | | * Fix a race condition, build-times, and warnings * Yeah, yeah... I know * style(code): add comment to explain race condition Co-authored-by: Aram Drevekenin <aram@poor.dev>
* fix(input): read stdin with lock (#72)Aram Drevekenin2020-11-29
| | | | | | | * fix(input): lock stdin when reading and use its own buffer * style(format): make rustfmt happy * fix(ipc): add accidentally removed trait
* chore(infra): added clippy check. (#65)Roee Shapira2020-11-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Added clippy check. * Changed step name. * Used the suggested ci config. * Some more clippy fixes. * Some more clippy fixes. * More clippy fixes. * Removed allow annotations. * Minor lint edit. * More clippy fixes. * Ran cargo fmt. * More clippy fixes. * More clippy fixes. * More clippy fixes. * More clippy fixes. * More clippy fixes. * More clippy fixes. * Code review edits. * Code review edits. * Code review edits. * CI update. * CI update. * CI update. * Added clippy warn so wip won't fail ci. * Cargo fmt.
* fix(atomicity): block commands before executing others (#59)Aram Drevekenin2020-11-19
|
* refactor(data-structures): #51 change winsize to positionandsize (#56)Denis Maximov2020-11-19
|
* fix(compatibility): some fixes for htop (#53)Roee Shapira2020-11-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Moved all log to file functions to one module. * Moved logging to file function to utils module. * Housekeeping. * Housekeeping. * Started investigation into htop CSIs. * Used better function for scrolling. * Minor cleanup. * Cleanup and start of scroll region rotation. * Implemented scroll region rotation. * Improved performace. * New SCI found. * Typo. * Typo. * Removed logging function. * Added scroll rotation functions. * Typo. * Moved all logging function to one module. * Attempt at making htop work. * Reverted unneeded changes. * Improved log file name creation. * Ran rust fmt. * PR review edits. * PR review edits. * Used mark_for_rerender function. * Removed _ prefix from logging functions.
* fix(ux): disable move focus when in full screen (#49)Denis Maximov2020-11-17
| | | | | | | | | | | * feat: add rustfmt, update action workflow to check for formatting * wip: Mosaic reacts to "move focus" commands when one pane is maximized * feat: move focus is blocked when pane is in full screen * fix: formatting Co-authored-by: denis <denis@airheadventures.com>
* fix(ux): add variable to track if the pane is in fullscreen mode or not (#47)Henil2020-11-16
| | | | | * Fix the bug and add new tests * add snapshots for integration tests
* feat(ux): initial layout engine (#50)Aram Drevekenin2020-11-15
| | | | | | | * prototype * refactor(layout): move stuff around * style(format): make rustfmt happy
* feat: add rustfmt, update action workflow to check for formatting (#45)Denis Maximov2020-11-14
|
* fix(ui): exit app when last pane is closed (#40)Aram Drevekenin2020-11-11
|
* fix(compatibility): do not interpret esc as scroll-up (#29)Aram Drevekenin2020-11-08
|
* fix(compatibility): better stdin reading to fix various issues (#28)Aram Drevekenin2020-11-07
|
* fix(scroll): support show/hide cursor and fix vim scrolling behaviour (#27)Aram Drevekenin2020-11-06
|
* feat(screen): allow to toggle pane fullscreen with ctrl-f (#24)Aram Drevekenin2020-11-05
|
* feat(screen): allow specifying max panes on screen (#20)Aram Drevekenin2020-11-03
|
* feat(screen): split largest terminal (#19)Aram Drevekenin2020-11-02
| | | | | * feat(screen): split largest terminal * docs(readme): split largest terminal command
* refactor(structure): separate all the thingsAram Drevekenin2020-11-01
|
* fix(scrolling): move clear scroll to scroll so that it worksAram Drevekenin2020-11-01
|
* feat(screen): close paneAram Drevekenin2020-10-23
|
* feat(performance): some more improvements by reducing even more allocationsAram Drevekenin2020-10-17
|
* feat(scrolling): basic 1-line scroll-up and scroll-down inside a paneAram Drevekenin2020-10-15
|
* fix(boundaries): render properlyAram Drevekenin2020-10-13
|
* fix(compatibility): bandwhich + various fixes for fishAram Drevekenin2020-09-29
|
* fix(resizing): properly resize panes upAram Drevekenin2020-09-24
|
* fix(compatibility): handle foreground/background color changes properlyAram Drevekenin2020-09-23
|
* fix(compatibility): handle ansi properly with shit performanceAram Drevekenin2020-09-23
|
* refactor(screen): clean up and remove duplicationsAram Drevekenin2020-09-18
|
* refactor(structure): move stuff out of mainAram Drevekenin2020-09-16