Commit graph

3836 commits

Author SHA1 Message Date
Olivier Goffart
d51ea1429d Online editor: check the url to load from a branch 2021-07-01 09:42:25 +02:00
Simon Hausmann
19d4fa17ab Publish dev docs builds to snapshots/$branch/docs 2021-07-01 08:37:08 +02:00
Simon Hausmann
2646f442b5 C++: Replace the "quick tutorial" from the README with a reference to the walk-through 2021-07-01 08:29:12 +02:00
Simon Hausmann
8289a3f576 Various cspell additions for the rst docs 2021-07-01 08:22:47 +02:00
Simon Hausmann
34f1838a37 Begin folding the C++ readme into the C++ docs
This just integrates a copy first, which is to  be split up subsequently.
2021-07-01 08:22:30 +02:00
Simon Hausmann
1733b08b38 Remove plaster demo copying from slide puzzle demo again
We used to load the ttf via xhr/fetch off the web, but since a while ago we
use import in the .60 and therefore build the .ttf into the binary.
2021-06-30 22:30:43 +02:00
Simon Hausmann
4dba8f0d74 Fix missing plaster font in slide-puzzle demo 2021-06-30 22:27:06 +02:00
Simon Hausmann
035dfc3d1f A few harmless spelling fixes 2021-06-30 22:14:10 +02:00
Simon Hausmann
9f69fe09d8 Add an initial cspell file
This can be organically extended on the fly
2021-06-30 22:13:22 +02:00
Simon Hausmann
1ab9189fd9 Prospective fix for demo publish for loop
Also determine the target branch from the github ref
2021-06-30 21:57:56 +02:00
Simon Hausmann
fef34b66c2 Simplify demo upload
Use a for loop
2021-06-30 21:36:45 +02:00
Simon Hausmann
cb5dbbe12f Fix mkdir path 2021-06-30 20:07:55 +02:00
Simon Hausmann
c26de7a017 Move the development demos to snapshots/master/demos/
Next I'll try to find a way to avoid hardcoding the branch name and shorten the paths,
but for now this should avoid accidental overwriting of the demos
of the release.
2021-06-30 19:00:35 +02:00
Simon Hausmann
b314bc9789 Fix up docs preview integration for dev builds
Use the wasm interpreter from the dev branch for dev docs
2021-06-30 18:49:04 +02:00
Olivier Goffart
423656d900 Update some more version number
Meaning that following the docs or tutorial won't work until the release is complete
2021-06-30 17:21:38 +02:00
Simon Hausmann
05aae8339c Bump changelog date 2021-06-30 17:21:12 +02:00
Olivier Goffart
35e20763a7 More replacement of &*std::begin with std::data
Complement the previous commit.
It is not ok to call *std::begin for an empty vector.

Also added a test for it.
2021-06-30 17:10:58 +02:00
Simon Hausmann
76eeabd216 Try to fix the auto-play checkbox with DejaVu
Amend b4955d2415 as the checkbox needs to scale
down a bit more with DejaVu.
2021-06-30 17:09:34 +02:00
Simon Hausmann
2662858a71 Fix assert with MSVC when deleting last item in C++ built printer demo
The generated code tries to compute the box layout info for an empty
repeater, where we end up calling `&*std::begin(cells)` and MSVC
asserts that this is dereferencing an invalid iterator. As Olivier spotted,
`std::data` comes to the assert-free rescue :-)
2021-06-30 17:03:28 +02:00
Simon Hausmann
cec7dde6e6 Small typo fixes 2021-06-30 16:12:39 +02:00
Simon Hausmann
b4955d2415 Fix shuffle and auto-play checkbox in slide puzzle
Text's behavior right now is to clip on a line basis, so with the given
font-size for these two elements, the glyphs aren't shown at all because
the ascent + descent that's use for the clip test is bigger than the
maximum height, despite the actual glyphs fitting.

For now, reduce the font-size slightly to make the glyphs fit.
2021-06-30 16:10:24 +02:00
Simon Hausmann
8dc6ee6fb1 Fix font fallback list on macOS with default family
Even with an empty font family we should produce a font fallback list, and we can.
Fixes the missing checkmark (when not affected by clipping).
2021-06-30 15:46:30 +02:00
Olivier Goffart
6ffe456fd8 Qt backend: use QChar::LineSeparator to split lines in a QTextLayout
That's better than re-layouting with setNumColumns
2021-06-30 13:33:19 +02:00
Olivier Goffart
5bbd4b1afb Qt backend Text elision with word-wrap 2021-06-30 13:33:19 +02:00
Olivier Goffart
bc8bc616ed GL backend: elide Text also when word-wrapping
In this case, the last line will have elipsis on the last line
when no more line can be printed

Note that the behavior is different with the Qt backend
2021-06-30 13:33:19 +02:00
Simon Hausmann
8a2b665498 Remove the note about nightly Rust again
Those who use nightly know likely what they're doing :-)
2021-06-30 11:27:27 +02:00
Simon Hausmann
5614f4c4c8 Mention minimum requirements for macOS
Unfortunately we require cmake right now, due to fontkit wanting to compile
in a copy of freetype. That could be fixed though by making it use
ttf_parser perhaps.
2021-06-30 11:27:27 +02:00
Olivier Goffart
b5f2bbe8bb Mark code fragment as ignored in langref.md
With the nightly rust compiler, we include the langref.md in the
rust documentation, but we don't want these snippets to be understood
as rust code and tested
2021-06-30 09:23:57 +02:00
Simon Hausmann
ce8f5bda24 Mention additional basic Linux dependencies 2021-06-29 22:58:36 +02:00
Simon Hausmann
5b474ecac9 Recommend the use of stable over nightly :-) 2021-06-29 22:56:04 +02:00
Simon Hausmann
a0e827e200 Work around black window with vmware/glutin/windows10
Glutin's desire to default to srgb mysteriously creates a black window
on Windows 10 under Vmware. I tested this with many glutin apps and examples,
they all exhibit the same: black window,
working when query for srgb is turned off.

This used to work, so I suspect some change underneath on the vmware svga
driver perhaps, or Windows.
2021-06-29 22:53:48 +02:00
Simon Hausmann
5d58d34e84 Document run_event_loop() and quit_event_loop()
The C++ versions were there before, but undocumented. The Rust version
for quit() was missing.
2021-06-29 16:12:00 +02:00
Olivier Goffart
032a158615 GridLayout and span: ensure that the preferred size is properly distributed 2021-06-29 14:54:47 +02:00
Olivier Goffart
2f71547040 iot-dashboard: remove useless layout
This was fixed
2021-06-29 14:54:47 +02:00
Simon Hausmann
504bad7109 Drive-by typo fixes 2021-06-29 14:32:02 +02:00
Olivier Goffart
ccdcb61178 Rename the sixtyfps_compiler binary to sixtyfps-compiler 2021-06-29 14:21:44 +02:00
Simon Hausmann
57a00a4487 Re-add the logo to the C++ docs
For now that means the SVG is duplicated, but once sphinx is fixed we
can share the svg from the website.
2021-06-29 14:17:00 +02:00
Simon Hausmann
3ced245d2a Fix typo 2021-06-29 13:54:23 +02:00
Simon Hausmann
461ba50a9b Some rewording in the changelog, and added 0.1.0 heading 2021-06-29 13:52:21 +02:00
Olivier Goffart
a4b9c0ced5 Old printer demo: fix the layout
Also, make sure empty cell in a GridLayout stretches
2021-06-29 12:33:01 +02:00
Simon Hausmann
53ef31f0c1 Fix wrong text rendering with popups in the interpreter and the GL backend
The interpreter created an intermediate window for the component but
the regular parent window is used for rendering. This resulted in the situation
where the layout computation was done before rendering with the intermediate window,
the text layout was calculated and cached in the Text's cached rendering data.
That in turn is just an index into the window's rendering cache (arena),
which is also later used for rendering. The index is local to the window, so
during layout the index was assigned for the intermediate window and
when rendering it seemed valid and happened to also refer to a Text item in the
cache of the real window, but with the wrong size/data.

Fixes #278
2021-06-29 11:27:33 +02:00
Simon Hausmann
be95545474 Bump corrosion
This new version includes fixes to avoid unnecessary rebuilds.
2021-06-29 10:37:02 +02:00
Simon Hausmann
6ae940433e Fix typo
Installing that code spell checker is distracting :)
2021-06-29 10:23:45 +02:00
Olivier Goffart
a58daa31c9 Fix popup size 2021-06-29 09:30:07 +02:00
Olivier Goffart
742fd74a09 vtable release 2021-06-28 14:37:23 +02:00
Simon Hausmann
3ab287223c Silence exhale error
Doxygen would still generate xml for private_api::ArrayModel and would
try to resolve a reference to iself, which is not possible because we've
excluded the namespace:

```
   stderr: (!) Critical error while generating the file for [/home/vagrant/sixtyfps/target/cppdocs/api/classsixtyfps_1_1Model.rst].Traceback (most recent call last):
      File "/home/vagrant/.local/share/virtualenvs/docs-4wjFCyEr/lib/python3.8/site-packages/exhale/graph.py", line 2591, in generateSingleNodeRST
        gen_file.write("{0}\n".format(node.baseOrDerivedListString(
      File "/home/vagrant/.local/share/virtualenvs/docs-4wjFCyEr/lib/python3.8/site-packages/exhale/graph.py", line 393, in baseOrDerivedListString
        link=nodeByRefid[refid].link_name
    KeyError: 'classsixtyfps_1_1private__api_1_1ArrayModel'
    ```

Making the entire class as \private works around it.

Oddly, this isn't needed for IntModel, perhaps because it's not a template?
2021-06-28 14:18:45 +02:00
Simon Hausmann
918fa68c28 Revert logo in C++ docs
This reverts the Pipenv pinning of
f9ef21bffd and thus disables the logo, as
subsequent changes in the pinned sphinx fork cause unrelated breakages
when building docs. Let's re-enable this when the fixes are in an
upstream release of sphinx and the rtd theme.
2021-06-28 14:03:45 +02:00
Olivier Goffart
640d178d9d Fix compilation of the C++ interpreter 2021-06-28 12:16:59 +02:00
Olivier Goffart
ae114cf79d C++: don't re-export private symbol in the public API
Use the cbindgen_private namespace dirrectly from the generated code
2021-06-28 12:03:49 +02:00
Olivier Goffart
16ba23ae47 Move StateInfo to the private namespace 2021-06-28 11:23:44 +02:00