Allen Winter
b4f49895c2
clarify: licensing is GPL2 or GPL3 or commercial licensed
...
follow the REUSE specs
2020-07-24 18:16:13 -04:00
Sergio Martins
19d5467f4d
fuzzer: Also generate max-size constraints
2020-06-21 23:28:35 +01:00
Sergio Martins
137cf017c4
fuzzer: add a nice place to set a breakpoint
2020-05-13 19:37:47 +01:00
Sergio Martins
97c1ca30fd
Layouting engine rewrite
...
The layouting was becoming too complex to maintain and to introduce
new features. Was even buggy, the fuzzer was constantly finding
bugs, which took hours to workaround.
Problem with the old layout engine is that there was a catch 22, between
Items driving the separators, and separators driving the anchors.
The new layout is much simpler, both in implementation and conceptually.
There's simply a recursive hierarchy of Item elements. An Item can either
have a QWidget to show, or be a ItemContainer, which contains Item children,
and so forth. Each ItemContainer is either vertical or horizontal. That's enough
to represent the "nested multi-splitter" concept which KDDW uses.
After each item insertion/deletion/resize, the separators are regenerated. They
are essentially dumb now.
TODO:
- Separators are drawn, but are not interactive yet
- There's 5 tests failing
- LayoutSaver scalling functionality
2020-05-04 00:02:03 +01:00
Sergio Martins
7a2aa43b2d
Fuzzer: Add SaveLayout and RestoreLayout operations too
2020-02-19 14:12:44 +00:00
Sergio Martins
8c37c3a7ec
fuzzer: print the name of the failing test
2020-01-24 11:38:21 +00:00
Sergio Martins
4a6b73cae1
fuzzer: Decouple skipping last from no quitting
...
There's two separate options now, as it's useful to pause without
skipping the last test
2020-01-22 14:44:56 +00:00
Sergio Martins
d738fbd154
fuzzer: Fix description of skipped operation
...
Only generate the description after all other dockwidgets are placed
, as the state of the others will be in the last description too
2020-01-22 12:47:42 +00:00
Sergio Martins
460d3f9ec1
fuzzer: Print the skipped operation
2020-01-22 11:48:04 +00:00
Sergio Martins
4c19ccade7
fuzzer: don't destroy the windows when we use -d
...
so we can debug the app
2020-01-22 11:36:49 +00:00
Sergio Martins
03cc8abd94
fuzzer: Add skipAndPause (-d) option
...
So we can pause before the last test and debug the app
2020-01-22 11:17:59 +00:00
Allen Winter
df692686e7
various - update copyright year
2020-01-07 11:36:56 -05:00
Sergio Martins
af796f6e69
fuzzer: Only print tasks we're running
2019-10-15 16:40:38 +01:00
Sergio Martins
60de4fd6a0
fuzzer: Generate the descriptions before running the operations
...
Because we want to print the state before running stuff, not how
the dockwidgets end up
2019-10-15 11:59:30 +01:00
Sergio Martins
5da338c185
fuzzer: Run MultisplitterLayout::checkSanity() after each operation
2019-10-14 23:22:45 +01:00
Sergio Martins
ad4c77e15a
fuzzer: Add -f option to force dumping json
...
When loading from json we don't dump. But it's useful to regenerate
the old json in case the format was upadted with more fields.
2019-10-14 22:46:12 +01:00
Sergio Martins
50b8c91014
fuzzer: Print description when running operations
...
Even easier than reading json
2019-10-14 22:18:17 +01:00
Sergio Martins
c63e4a3d38
fuzzer: Also write the MainWindow name to json
...
Same reason as previous commit
2019-10-14 21:55:08 +01:00
Sergio Martins
9738fbddc6
fuzzer: Write the DockWidgets name to the json too
...
This way it's easier to read the json and remove unneeded dock widgets
while trimming the test-case
2019-10-14 21:49:36 +01:00
Sergio Martins
3895af14ea
fuzzer: add a slowdown option
2019-10-13 22:05:20 +01:00
Sergio Martins
dd580a0f2f
fuzzer: Don't generate random params when replaying
...
When replaying we want to replay with the params we read from json
2019-10-13 21:32:43 +01:00
Sergio Martins
d23eb035b9
fuzzer: Don't add dock widget to tabwidget already containing it
2019-10-13 18:51:41 +01:00
Sergio Martins
e278d0108a
Add OperationBase::newOperation() to avoid duplicated code
2019-10-13 18:41:27 +01:00
Sergio Martins
ae439e0dad
fuzzer: Add new operation: AddDockWidgetAsTab
2019-10-13 18:34:51 +01:00
Sergio Martins
e5b5885892
fuzzer: Add a 50ms delay, make the window manager happier
2019-10-13 18:09:13 +01:00
Sergio Martins
0ca0ad492b
fuzzer: don't require dock widgets to exist when loading json
...
They'll be created later. So use their name instead of a pointer
to them.
2019-10-13 17:50:50 +01:00
Sergio Martins
b82977d9ee
fuzzer: minor refactor to share code
2019-10-13 17:06:41 +01:00
Sergio Martins
28d0aa25ae
fuzzer: Loading from json now works
2019-10-13 17:01:08 +01:00
Sergio Martins
069a9654aa
fuzzer: Don't dump json when we're loading from json
2019-10-13 17:00:53 +01:00
Sergio Martins
acf6cfb327
Add QCommandLineParser support
2019-10-12 10:13:32 +01:00
Sergio Martins
954fb271d3
fuzzer: Also serialize the AddDockWidget operation
2019-10-11 17:04:26 +01:00
Sergio Martins
38619e734f
fuzzer: dump to json when it fails
2019-10-11 14:18:20 +01:00
Sergio Martins
005e811eaa
fuzzer: Fix hidding/showing operations
...
They werent receiving a dock widget name.
Normalized them, they now receive Fuzzer* via ctor
2019-10-11 13:33:13 +01:00
Sergio Martins
4d7da1e6f3
tests: Fix build
...
Fuzzer.cpp was filtered out by .gitignore
2019-10-11 13:27:13 +01:00