SHIFT is an open source shell built on KDE Plasma Mobile, designed to adapt fluidly to your computing needs across devices
Find a file
Devin Lin bdcbe4d6f7 mobileshellstate: Heavily refactor to remove global shell margins to fix window binding loops
Having a global set margins and orientation (that were calculated from the panel containment) caused a lot of issues with the way bindings were evaluated across panels, and with high coupling.

Now use properties from within containments to determine shell margins instead, which removes the dependency on other containments for measurements. This allows us to get rid of TaskPanelControls as well!

Fixes: https://invent.kde.org/teams/plasma-mobile/issues/-/issues/198
2022-12-10 21:05:13 -05:00
.reuse Add dep5 file for setting license of json files 2022-07-21 19:30:11 +00:00
bin SVN_SILENT made messages (.desktop file) - always resolve ours 2022-10-20 02:06:33 +00:00
components mobileshellstate: Heavily refactor to remove global shell margins to fix window binding loops 2022-12-10 21:05:13 -05:00
containments mobileshellstate: Heavily refactor to remove global shell margins to fix window binding loops 2022-12-10 21:05:13 -05:00
kcms SVN_SILENT made messages (.desktop file) - always resolve ours 2022-11-20 01:50:06 +00:00
LICENSES navigationpanel: Add ability to toggle between gesture only and shown navigation panel modes 2022-02-13 04:23:57 +00:00
look-and-feel lockscreen: Remove wallpaper workaround 2022-12-09 16:53:52 -05:00
po GIT_SILENT Sync po/docbooks with svn 2022-12-08 02:22:20 +00:00
quicksettings quicksettings: Remove location quicksettings 2022-11-23 19:48:53 -05:00
screenshots screenshots: Add licenses 2022-08-31 15:54:11 -04:00
shell SVN_SILENT made messages (.desktop file) - always resolve ours 2022-11-20 01:50:06 +00:00
tests tests: Update readme with ksmserver-logout-greeter info for power menu 2022-11-02 23:44:23 +00:00
.git-blame-ignore-revs REUSE compliance, add check to CI, drop unused components 2021-12-23 16:02:41 +00:00
.gitignore Ignore dir 2022-05-13 08:36:05 +02:00
.gitlab-ci.yml Add Qt6 CI support 2022-10-23 09:49:59 +00:00
.kde-ci.yml Update .kde-ci.yml 2022-11-30 01:15:28 +00:00
CMakeLists.txt Add compile time dependency on Kirigami Addons 2022-11-28 21:57:13 -05:00
logo.png Add repository icon 2021-12-23 22:37:54 +00:00
logo.png.license Fix license header 2021-12-23 22:41:04 +00:00
plasma_phone_components.notifyrc SVN_SILENT made messages (.desktop file) - always resolve ours 2022-10-20 02:06:33 +00:00
README.md mobileshell: Remove compile time QtFeedback dependency, and make it optional 2022-11-12 11:15:36 -05:00

Plasma Mobile

This repository contains shell components for Plasma Mobile.

Reporting issues

Locations

  • components/mobileshell - private shell component library (API not guaranteed to be stable!)
  • containments - shell panels (homescreens, status bar, task panel)
  • kcms - settings module
  • look-and-feel - Plasma look-and-feel packages (ex. lockscreen, logout, etc.)
  • shell - Plasma shell package, provides implementations for applet and containment configuration dialogs
  • quicksettings - quick settings packages for the action drawer
  • tests - small runnable snippets that can be used to test parts of the shell without loading all of Plasma

Test on a development machine

See the documentation page for more details.

It is recommended to use kdesrc-build to build this from source. See this page in order to set it up.

Dependencies:

  • KDE Frameworks 5 setup (plasma-framework and its dependencies)
  • Plasma Nano
  • Kirigami
  • Kirigami Addons

To start the phone homescreen in a window, run:

QT_QPA_PLATFORM=wayland dbus-run-session kwin_wayland --xwayland "plasmashell -p org.kde.plasma.phoneshell"