Olivier Goffart
82aa658cef
Update rowan
2021-01-28 15:37:01 +01:00
Olivier Goffart
23a511b380
Replace img!"..." by @image-url("...")
2021-01-28 11:49:24 +01:00
Simon Hausmann
5f265ffc09
Split up ComponentWindow::run() into show(), hide() and sixtyfps::run_event_loop()
...
This allows creating multiple windows for example, and it will allow for
showing windows in those tests that require a mapped window.
As a bonus, the run() function on generated components is not consuming
anymore.
2021-01-19 09:50:22 +01:00
Olivier Goffart
57804b64a3
Don't use the canonical path for diagnostics
2020-12-28 15:07:49 +01:00
Olivier Goffart
9aca0b0a7e
LSP: Allow to access to the type loader documents
...
So that we can go to the definition of un-open documents
2020-12-28 12:48:32 +01:00
Olivier Goffart
60c3ceeaa8
Silent warning
2020-12-28 12:48:32 +01:00
Olivier Goffart
2a43575528
Fix license header check
...
By removing files that needn't to be checked in or adding the right header
2020-12-23 18:08:43 +01:00
Olivier Goffart
b124826fd6
Make the goto definition actually works with vscode
2020-12-23 15:15:53 +01:00
Olivier Goffart
21a86de972
Make the sixtyFPS LSP server load from VSCode
2020-12-23 15:15:53 +01:00
Olivier Goffart
7fcb49bef1
Implement Go to definition for elements
2020-12-23 15:15:53 +01:00
Olivier Goffart
d0158bce78
More work on the LSP
2020-12-23 15:15:53 +01:00
Olivier Goffart
599c92c974
WIP LSP server skeletton
...
I can run it from Kate, but for some reason it does not work with VSCode yet
2020-12-23 15:15:53 +01:00
Olivier Goffart
0d2d48be4f
Rename "signal" to "callback"
2020-12-18 09:51:01 +01:00
Olivier Goffart
5a7fa5bf11
Add an option to generate dependency file
...
For issue #135
2020-12-15 18:13:16 +01:00
Olivier Goffart
63a0d9308b
Bump version
2020-12-14 08:49:54 +01:00
Simon Hausmann
87e0cc7d85
Fix resource embedding doing a wasm build of a project using the sixtyfps! macro
...
We need to embed resources in wasm builds. Unfortunately we can't detect
that we're called by say wasm-pack and "TARGET"/"HOST" only works inside
build.rs. So instead, to keep things simple, this change always embeds
the image resources when targeting Rust.
The `SIXTYFPS_EMBED_RESOURCES` environment variable can be used to
override this anywhere for any language.
Fixes #130
2020-12-10 15:09:32 +01:00
Olivier Goffart
125ec13f24
Bump version numbers
...
Note: this does not update the documentation yet
2020-12-07 15:41:29 +01:00
Simon Hausmann
0788a33c9a
Fix online editor transition from errors to error free source
...
Markers are show inline when errors occur during compilation. But when
those errors are fixed, the markers should go away.
2020-12-07 15:02:14 +01:00
Simon Hausmann
8c477998dc
Load the logo in the examples off the website
...
This will allow moving them out of the repo and also makes the urls shorter.
2020-11-25 09:34:47 +01:00
Simon Hausmann
c258a907f0
Simplify event loop start-up
...
Move the layout constraint tracker into the window where we can apply
the constraints right before drawing, instead of doing that from within
the event loop. This allows to remove the component parameter from the
run function.
2020-11-12 15:04:48 +01:00
Simon Hausmann
5d744c86c2
Begin passing the VRC<ComponentVTable, Dyn> into the run-time library
...
First by changing the signature of run() and by adding a self_weak
to the C++ struct.
2020-11-11 18:31:51 +01:00
Simon Hausmann
02904c4014
Simplify signature of Component::run
...
We don't need to pass the root item anymore since ComponentVTable
has now get_item_ref.
2020-11-11 15:55:03 +01:00
Simon Hausmann
fb2f4d7508
Speed up the online editor loading
...
Split the monaco editor out into a separate JS bundle, which we can load in parallel with the wasm interpreter.
Previously we'd load a 2.x mb app.bundle.js and *then* the wasm interpreter.
2020-11-11 12:21:57 +01:00
Olivier Goffart
55f9641b84
Update the online editor syntax highlighting to take in account dashes in identifiers
2020-11-09 15:07:42 +01:00
Simon Hausmann
6a1cd307ff
Another small tweak to the hello world
...
Since this will be the first thing many people see, add a small comment inline about
logical pixels.
2020-11-09 10:24:10 +01:00
Simon Hausmann
dff5d8ab25
Minor tweak to the hello world in the online editor
...
Make the text slightly more readable by increasing the font size and showing
off css-style identifiers at the same time.
2020-11-09 10:21:02 +01:00
Olivier Goffart
c3ba10fa90
Syntax highlighting also in the secondary tabs
2020-11-03 19:38:08 +01:00
Olivier Goffart
21d2acf84c
Allow to import URL even if base_url is empty
2020-11-03 19:36:10 +01:00
Olivier Goffart
2ebc9d23fb
Fix syntax highlighting in the online editor
2020-11-03 12:42:07 +01:00
Simon Hausmann
fa077662c1
Remove stray debug output
2020-11-03 10:14:56 +01:00
Simon Hausmann
e3880d6aff
Save and restore view state when switching between tabs in the online editor
2020-11-03 10:14:11 +01:00
Simon Hausmann
7c4338a673
Fix typo and missing type annotations
2020-11-03 10:07:19 +01:00
Simon Hausmann
dc87898ca0
Support automatic compilation for all tabs in the online editor
2020-11-03 10:05:58 +01:00
Simon Hausmann
e0fd1259b3
Add support for viewing the contents of other tabs in the online editor
2020-11-03 10:02:11 +01:00
Simon Hausmann
47c99df775
Rework the tab model in the online editor
...
Store monaco editor models instead of the source code.
2020-11-03 09:52:18 +01:00
Simon Hausmann
2028723eee
online-editor: create tabs for each loaded document
2020-11-02 20:01:06 +01:00
Simon Hausmann
d435a7c8b8
Fix loading of images from imported files in the online editor
...
We need to separate the url resolution step from the document fetching,
as we need to keep the loaded url in Rust for further
resolution.
2020-11-02 14:57:49 +01:00
Simon Hausmann
330f61d6c1
Add support for loading external files in the wasm interpreter
...
The imported files don't have tabs though, and caching is done entirely
by the browser.
2020-11-02 13:46:58 +01:00
Simon Hausmann
ac5769b1db
Make the permalink visible again
2020-11-02 11:04:47 +01:00
Olivier Goffart
e4e7ae46f4
Support for for in box layout in the interpreter
2020-10-31 11:24:31 +01:00
Olivier Goffart
fc9da9b8ea
Fix online editor errors while typing
...
the id was changed causing JS errors
2020-10-30 18:09:46 +01:00
Simon Hausmann
69029e2e49
Online editor tweak
...
Use a tab bar and show at least one tab with the main source file name
Also use bootstrap for the styling
2020-10-30 16:35:04 +01:00
Olivier Goffart
359f42c5f7
Prepare the compiler to be async
...
This will allow the online editor to load imports from URL asynchroniously later
Since currently the compiler is only working on a single thread, and that we
never await on a future that could block, it is allowed to use the spin_on executor
2020-10-30 15:00:04 +01:00
Olivier Goffart
20cfb65e53
Bump version
2020-10-22 08:41:45 +02:00
Olivier Goffart
65ec7e9b7d
Fix panic on parse error
...
Properly report the errors instead.
The later passes panic if the AST is not well formed
2020-10-19 19:43:13 +02:00
Simon Hausmann
04661913b1
Add support for markdown code fences in the syntax updater
2020-10-16 12:30:11 +02:00
Simon Hausmann
bacc43140d
Minor cleanup in syntax updater
...
Move the .rs file processing into a helper function as we'll add a .md one soon, too.
2020-10-16 12:30:11 +02:00
Simon Hausmann
6aa292eac1
Change the names of the logical and physical pixel units
...
The logical pixels are now just called "px" and the less frequently
used physical pixels have the "phx" suffix.
The existing markup was adapted using the syntax updater and the
following patch:
+ if node.kind() == SyntaxKind::NumberLiteral {
+ if node.text().ends_with("lx") {
+ return write!(
+ file,
+ "{}px",
+ node.text().as_str().split_at(node.text().as_str().len() - 2).0
+ );
+ }
+ if node.text().ends_with("px") {
+ return write!(
+ file,
+ "{}phx",
+ node.text().as_str().split_at(node.text().as_str().len() - 2).0
+ );
+ }
+ }
Fixes #49
2020-10-16 07:19:40 +02:00
Olivier Goffart
d57ad389e0
Default to the native style in the viewer if it is available
2020-10-14 14:51:47 +02:00
Olivier Goffart
1138c9dbed
Normalize the spelling of SixtyFPS
2020-10-13 07:48:55 +02:00