Nathan Sobo
10147df5c3
Fix crash when closing windows
2021-05-05 11:34:49 -06:00
e955af12f8
Synthesize a mouse moved event in the previous position after painting a scene
...
This ensures that we correctly update the hover state of elements whose position has changed relative to the mouse cursor even though the mouse hasn't actually moved.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-28 13:02:39 -06:00
Nathan Sobo and Antonio Scandurra
63e5080199
Render sprited icons at 2x resolution since we don't align to pixel grid
...
This provides the sampler with a bit more data when positioning sprites at subpixel positions.
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-04-28 09:32:38 -06:00
Nathan Sobo
5da9755007
WIP
2021-04-27 18:35:24 -06:00
Nathan Sobo and Max Brunsfeld
be6859003a
Render a close tab button on tab hover
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-27 11:58:59 -06:00
Nathan Sobo and Antonio Scandurra
e0bb313d67
Capture hover events on tabs
...
Co-Authored-By: Antonio Scandurra <me@as-cii.com >
2021-04-27 09:23:44 -06:00
Nathan Sobo
26185a24d6
Introduce MouseEventHandler
...
Still need to give elements the ability to re-render their parent view. Once that is in place, I think we can implement hoverable close tab buttons.
2021-04-26 21:52:18 -06:00
Antonio Scandurra
2a1e5657c7
Prompt for paths asynchronously to avoid double borrow
2021-04-14 16:30:03 +02:00
Max Brunsfeld
21cea414d1
Implement multi-selection copy/cut/paste
2021-04-13 17:28:51 -07:00
Antonio Scandurra and Max Brunsfeld
5d6d5018ca
Allow metadata to be associated with text written to clipboard
...
Co-Authored-By: Max Brunsfeld <max@zed.dev >
2021-04-13 19:03:56 +02:00
Antonio Scandurra
3183d379fc
Start on copy-paste
2021-04-13 14:58:10 +02:00
Max Brunsfeld and Nathan Sobo
0ca928ad22
Don't try to handle errors when opening platform windows
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-12 15:14:25 -07:00
Max Brunsfeld and Nathan Sobo
af3499750c
Allow menu items to specify arguments for their commands
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-04-12 14:09:49 -07:00
Nathan Sobo
e59e364a88
Make gpui::platform module private
2021-04-10 00:22:45 -06:00
Nathan Sobo
1c80ad0621
Remove platform::mac::runner
2021-04-10 00:19:25 -06:00
Nathan Sobo
df223714f3
Pass the on_finish_launching callback to Platform::run
2021-04-09 21:33:17 -06:00
Max Brunsfeld
7f27ece707
Get app running and test passing after gpui App+Platform restructure
2021-04-09 16:56:32 -07:00
Nathan Sobo and Max Brunsfeld
e2cf66480f
Add lifecycle methods to Platform trait
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-04-09 13:03:26 -06:00
Max Brunsfeld
46b6efc549
Merge branch 'master' into menus
2021-04-09 10:34:21 -07:00
Max Brunsfeld
4c184f50f7
Implement File > Open menu item
2021-04-08 22:25:54 -07:00
Max Brunsfeld
e6279311df
Call SetActivationPolicy at the proper time
...
If this method is called too early, the menu bar won't be
clickable on startup until the window loses focus. Calling
it once the application finishes launching seems to fix
the issue.
See https://github.com/glfw/glfw/issues/1648
2021-04-08 16:11:45 -07:00
Max Brunsfeld
fffbc0de29
Create an API for assigning the menubar contents
2021-04-08 16:01:36 -07:00
Nathan Sobo
5220ebaed2
Order debug JSON and allow elements to be named; copy to clipboard
2021-04-07 21:54:14 -06:00
Max Brunsfeld
bc4f5ea3df
Add a stub of a native 'File' menu
2021-04-07 17:49:44 -07:00
Max Brunsfeld
f673c6aa6e
Start work on a native application menu
...
Add an application menu with a quit command, bound to command-q
2021-04-07 17:48:22 -07:00
Nathan Sobo
0f97a62659
Remove unused method
2021-04-06 20:47:09 -06:00
Nathan Sobo
2107e726f4
Vertically center glyphs in Line::paint based on ascender/descender for line
2021-04-06 09:15:21 -06:00
Antonio Scandurra
b5b8445a47
Reduce path atlas size by using a single channel for the texture
2021-04-06 13:53:20 +02:00
Antonio Scandurra
d2e30bc457
Implement SVG rendering
2021-04-06 13:46:33 +02:00
Max Brunsfeld
b95aa282eb
Remove stray print statements
2021-04-02 15:00:20 -07:00
Max Brunsfeld
668336946c
Use a real FontSystem in test platform
2021-04-02 14:35:44 -07:00
Max Brunsfeld
0eda8b3c48
Remove small pieces of unused code
2021-04-02 14:26:53 -07:00
Antonio Scandurra
d1d992be59
Remove unused edge_to_point calculation in quad shader
2021-04-02 13:53:11 +02:00
Antonio Scandurra
f503e32f29
Fix crash when selections exceed the container's bounds
2021-04-02 13:49:44 +02:00
Nathan Sobo
2efe48c127
💄 naming
2021-03-31 20:43:15 -06:00
Max Brunsfeld
7fee9ce687
Introduce a GPUI test platform, get most tests running
...
There are still two tests that don't pass:
* `gpui::app::tests::test_finish_pending_tasks` hangs
* `editor::buffer_view::tests::test_fold` has an assertion failure
2021-03-31 17:03:58 -07:00
Max Brunsfeld
7fb0951d42
Ensure that path windings are rendered to the right atlas texture
...
Fixes #5
2021-03-31 14:52:41 -07:00
Antonio Scandurra and Nathan Sobo
3649a3d939
Don't blend alpha channels
...
We want to use the source alpha to determine the color of the final
pixel, but we want the final pixels to be fully opaque.
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-31 16:24:28 +02:00
Antonio Scandurra and Nathan Sobo
05de08d783
Round clip bounds to whole pixels
...
Co-Authored-By: Nathan Sobo <nathan@zed.dev >
2021-03-31 16:23:37 +02:00
Antonio Scandurra
e68e06838c
Render borders correctly when only a subset of the border is visible
2021-03-31 14:53:34 +02:00
Antonio Scandurra
150b60de72
Snap quads to pixel grid to avoid antialiasing them around the edges
2021-03-31 14:53:15 +02:00
Antonio Scandurra
437a2eeee2
💄
2021-03-31 10:32:53 +02:00
Antonio Scandurra
bc9a6b4ea7
Remove conditional from winding number computation
2021-03-31 10:30:16 +02:00
Nathan Sobo
58ababd95f
Call did_modify_range on only once per render
2021-03-30 23:07:14 -06:00
Nathan Sobo and Max Brunsfeld
14eda8978c
Avoid generic parameter
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-03-30 18:05:13 -06:00
Nathan Sobo and Max Brunsfeld
7b4478ee56
Optimize grouping of path sprites by layer/atlas
...
Avoid filtering sprites redundantly on every layer and allocating intermediate vectors to group by atlas.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-03-30 18:03:00 -06:00
Nathan Sobo and Max Brunsfeld
5119a001fb
Clear the path atlases on every frame and fix spelling
...
@as-cii you were right about the plural of "atlas" after all.
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-03-30 16:56:11 -06:00
Nathan Sobo and Max Brunsfeld
1ed0bd8c27
Decrease max windings to avoid problems with anti-aliasing
...
Co-Authored-By: Max Brunsfeld <maxbrunsfeld@gmail.com >
2021-03-30 16:34:01 -06:00
Nathan Sobo
8d05d7bf21
Fix double-borrow when synthesizing drag events
2021-03-30 14:25:47 -06:00
Nathan Sobo
48fe2587df
Use correct texture size when drawing paths into atlas
2021-03-30 14:03:29 -06:00