Commit graph

167 commits

Author SHA1 Message Date
James Westman
824476bda1
Add errors for duplicate properties and blocks 2022-06-08 23:08:15 -05:00
James Westman
f18c8b7a2d
port: Lock version number
When writing the subproject file, set the tag to the current version if
known.
2022-06-08 22:25:22 -05:00
James Westman
65691dfac6
Include version number in lsp and cli
Fixes #61.
2022-06-08 22:25:22 -05:00
James Westman
6f4d458855
build: Install to datadir
Install the python module to the data directory, not the python install
directory that meson gives us. Then, in the main script, try to find the
module and add it to the path by assuming the script is installed to
(prefix)/bin. Hopefully this will fix the ModuleNotFound errors.
2022-06-07 11:52:55 -05:00
James Westman
cebd9ecadc
Remove references to gtk-blueprint-tool
It's blueprint-compiler now
2022-05-27 12:25:56 -05:00
James Westman
0b7b604371
docs: Fix typo, add link 2022-05-27 12:18:00 -05:00
James Westman
42aa91d4d9 Detect when gobject-introspection is missing
Instead of a compiler bug error, show a proper error message that asks
whether gobject-introspection is installed.

Fixes #58.
2022-05-27 16:21:18 +00:00
James Westman
f6355fe412
Docs: Add note about flatpak manifests
Fixes #60.
2022-05-27 10:53:41 -05:00
James Westman
166b77f4af
docs: Document how to set up translations 2022-05-27 10:41:28 -05:00
James Westman
06278a6424
readme: Add Matrix room link 2022-05-17 12:53:22 -05:00
Sonny Piers
db2e662d31 Add more applications built with Blueprint 2022-05-08 20:08:00 +00:00
Sonny Piers
eadbb11094 Fix sponsor link 2022-05-08 01:07:03 +00:00
James Westman
d09ee2a62b
tokenizer: Fix operator tokenization 2022-04-30 16:41:46 -05:00
James Westman
0da0c9399f
xml: Convert GirType to type name automatically
Makes some of the emit_xml code a bit simpler.
2022-04-30 16:41:45 -05:00
James Westman
4e1398f238
ci: Add coverage 2022-04-30 16:33:55 -05:00
James Westman
f479e2bac5 tokenizer: Fix number parsing 2022-04-28 23:53:05 -05:00
James Westman
99e428d93c validation: Disallow instantiating abstract classes 2022-04-28 23:35:34 -05:00
James Westman
f78478bea1 validation: Writable/construct-only properties
Add two new errors, one for non-writable properties and another for
binding construct-only properties.
2022-04-28 22:52:30 -05:00
James Westman
3b39e0d541
docs: Document how to reference a template object 2022-04-21 11:47:25 -05:00
Sonny Piers
f77550413c List known projects built with Blueprint 2022-04-19 15:13:38 +00:00
James Westman
9144ac67f0
tests: Add fuzz test 2022-04-18 20:22:31 -05:00
James Westman
4e2501c7d7
Fix number parsing 2022-04-18 20:22:29 -05:00
James Westman
e76bff9291
Fix crash in parser
The Until parse node would return True if it reached EOF, which was not
correct and could cause other parse nodes to run past the end of the
token list and crash.
2022-04-18 17:34:02 -05:00
James Westman
417f163a5a
Fix crash in flags value for unchecked classes 2022-04-18 15:42:55 -05:00
James Westman
3f8b38d219
Fix crash in action widget syntax 2022-04-18 15:35:19 -05:00
James Westman
3d4aae79c4 tests: Test unchecked classes 2022-04-08 14:56:10 -05:00
James Westman
4cf966eafa tests: Add GTK directive error tests 2022-03-28 14:38:05 -05:00
James Westman
f197e68589 Use cached_property instead of a custom decorator 2022-03-28 14:38:05 -05:00
James Westman
1c1a5e3266 tests: Fix child_type test
The test passed, but the XML produced an error when loaded by GtkBuilder.
2022-03-28 14:38:05 -05:00
James Westman
a4ffdd944f language: a11y: Fix property names
Blueprint uses underscores in property/state/relation names, but
GtkBuilder expects dashes because it uses the glib names from the
GtkAccessible* enums.
2022-03-28 14:38:05 -05:00
James Westman
d73c83aa63 decompiler: Allow and ignore <placeholder/>
Some existing files contain <placeholder/> tags, which should be
permitted but ignored.
2022-03-28 14:34:27 -05:00
Jeremy Bicha
e3a37893a8 build: Install pkgconfig file to /usr/share/
Because the pkgconfig file is arch-independent,
/usr/share/pkgconfig/ is a better location for it
2022-03-22 16:23:51 -04:00
James Westman
3f37380c25
tests: Test that docs & completions don't crash 2022-03-19 18:16:25 -05:00
James Westman
6576e02837
lsp: Report warnings correctly
Previously all diagnostics had the "error" severity, now warnings are
correctly reported as such
2022-03-15 23:06:45 -05:00
James Westman
93f2a27e35
completions: Add Gtk class completions
Fixes #49
2022-03-12 18:00:01 -06:00
James Westman
e6ad51c682
Show docs for flag values 2022-03-04 15:06:13 -06:00
James Westman
8ea06e8a78
Add validation for flag values 2022-03-02 14:06:57 -06:00
James Westman
bebe784d1d
Fix type check for flags when only one is present
When only one flag is specified, it's parsed as an IdentValue rather
than a FlagsValue, so IdentValue needs to be able to type check flags
(aka bitfields) properly.

Fixes #47
2022-03-02 13:57:30 -06:00
James Westman
4b42016837 Fix bug with inline menus
Fixes #44
2022-02-21 14:12:56 -06:00
James Westman
8ce748e62b
docs: Add examples for action widgets 2022-02-19 14:44:42 -06:00
Gleb Smirnov
cfa7278568
perf: cache action widgets to don't recalculate it 2022-02-19 12:59:42 +03:00
Gleb Smirnov
bb3f87ae51
fix: use cached_property instead of cache and property 2022-02-19 12:52:34 +03:00
Gleb Smirnov
4103ad3e71
fix: allow adding action widgets to GtkInfoBar 2022-02-19 12:51:34 +03:00
Gleb Smirnov
d9ef1d4df9
tests: add tests for action widget syntax 2022-02-18 19:04:08 +03:00
Gleb Smirnov
736681a841
feat: add syntax for GtkDialog's action widgets 2022-02-18 19:03:41 +03:00
James Westman
cd12c94423 docs: no-sync-create 2022-02-09 15:39:02 -06:00
James Westman
9873a2072b Add warning for sync-create 2022-02-09 15:39:02 -06:00
James Westman
32d4769f65 Change sync-create to no-sync-create
Fixes #31
2022-02-09 15:39:02 -06:00
James Westman
3bdcc83c4e tokenizer: Remove redundant token types 2022-02-09 15:24:56 -06:00
James Westman
bac008296a
fix imports 2022-01-29 21:08:55 -06:00