Commit Graph

775 Commits

Author SHA1 Message Date
Evan Simkowitz
4070abadde
Squash some leftover bugs (#1495)
Only create new tab in `CheckAndFixWindow` if no tabs or pinned tabs
exist

Update `resolvers.resolveTabNum` to account for pinned tabs

Remove obsolete and unused `wstore.DeleteTab`

Only show accelerators for first 9 workspaces in workspace app menu to
be consistent with other keybindings

Fix tabbar spacing to remove min size for drag right spacer, account for
workspace switcher button size

Fix updatebanner size calculations
2024-12-11 12:52:15 -08:00
Mike Sawka
164c15f1b2
create ref in model, also remove isRunning (#1496) 2024-12-11 12:26:56 -08:00
Evan Simkowitz
d975869542
Stop event propagation for contextmenu show event (#1493) 2024-12-11 11:03:30 -08:00
Evan Simkowitz
448262c17f
Fix nullchecks in wave.ts (#1491) 2024-12-11 10:46:08 -08:00
Evan Simkowitz
7ecdf249bd
Remove some unnecessary logs from webview (#1490) 2024-12-11 10:39:12 -08:00
Evan Simkowitz
6684a5c2b8
Only call WebViewModel.handleNavigate for main frame navigations (#1488)
Navigation events are issued not just for main page navigations, but
also for iframes, among other things. With our old behavior, if an
iframe tries to load in a webpage, we would update the webview url and
make the iframe the primary page, which is wrong. Now, we only do this
for main frame navigations.

closes #1487
2024-12-11 10:33:37 -08:00
Mike Sawka
4fccd71227
minor docs fixups (consistency) (#1480) 2024-12-10 18:03:48 -08:00
Evan Simkowitz
c8bcf08fff
Workspace doc, moving around images (#1479)
Also adds missing global keybindings.

Also reorders docs in the sidebar, introduces new mechanisms for
indicating how an img should float in a document, and adds a `<div
style="clear: both">` before every heading.
2024-12-10 17:43:56 -08:00
Mike Sawka
41f960c60c
fix for tabs out of order in tabbar (#1478) 2024-12-10 16:33:55 -08:00
Evan Simkowitz
677ecc3ef8
Fix tab name reload for pinned tabs (#1476) 2024-12-10 15:47:26 -08:00
Evan Simkowitz
c95f3b2283
Fix unawaited promises in dir preview (#1474) 2024-12-10 15:13:11 -08:00
Sylvie Crowe
e49480e628
Fix Preview for Uninitialized Connections (#1473)
If a connection had not been previously initialized, selecting it in the
preview dropdown was bug-prone. This ensures the connection is complete
before checking the mimetype and selecting the type of preview.
2024-12-10 15:03:35 -08:00
Evan Simkowitz
c2312f1c7f
Make default workspace icon the Wave logo (#1470)
I made our logo a custom icon in Font Awesome so we can add it to our
workspace switcher as the default icon
2024-12-10 13:54:11 -08:00
Mike Sawka
8957e0405a
try to fix drag region above tabs (#1466)
just a temporary fix for now, needs a more extensive fix later
2024-12-10 12:50:58 -08:00
Evan Simkowitz
712f9d9706
Use highlight.js scss instead of css in markdown styling (#1468) 2024-12-10 12:47:39 -08:00
Evan Simkowitz
9ab7b25aa1
Move markdown css import so it doesn't affect Storybook (#1465) 2024-12-10 12:38:49 -08:00
Evan Simkowitz
f7875bc4f0
Auto-select workspace name (#1464) 2024-12-10 12:26:42 -08:00
Evan Simkowitz
bedea6d3be
Show hover effect on dragging tab (#1459) 2024-12-10 11:41:37 -08:00
Sylvie Crowe
0174adea7b
Connections Typeahead Additional Fixes (#1457) 2024-12-10 11:13:15 -08:00
Evan Simkowitz
c4fce5acc5
Make workspace switcher icons fixed width, add confirm on delete (#1455)
Also makes the confirmation dialogs shorter and fixes the logic for
showing them
2024-12-10 10:15:33 -08:00
Evan Simkowitz
24d808cddc
Add divider between color and icon selectors (#1448)
Also make left icon fixed width
2024-12-09 18:29:33 -08:00
Evan Simkowitz
84bec65e50
Add tooltip for unpin and close tab buttons (#1445) 2024-12-09 16:55:52 -08:00
Evan Simkowitz
34b73b8bea
Update switcher icons, fix bug makeIconClass, add guid to new workspace name (#1444) 2024-12-09 16:52:59 -08:00
Evan Simkowitz
edab90aa55
New colors for workspace switcher (#1443)
Also updates workspace switcher button and tab bg colors
2024-12-09 16:24:32 -08:00
systemshift
c071cc04c3
Perplexity api (#1432)
I have added Perplexity to the default AI models. I see Anthropic models
are becoming part of the default as well, so I thought I should add a
model that is specific for web search.

This pull request is a work in progress; reviews and edit
recommendations are welcome.

---------

Co-authored-by: sawka <mike@commandline.dev>
2024-12-09 15:48:33 -08:00
Sylvie Crowe
43c134ea9a
fix: don't show wsh error for a connection error (#1438) 2024-12-09 15:18:58 -08:00
Mike Sawka
878a7285ab
implement tab:preset, and increase active tab opacity (#1439) 2024-12-09 14:48:16 -08:00
Sylvie Crowe
f78067b62d
fix: smarter connection typeahead arrows (#1431)
This changes the order of typeahead options to be more user friendly.
Additionally, it moves the selected element to the top after a non-arrow
keypress.
2024-12-06 21:32:50 -08:00
Mike Sawka
ac8dc25ead
fix block controller status (add version) (#1430) 2024-12-06 19:39:58 -08:00
Evan Simkowitz
f858d3ba0f
Pass workspace id to contextmenu-show (#1429)
Sometimes, the context menu click handlers don't seem to get passed any
window object. Here, I'm sending over the workspace id with the
`contextmenu-show` event so that we can resolve our cached copy of the
object in case the value from the click handler is empty.
2024-12-06 19:10:34 -08:00
Evan Simkowitz
72ea58267d
Workspace app menu (#1423)
Adds a new app menu for creating a new workspace or switching to an
existing one. This required adding a new WPS event any time a workspace
gets updated, since the Electron app menus are static.

This also fixes a bug where closing a workspace could delete it if it
didn't have both a pinned and an unpinned tab.
2024-12-06 15:33:00 -08:00
Sylvie Crowe
66d1686e84
fix: changes for nowsh compatibility with wsl (#1422)
The wsl largely ignores most nowsh stuff, but there are some options
that can be specified for wsl. This ensures that it will still work
whether or not they are set.

Additionally if fixes the wsh not installed icon.
2024-12-06 14:19:19 -08:00
Evan Simkowitz
ab565409cb
Even simpler tab flicker fix (#1421) 2024-12-06 12:13:49 -08:00
Sylvie Crowe
6dfc85b324
Retry Without Wsh on Fail (#1406)
Adds the ability for connections to continue without wsh if they fail.
This involves creating a menu that warns the user that wsh could not be
used.
2024-12-06 10:11:38 -08:00
Mike Sawka
3b03a7ab3d
tab race condition fixes (#1407) 2024-12-06 00:10:17 -08:00
Mike Sawka
5744f4b06f
closeTab fix (#1403)
fixes bug with closeTab when the tab didn't exist in the waveWindow cache.  also adds Cmd-Shift-W to close a tab (doesn't work for pinned tabs).  and restores Cmd-W for killing blocks on pinned tabs
2024-12-05 18:26:20 -08:00
Evan Simkowitz
7a61f25331
Auditing async usage in frontend code (#1402)
I found a lot of places where asyncs weren't being properly wrapped or
awaited
2024-12-05 18:09:54 -08:00
Evan Simkowitz
5fbd72b590
Fix edge case when dragging pinnned tabs (#1399) 2024-12-05 14:58:04 -08:00
Evan Simkowitz
898d21d1b2
Small tweak to nohover to only start timeout on requestanimationframe (#1398) 2024-12-05 14:25:02 -08:00
Evan Simkowitz
cb50023d79
Fix issue where WaveAI text area would resize on launch (#1397) 2024-12-05 14:06:52 -08:00
Evan Simkowitz
b22dd07929
Fix null ref in getConnConfigKeyAtom (#1396) 2024-12-05 12:11:17 -08:00
Mike Sawka
7386fc19f7
activity update + dont allow empty workspace names (#1393) 2024-12-05 10:35:54 -08:00
Sylvie Crowe
b4b0222c9d
New Connections Configs (#1383)
This adds the following connections changes:
- connections can be hidden from the dropdown in our internal
connections.json config
- `wsh ssh` -i will write identity files to the internal
connections.json config for that connection
- the internal connections.json config will also be used to get identity
files when connecting
- the internal connections.json config allows setting theme, fontsize,
and font for specific connections
- successful connections (including those using wsh ssh) are saved to
the internal connections.json config
- the connections.json config will be used to help pre-populate the
dropdown list
- adds an item to the dropdown to edit the connections config in an
ephemeral block

---------

Co-authored-by: Evan Simkowitz <esimkowitz@users.noreply.github.com>
2024-12-05 10:02:07 -08:00
Evan Simkowitz
df2889f280
Fix zombie tab context menus (#1390)
The memoizing of the tabs was causing the callbacks for
handleContextMenu to become dead ends. This makes more of the callbacks
into memoized callbacks and makes the handleContextMenu function itself
a memoized callback to ensure it's properly updated when its upstream
callbacks change.
2024-12-04 17:30:28 -08:00
Evan Simkowitz
87aea21184
Better flicker prevention when switching tabs (#1389)
There was still some flicker when nohover took effect before the tab
view actually switched. Now, we override the active tab in the tabbar
when the app is switching tabs. We also override active tab behavior so
that the close button is always visible while nohover is in effect. This
effectively removes the flickering
2024-12-04 17:20:06 -08:00
Mike Sawka
72f36a9639
wsh run (#1376)
implements `wsh run` command.  lots of fixes (and new options) for command blocks.  cleans up the UX/UI for command blocks.  lots of bug fixes for blockcontrollers.  other minor bug fixes.

also makes editor:* vars into settings override atoms.
2024-12-04 14:16:50 -08:00
Evan Simkowitz
d8edea9fbc
Oops i actually made the tabs wrong (#1384)
forgot to update .editorconfig to include scss...
2024-12-04 13:49:14 -08:00
Evan Simkowitz
aa77b2c259
Pinned tabs (#1375)
![image](https://github.com/user-attachments/assets/a4072368-b204-4eed-bb65-8e3884687f9a)

This functions very similarly to VSCode's pinned tab feature. To pin a
tab, you can right-click on it and select "Pin tab" from the context
menu. Once pinned, a tab will be fixed to the left-most edge of the tab
bar, in order of pinning. Pinned tabs can be dragged around like any
others. If you drag an unpinned tab into the pinned tabs section (any
index less than the highest-index pinned tab), it will be pinned. If you
drag a pinned tab out of the pinned tab section, it will be unpinned.
Pinned tabs' close button is replaced with a persistent pin button,
which can be clicked to unpin them. This adds an extra barrier to
accidentally closing a pinned tab. They can still be closed from the
context menu.
2024-12-04 13:34:22 -08:00
Evan Simkowitz
0145e8fe99
Fix SCSS formatting after migration (#1382)
The migration tool we used didn't take into account our formatting
standards so I'm bulk-formatting the SCSS files to bring them back up to
our standards. Basically this just changes the tab size for all the
files.
2024-12-04 12:49:44 -08:00
Evan Simkowitz
60031ef8c0
Add Save and Cancel buttons to dir preview entry manager (#1381) 2024-12-04 11:48:26 -08:00