Commit Graph

884 Commits

Author SHA1 Message Date
sawka
7717d48131 update docs links 2024-09-20 10:36:44 -07:00
sawka
eab78a175f switch web links back to www 2024-09-19 11:44:55 -07:00
sawka
955274ed63 update staging directory 2024-09-18 13:50:44 -07:00
luckrnx09
e38c5bf16a
chore: fix incorrect alt text #682 (#685)
fix #682
new look:

![image](https://github.com/wavetermdev/waveterm/assets/113882203/c51145c0-a34d-4c45-824c-15e205fe74bd)
2024-06-23 12:08:44 -07:00
Mike Sawka
936537a03a
put in some code to fix losing focus on the screen name (#679) 2024-06-14 17:24:36 -07:00
Red J Adaya
66310e8bfb
fix pre tag bg color in markdown (#678) 2024-06-14 10:00:53 -07:00
Red J Adaya
7888a61766
Fix regression where click event in the DOM is no longer being captured (#675) 2024-06-07 17:41:05 -07:00
Evan Simkowitz
29ad232ac6
Don't show ghost text if curLine is empty (#674) 2024-06-07 17:40:50 -07:00
Red J Adaya
067bef0cb5
Remove old aichat and some fixes (#672) 2024-06-06 20:09:57 -07:00
Mike Sawka
97deb2ef14
update ghost text color (#671) 2024-06-06 19:24:06 -07:00
Mike Sawka
69d58ef525
bigger rightsidebar by default. also remove ctrl:space keybinding (#670) 2024-06-06 18:45:28 -07:00
Red J Adaya
d7173c970c
aichat improvements (#667) 2024-06-06 17:31:52 -07:00
Mike Sawka
1234919229
enable right sidebar (#663) 2024-05-28 22:44:57 -07:00
Red J Adaya
14b38b31c8
AI Chat Sidebar (#657) 2024-05-28 20:53:16 -07:00
SG Prakash
1ace947d1e
added hide/show MenuBar feature (#660)
**Description:**
I recently installed waveterm and I just love it. I like to use my
terminal without titlebar, So I removed the titlebar of waveterm in my
ubuntu desktop but the menu bar is showing constantly. So I look into
the code and made the changes. This pull request adds a simple feature
which will hide/show the menubar using `ALT` key.

**Changes Made:**
1. When initializing electron's BrowserWindow, I added a parameter
`autoHideMenuBar: true`.

**Testing Done:**
Tested the feature by pressing `ALT` Key. It works perfectly.
2024-05-28 20:48:28 -07:00
Evan Simkowitz
13f4203437
Autocomplete using the Newton parser (#599)
I've reworked the autocomplete parser to more closely match Newton, the
Fig-compatible parser I prototyped earlier this year. I was able to move
a lot faster by reusing patterns that inshellisense proved out, such as
for templates and generators.

I also support some features that inshellisense doesn't, like proper
combining of Posix-compatible flags, handling of option argument
separators, and handling of cursors in insertValues.
2024-05-28 17:17:29 -07:00
Cole Lashley
1307a77b56 ai chat selection fix (#639) 2024-05-06 20:02:13 -07:00
Evan Simkowitz
4384525ca6
Remove "main" window concept from emain.ts (#651)
This continues the work to unblock multiple window support. `emain.ts`
now contains no more references to a "main" window, instead all event
handlers will dispatch to either the window that triggered the event,
the currently focused window, or the first window to be spun up.
2024-05-06 13:43:27 -07:00
Evan Simkowitz
46b9c22f10
Remove barriers to supporting multiple windows (#647) 2024-05-03 13:41:53 -07:00
Evan Simkowitz
9b1f5a2abd
Ensure the auto update checker runs every hour (#645)
The hour long interval that I set was being subjected to background
throttling and wasn't reliably getting invoked. I am shortening the
inteval to 10 mins and adding a check within it to see if an hour has
passed since the last update check. I am also running the same logic
every time the main window is activated. This should ensure that the
auto update check happens more reliably and not just on first launch.
2024-05-02 18:02:47 -07:00
Mike Sawka
9a825761da
merge v0.7.4 and v0.7.5 changes back into main (#644) 2024-05-02 16:17:38 -07:00
Sylvie Crowe
167277ec11
Rename Waveshell First Pass (#632)
This begins the process of renaming mshell to waveshell everywhere by
making the most simple changes. There will need to be additional changes
in the future, but the hope is to merge simple changes in now to reduce
the number of future merge conflicts.
2024-05-02 14:16:00 -07:00
Evan Simkowitz
ea0cf62b67
Replace classnames with clsx (#634)
[`clsx`](https://www.npmjs.com/package/clsx) is a drop-in replacement
for `classnames` that is a quarter of the size and is faster.
2024-05-02 11:40:44 -07:00
Evan Simkowitz
7e350fce97
Fix RotateIcon so it actually binds a ref for SyncSpin to use (#635)
RotateIcon wasn't actually binding the ref that it was passing to SyncSpin, meaning it wasn't actually syncing properly. This fixes that, along with making SyncSpin compatible with more than just div types
2024-05-01 20:28:44 -07:00
Evan Simkowitz
53ec767bc7
Make icons functional components (#629)
They are very simple, self-contained components, making them good
candidates to be converted to functional components
2024-05-01 20:14:44 -07:00
Mike Sawka
03cdc067e7
cmdinput keybindings (#627) 2024-04-30 18:44:40 -07:00
Evan Simkowitz
e1a931056c
Fix the sidebar X target so that there isn't a weird padding that shows the pointer cursor (#626) 2024-04-30 18:12:21 -07:00
Cole Lashley
f6881cf380
Ai chat select fix (#622) 2024-04-30 17:16:03 -07:00
Evan Simkowitz
345356d8d4
Make connections modal scrollable (#623) 2024-04-30 16:43:47 -07:00
Evan Simkowitz
a16e01f73b
Make Client Settings and connections views scrollable, fix regression in unused bookmarks feature (#621)
Makes clientsettings scrollable, adds an option for mainview to wrap the
mainview-content in an OverlayScrollbarsComponent
2024-04-30 16:05:49 -07:00
Mike Sawka
8c63be4ea0
fix cmdinput cursor positioning on mount (#620) 2024-04-30 14:28:52 -07:00
Evan Simkowitz
35e0488f7b
Call makeObservable for all cmdInput classes (#619) 2024-04-30 13:58:54 -07:00
Evan Simkowitz
c6a8797ddd
Break out non-autocomplete changes from autocomplete PR (#618)
This improves the ephemeral command runner to allow for honoring of
timeouts and proper handling of overriding the current working
directory. It also fixes some partially transparent font colors in light
mode, making them solid instead. It also updates the InputModel to be
auto-observable and utilize some getters to ensure the cmdinput is
getting updated whenever necessary state changes take place.
2024-04-29 18:29:27 -07:00
Evan Simkowitz
50662c2152
Fixes a regression that would unfocus from the history input (#615)
* Fixes a regression that would unfocus from the history input

* remove debug statements

* Update historyinfo.tsx

* fix scrolling the right way
2024-04-29 15:08:11 -07:00
Cole Lashley
4f32c459a6
Small aux view fixes that make cmdinput focus work a bit better (#594)
* added some more fixes for aichat and cmdinput

* removed comments and fixed up merge conflicts

* small fix

* fixed bug
2024-04-26 11:11:03 -07:00
Sylvie Crowe
a449cec33a
Sudo Config Gui (#603)
* feat: add gui elements to configure ssh pw cache

This adds a dropdown for on/off/notimeout, a number entry box for a
timeout value, and a toggle for clearing when the computer sleeps.

* fix: improve password timeout entry

This makes the password timeout more consistent by  using an inline
settings element. It also creates the inline settings element to parse
the input.

* feat: turn sudo password caching on and off

* feat: use configurable sudo timeout

This makes it possible to control how long waveterm stores your sudo
password. Note that if it changes, it immediately clears the cached
passwords.

* fix: clear existing sudo passwords if switched off

When the sudo password store state is changed to "off", all existing
passwords must immediately be cleared automatically.

* feat: allow clearing sudo passwords on suspend

This option makes it so the sudo passwords will be cleared when the
computer falls asleep.  It will never be used in the case where the
password is set to never time out.

* feat: allow notimeout to prevent sudo pw clear

This option allows the sudo timeout to be ignored while it is selected.

* feat: adjust current deadline based on user config

This allows the deadline to update as changes to the config are
happening.

* fix: reject a sudopwtimeout of 0 on the backend

* fix: use the default sudoPwTimeout for empty input

* fix: specify the timeout length is minutes

* fix: store sudopwtimeout in ms instead of minutes

* fix: formatting the default sudo timeout

By changing the order of operations, this no longer shows up as NaN if
the default is used.

* refactor: consolidate inlinesettingstextedit

This removes the number variant and combines them into the same class
with an option to switch between the two behaviors.

* refactor: consolidate textfield and numberfield

This removes the number variant of textfield. The textfield component
can now act as a numberfield when  the optional isNumber prop is true.
2024-04-25 18:19:43 -07:00
Cole Lashley
5e3243564b
Open AI Timeout setting and aliases for AI settings (#590)
* added ai timeout setting

* addressed review comments

* fixed baseurl gating for telemetry

* updated copy

* addressed review comments

* removed prefix for client:show and added units to timeout

* changed timeout to use ms precision
2024-04-25 16:14:37 -07:00
Mike Sawka
21d0dd076b
increase max websocket read limit. protect frontend from exceeding the read limit. limit input size to 10k characters. (#606) 2024-04-25 15:07:41 -07:00
Mike Sawka
6e28151dad
update dependencies (including electron v30) (#605)
* remove console.logs

* update dependencies
2024-04-25 14:03:38 -07:00
Red J Adaya
12e267ad81
Truncate dropdown value (#602)
* truncate dropdown value

* more defensive programming for width
2024-04-25 13:36:11 -07:00
Red J Adaya
35037ac1f1
add padding around remote status warning (#598) 2024-04-25 13:29:24 -07:00
Red J Adaya
50203a6934
Simplified terminal theming (#570)
* save work

* reusable StyleBlock component

* StyleBlock in elements dir

* root level

* ability to inherit root styles

* change prop from classname to selector

* selector should always be :root

* remove selector prop from StyleBlock

* working

* cleanup

* loadThemeStyles doesn't have to be async

* revert changes in tabs2.less

* remove old implementation

* cleanup

* remove file from another branch

* fix issue where line in history view doesn't reflect the terminal theme

* add key and value validation

* add label to tab settings terminal theme dropdown

* save work

* save work

* save work

* working

* trigger componentDidUpdate when switching tabs and sessions

* cleanup

* save work

* save work

* use UpdatePacket for theme changes as well

* make methods cohesive

* use themes coming from backend

* reload terminal when styel block is unmounted and mounted

* fix validation

* re-render terminal when theme is updated

* remove test styles

* cleanup

* more cleanup

* revert unneeded change

* more cleanup

* fix type

* more cleanup

* render style blocks in the header instead of body using portal

* add ability to reuse and dispose TermThemes instance and file watcher

* remove comment

* minor change

* separate filewatcher as singleton

* do not render app when term theme style blocks aren't rendered first

* only render main when termstyles have been rendered already

* add comment

* use DoUpdate to send themes to front-end

* support to watch subdirectories

* added support for watch subdirectories

* make watcher more flexible so it can be closed anywhere

* cleanup

* undo the app/main split

* use TermThemesType in creating initial value for Themes field

* simplify code

* fix issue where dropdown label doesn't float when the theme selected is Inherit

* remove unsed var

* start watcher in main, merge themes (don't overwrite) on event.

* ensure terminal-themes directory is created on startup

* ah, wait for termThemes to be set (the connect packet needs to have been processed to proceed with rendering)
2024-04-23 23:22:35 -07:00
Mike Sawka
8f93b3e263
activity updates for v0.7.3 (#600)
* adding more activity updates, tabs, workspaces, startup/shutdown

* name change, allow activity updates from FE.  aichat + history opens

* activity updates for non-standard renderers
2024-04-23 17:40:14 -07:00
Evan Simkowitz
eadfb92f94
Fix regression in the order of messages in the AI chat auxview (#597) 2024-04-23 16:35:33 -07:00
Evan Simkowitz
a50db14b3e
Fix improper formatting when AuxiliaryCmdView titlebar is missing (#596)
* Fix improper formatting when AuxiliaryCmdView titlebar is missing

* fix bad save
2024-04-23 16:16:41 -07:00
Evan Simkowitz
6308c6c4b0
Simplify scrollHistoryItemIntoView method (#595)
* Simplify scrollHistoryItemIntoView

* remove unnecessary block argument

* actually the block nearest is necessary, otherwise the scroll will jump even if the item is already in view
2024-04-23 15:38:02 -07:00
Red J Adaya
cdfc446763
Improved tab settings pull down (#592)
* add label to tab settings terminal theme dropdown

* add connection label. add New Conection item

* fix wrong prop

* simplify logic

* fix conflicts
2024-04-23 13:14:56 -07:00
Cole Lashley
b08aaa03fb
Remove log for duplicate key register (#540)
* removed log for duplicate keybindings

* changed dumplogs to GlobalModel.isDev, and re added back log

* added back dumplogs

* one last dump logs
2024-04-23 12:30:03 -07:00
Cole Lashley
64244626a1
auxview focus + keybindings (#575)
* first draft of figuring out auxviews and focus

* added more focus logic

* fixed aichat focus issue

* fixed artifacts

* removed command

* addressed review comments
2024-04-23 11:47:55 -07:00
Cole Lashley
c683d10008
Keybinding fixes (#591)
* keybinding fixes

* changed screen and session commands to functions rather than slash commands to avoid printing errors

* added a static wait for console commands

* added sleep hardcode

* add an isArray check for commandStr
2024-04-23 11:18:39 -07:00