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
James Westman
cb35acad17
Fix mypy issues
2022-01-28 14:07:29 -06:00
James Westman
1150ae1a09
reorganization: Move decompilers
2022-01-26 22:55:27 -06:00
James Westman
ee5f32622f
reorganization: Finish moving parsing and AST
2022-01-26 22:37:51 -06:00
James Westman
8f9de81e24
reorganization: Move hooks to common.py
...
This allows them to be referenced before they are filled, helping avoid
circular dependencies.
2022-01-26 14:50:36 -06:00
James Westman
34f525beaa
reorganization: Rename extensions -> language
...
I want all language elements to be defined in the same folder, rather
than having the "core" language split by parsing/AST/completions and the rest
split by language element.
2022-01-26 14:10:39 -06:00
James Westman
76f7befd68
parser: Shorter code for groups
...
Add a "grammar" property on AstNode types so they can be used in grammar
expressions as groups
2022-01-24 14:43:00 -06:00
James Westman
8d587b62a0
parser: Simplify parser construction
...
- Replace several different parse nodes with Match, which matches the
exact text of a token but not the token type
- Allow arrays to be used in place of Sequence
2022-01-24 14:42:44 -06:00
Gleb Smirnov
ad6a2cf538
docs: add docs for binding flags
2022-01-24 20:35:31 +00:00
Gleb Smirnov
f8c96abfc5
tests: add test for inverted
binding flag
2022-01-24 20:35:31 +00:00
Gleb Smirnov
e4283ed0c1
fix: replace non-existing bind flag with existing one
...
Replace non-existing `after` binding flag with `invert-boolean` flag. Use `inverted` name for convenience.
2022-01-24 20:35:31 +00:00
Gleb Smirnov
cc8a555f97
tests: add tests for internal children
2022-01-22 09:43:14 +03:00
Gleb Smirnov
8a545d596b
feat: add support of internal children
2022-01-22 09:42:49 +03:00
Gleb Smirnov
1bd7c37061
fix: replace underscore with dash in XML attributes
2022-01-22 09:34:41 +03:00
Gleb Smirnov
98bb9e3008
fix: don't check on confusing object ID in signal node
2022-01-17 05:37:17 +00:00
Gleb Smirnov
c0c4ae3fc9
docs: add example for signal's object attribute
2022-01-17 05:37:17 +00:00
Gleb Smirnov
492b73bc47
tests: add tests for signal's object attribute
2022-01-17 05:37:17 +00:00
Gleb Smirnov
4d3c2569c4
decompiler: add support for signal
's object
attribute
2022-01-17 05:37:17 +00:00
Gleb Smirnov
bce852020c
feat: add support for signal
's object
attribute
...
Closes a half of #26
2022-01-17 05:37:17 +00:00
James Westman
8ba4742efe
ci: Add regression testing
...
Fixes #19
2022-01-16 22:34:36 -06:00
James Westman
a74779326b
ci: Use a custom image
...
Use a custom image for CI to reduce build times.
2022-01-16 22:02:00 -06:00