Commit Graph

825 Commits

Author SHA1 Message Date
Mikhail Zolotukhin
93e6f1406b chore: move npm scripts to makefile
This makes it possible to name targets whatever we want and makes us
less dependant on the NPM (i.e. a preparation for NPM removal).
2022-03-23 22:05:55 +03:00
Mikhail Zolotukhin
91a277ea1e refactor: wrap currentActivity Property 2022-03-23 21:37:34 +03:00
Mikhail Zolotukhin
eb9d989a3a refactor: put currentDesktop API into use 2022-03-23 21:37:34 +03:00
Mikhail Zolotukhin
23eb425181 refactor: wrap clientArea workspace method 2022-03-23 21:37:34 +03:00
Mikhail Zolotukhin
75dd01e024 chore(plasma_api): use macro for setter/getter generation 2022-03-23 21:37:34 +03:00
Mikhail Zolotukhin
2d69fe6ee5 docs: split vision and roadmap 2022-03-20 21:52:52 +03:00
Mikhail Zolotukhin
830aeee879 docs: add docs directory 2022-03-20 21:52:52 +03:00
Mikhail Zolotukhin
80b7ae5817 docs: make amends in roadmap 2022-03-20 21:52:52 +03:00
Ignacy Kajdan
bb68131e1b
feat: add an option to disable "drag out to float" behavior 2022-03-20 14:00:09 +03:00
Ignacy Kajdan
d2753ab6a7
refactor: optimize svg icons 2022-03-20 13:51:00 +03:00
Mikhail Zolotukhin
1914e38816 chore: format kcfg file with lsp 2022-03-20 13:38:22 +03:00
Mikhail Zolotukhin
d563c4045e fix: add zoom windows to the default ignore list
Since zoom makes its popups with wrong WM props, it's a good candidate
for the default ignore list.
2022-03-20 13:35:46 +03:00
Mikhail Zolotukhin
338ed1f473 chore: add official ubuntu repo to the packages list 2022-03-20 13:24:00 +03:00
github-actions[bot]
a999aa7079 chore: release 3.0.0 2022-03-20 03:10:37 +03:00
Mikhail Zolotukhin
b7ca855165 chore: add kdecoration to sysdep 2022-03-20 03:04:36 +03:00
Mikhail Zolotukhin
b333cda061 docs: briefly describe the new window decoration feature 2022-03-20 03:04:36 +03:00
Mikhail Zolotukhin
517281e158 feat: add window decoration that integrates with tiling 2022-03-20 03:04:36 +03:00
Mikhail Zolotukhin
38712f6b81 chore: add cmake-format pre-commmit hook 2022-03-20 03:04:36 +03:00
Mikhail Zolotukhin
1902f111ec
chore: replace liberapay with open collective
PayPal is going to block Russian users. Because of that, I (gikari) will
no longer able to receive donations from people around the world.

To keep the ability for people to donate the open collective account was
created (https://opencollective.com/bismuth). It will be able to keep
the funds for the time being, even if they won't be available to me
in the near future.
2022-03-13 11:22:25 +03:00
Mikhail Zolotukhin
048ceddfe4 chore: change gikari's email 2022-03-03 19:21:00 +03:00
Mikhail Zolotukhin
d58cfd240c chore(plasmaapi): replace root js object with qml context
The script is actually loaded via QML and therefore it uses context
properties instead of the global object. If the script were loaded as a
javascript - it would use the global object.
2022-02-15 20:19:12 +03:00
Mikhail Zolotukhin
b43ca58b33 chore: move tests and add signal wrapper example
Tests are better kept in a separate binary. This prevents some of the
linking errors and allows us to define the mock KWin objects with no
fear.
2022-02-15 20:19:12 +03:00
Mikhail Zolotukhin
857dbbc8c7 chore: add workspace write property example 2022-02-15 20:19:12 +03:00
Mikhail Zolotukhin
81fc2a0ab6 refactor(plasmaapi): use qobject ptr instead of jsvalue 2022-02-15 20:19:12 +03:00
Mikhail Zolotukhin
78eff10512 feat!: remove legacy tray applet
This removes the applet, that uses the experimental Qt API.
This might fix the bugs, that is caused by it.
2022-02-14 16:48:32 +03:00
Mikhail Zolotukhin
fe500a04da chore: forcefully check for the shortcuts update 2022-02-14 16:16:01 +03:00
Mikhail Zolotukhin
0f27b1163a chore(kconf_update): remove old entries in kglobalshortcutsrc 2022-02-14 16:16:01 +03:00
Mikhail Zolotukhin
6d84e082ae chore: rename kconf_update files 2022-02-14 16:16:01 +03:00
Mikhail Zolotukhin
87d906b2a4 chore: 🚑 add config directory to CMake 2022-02-14 16:16:01 +03:00
Mikhail Zolotukhin
5ae601b219 chore: init config in the init function for consistency 2022-02-14 16:16:01 +03:00
Mikhail Zolotukhin
c30e8377b9 chore!: remove debug option
We don't need this option now, since we are using the Qt Logging
Category.
2022-02-10 20:00:57 +03:00
Mikhail Zolotukhin
04d7fa9cb5 refactor: move logging to core
This moves the TypeScript logger to core. This removes annoying
"qml: [Bismuth] " prefix for all the logs and introduces a new one:
"org.kde.bismuth: ".

Also, this is a part of moving to C++.
2022-02-10 20:00:57 +03:00
Mikhail Zolotukhin
fcd85f8efe chore: replace husky with pre-commit
Since we are moving away from TypeScript, we also need to move away from
its tooling.
2022-02-09 22:29:09 +03:00
Mikhail Zolotukhin
cf90219cde chore: remove vscode stuff 2022-02-09 22:29:09 +03:00
TheMachine02
2030767dd0
fix: float some utility windows on wayland
By using transient propriety, most of utility windows are automatically
made float
2022-02-09 21:21:58 +03:00
Mikhail Zolotukhin
5ec62c5ed9 chore: lower the frameworks and Plasma requirements 2022-02-09 21:10:36 +03:00
Mikhail Zolotukhin
c0959506e8 chore: ignore lint warn for the logging line in driver 2022-02-09 20:55:35 +03:00
Mikhail Zolotukhin
8c0b248edd chore: fit the krohnkite import script for the new shortcuts config 2022-02-09 20:55:35 +03:00
Mikhail Zolotukhin
084dd46ab2 docs: update shortcuts info 2022-02-09 20:55:35 +03:00
Mikhail Zolotukhin
f7300cd5f8 chore: transfer the old shortcuts config for the users
This is required so that user defined shortcuts cannot be broken.
2022-02-09 20:55:35 +03:00
Mikhail Zolotukhin
1a49257180 feat!: register shortcuts in the separate category in the System Settings
This makes the shortcuts appear in the separate category in the System
Settings. Note, that we do not delete Action.ts just yet. We need to
extract the layouts logic into C++ to do that, since some shortcuts
actions depend on the current layout.
2022-02-09 20:55:35 +03:00
Mikhail Zolotukhin
b3d4296e92 refactor: extract jsconfig to proxy class
This allows to put all the proxy-only code in one place.
2022-02-09 20:55:35 +03:00
Mikhail Zolotukhin
5a8f14db5e chore: move the tests into production code 2022-02-08 16:40:57 +03:00
Mikhail Zolotukhin
23b32c1b0c ci: install system dependencies in the test run 2022-02-08 16:40:57 +03:00
Mikhail Zolotukhin
eeb3b76f54 chore: add doctest as a header-only lib 2022-02-08 16:40:57 +03:00
Mikhail Zolotukhin
64202796cf chore: workspace wrapper template with doctest
This adds Plasma API wrapper prototype with the example doctest unit
test. Later the wrapper will be extended until all the features we need
are supported.
2022-02-08 16:40:57 +03:00
Mikhail Zolotukhin
6238ce12dd chore: nuke jest tests 2022-02-08 16:40:57 +03:00
Mikhail Zolotukhin
c577368dff refactor: generate js config from C++ 2022-02-07 17:15:23 +03:00
Mikhail Zolotukhin
5fe5619727 chore: generate config for core
This generates the config from XML representation to be used directly in
the C++ code.
2022-02-07 17:15:23 +03:00
Mikhail Zolotukhin
ce251e115a chore: basic core plugin
This plugin will encapsulate all the logic of the window tiling
extension. It is intended to replace the legacy TypeScript logic,
to be more robust, testable and more feature rich.

The explanations on why TypeScript is not a way to go can be found in
the following section of the blog post:

https://genda.life/posts/bismuth-future/#motivation
2022-02-07 17:15:23 +03:00