Commit graph

148 commits

Author SHA1 Message Date
outfoxxed 307e6c05be
nix: remove qtlayershell dep 2024-02-26 00:38:10 -08:00
outfoxxed 0034edd0f8
docs: add macro hints for typegen to paper over weird interfaces 2024-02-26 00:30:25 -08:00
outfoxxed c0faebc700
cleanup(plugin): remove dependency on unstable moc functions 2024-02-26 00:08:30 -08:00
outfoxxed 3bd587cfcc
feat: basic plugin system
The wayland plugin now uses it.
2024-02-25 23:47:17 -08:00
outfoxxed 6c6272e523
cleanup: remove unused ScreenConfiguration type 2024-02-25 19:38:54 -08:00
outfoxxed fabf86f75f
fix(docs): fix incorrect docgen and add wayland module 2024-02-25 19:36:52 -08:00
outfoxxed d5344f463f
feat(panel): set exclusionMode to Normal when exclusiveZone is set 2024-02-25 18:50:38 -08:00
outfoxxed 8cd9657f97
fix(wayland): layershell auto exclusive zone applies on reload 2024-02-25 18:37:42 -08:00
outfoxxed e2063e8b93
feat(wayland): WaylandLayershell attached property for PanelWindow 2024-02-25 18:25:48 -08:00
outfoxxed 13c5d7c7a9
fix(wayland): layershell windows are recreated if attach fails
Usually this happens if the namespace changes
2024-02-25 16:13:24 -08:00
outfoxxed c2930783ea
feat(wayland): create cross platform window interfaces
Internally this also refactors a ton of code around the wayland
layershell. Note that attachment failures are still broken and
platform interfaces are hardcoded.
2024-02-25 07:13:54 -08:00
outfoxxed 4a82949854
feat(wayland): custom layershell implementation
A fair amount of things are broken but not in the layershell interface
itself. The shell window platform extensions are next in line for
refactoring and relevent issues will be fixed then. Same for docs.
2024-02-24 02:06:40 -08:00
outfoxxed b0567a569b
build(wayland): setup cmake for wayland module 2024-02-20 03:12:05 -08:00
outfoxxed c6dde9ca9d
refactor(wayland): seperate cmake files for modularity 2024-02-19 00:52:03 -08:00
outfoxxed 5bbd0333ef
refactor(wayland): start factoring wayland out of ShellWindow 2024-02-19 00:36:51 -08:00
outfoxxed 55bcae4d62
fix: dangling screen issues and incorrect warnings 2024-02-18 19:57:12 -08:00
outfoxxed a361930865
feat: expose ProxyWindowBase.screen 2024-02-18 19:31:46 -08:00
outfoxxed 6ad4fffc17
feat: expose ProxyWindowBase contentItem 2024-02-18 19:02:10 -08:00
outfoxxed 1ecc943eb3
fix: ShellScreen signals are now connected 2024-02-18 18:06:32 -08:00
outfoxxed ea2cdf38b8
feat: make proxy windows visible by default 2024-02-17 05:24:29 -08:00
outfoxxed dc616923aa
refactor: rename ProxyShell/FloatingWindow to Shell/FloatingWindow
also make ProxyWindowBase visible in docs
2024-02-17 05:14:15 -08:00
outfoxxed 083fff57be
feat: add PersistentProperties 2024-02-17 04:24:03 -08:00
outfoxxed ed62193978
feat: use an intermediary content item for proxy windows (fixes in desc)
fix: combo boxes not opening after a soft reload
fix: anchors breaking after a soft reload
2024-02-17 04:16:57 -08:00
outfoxxed 5e58f0ba9f
fix: allow reloadable objects inside of proxy windows 2024-02-16 23:47:55 -08:00
outfoxxed d967d56d3b
fix: regression of default window color from white to black 2024-02-16 21:17:05 -08:00
outfoxxed 1da43be6c0
feat: completely redesign hot reloader
The hot reloader previously attempted to figure out which parent a
component would attach to as it loaded. This was fairly error prone as
it was heuristic based and didn't work as soon as you split
definitions into multiple QML files.

The new hot reloader functions by first completely building the widget
tree, then applying the old tree to the first tree and pulling out
usable values. Proxy windows now wait to appear until being reloaded.

Additionally added support for `reloadableId` to help match a
Reloadable to its value in the previous widget tree.
2024-02-16 17:09:50 -08:00
outfoxxed d6ed717c39
feat: abstract out scavenger scopes 2024-02-14 03:03:41 -08:00
outfoxxed 82aa7d45d3
feat: add clickthrough mask to windows 2024-02-13 06:12:31 -08:00
outfoxxed 5f75c40b67
feat: expose the backing window for ProxyWindowBase 2024-02-13 06:12:25 -08:00
outfoxxed ad2450762b
feat: add ProxyShellWindow.exclusionMode 2024-02-12 23:09:34 -08:00
outfoxxed bb16054b84
feat: add NOTIFY for ProxyWindowBase.color 2024-02-12 16:01:07 -08:00
outfoxxed 424a45be05
feat: begin work on docs, also minor refactoring 2024-02-12 16:00:42 -08:00
outfoxxed 5de0ae095b
feat: rename project to quickshell 2024-02-12 02:16:22 -08:00
outfoxxed ae5363a351
build: add missing qt module deps 2024-02-04 23:03:44 -08:00
outfoxxed c0d6e63f6c
feat: add filesystem watcher and rename QtShell object 2024-02-04 23:00:59 -08:00
outfoxxed cab5ffc65e
build: add option to not build layershell 2024-02-04 20:08:46 -08:00
outfoxxed 767500b466
refactor: move reload function to QtShellGlobal 2024-02-04 05:26:14 -08:00
outfoxxed 7a18ce8a55
fix: thisptr lints for base classes 2024-02-04 05:01:47 -08:00
outfoxxed d76100781f
feat: add layershell support 2024-02-04 04:58:58 -08:00
outfoxxed 56502b79f6
fix: log QQmlComponent creation error strings 2024-02-03 01:02:04 -08:00
outfoxxed b62f2f3a50
fix: setting visible above geom in ProxyFloatingWindow
Used to shrink window to the given size.
2024-02-01 22:35:04 -08:00
outfoxxed f2f7ec92f2
fix: greatly improve Variants scavenge heuristic 2024-02-01 04:11:14 -08:00
outfoxxed e1281b8e7b
fix: make ProxyWindowBase's contentItem accessible for anchors 2024-02-01 02:40:05 -08:00
outfoxxed 362789fc46
feat: implement soft reloading 2024-02-01 01:29:45 -08:00
outfoxxed ba1e18a125
refactor: rm QtShell/ShellComponent code superseded by RootWrapper 2024-01-31 18:35:51 -08:00
outfoxxed 9a5ad44aa9
feat: add hard reload signal and wrap root object 2024-01-31 18:02:20 -08:00
outfoxxed d14258df8e
feat: add Variants type for creating instances 2024-01-31 17:45:26 -08:00
outfoxxed 23837e5195
feat: basic QtShell and ShellComponent types 2024-01-25 04:33:02 -08:00