D9764: [WIP] a basic TabletModeManager
mart added a comment. Restricted Application edited projects, added KWin; removed Plasma. In https://phabricator.kde.org/D9764#188910, @davidedmundson wrote: > > maybe one could still work around by connecting blindly to that by hand > > There's nothing inherently wrong with doing that. Assuming the DBus API is stable is as valid and as easy as assuming the a library is valid and stable. > > If you're going to expose it in Kirigami, then I wouldn't bother doing anything else. yeah, we have to promiseapi stability for all kf5 like on that kwin interface, that's for sure. ok, so kirigami already has a public library as well, so if done here, this could be used directly in qml (there is already a singleton which exposes an ismobile variable, which not would change dinamically at runtime), but also from any c++ program, which would be nice. REPOSITORY R108 KWin BRANCH mart/tabletMode REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin, graesslin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, iodelay, bwowk, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
graesslin accepted this revision. This revision is now accepted and ready to land. Restricted Application edited projects, added Plasma; removed KWin. REPOSITORY R108 KWin BRANCH mart/tabletMode REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin, graesslin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
davidedmundson added a comment. Restricted Application edited projects, added KWin; removed Plasma. > maybe one could still work around by connecting blindly to that by hand There's nothing inherently wrong with doing that. Assuming the DBus API is stable is as valid and as easy as assuming the a library is valid and stable. If you're going to expose it in Kirigami, then I wouldn't bother doing anything else. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, iodelay, bwowk, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
mart marked 2 inline comments as done. Restricted Application edited projects, added Plasma; removed KWin. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
mart updated this revision to Diff 25099. mart added a comment. Restricted Application edited projects, added KWin; removed Plasma. adress comments REPOSITORY R108 KWin CHANGES SINCE LAST UPDATE https://phabricator.kde.org/D9764?vs=25022&id=25099 BRANCH mart/tabletMode REVISION DETAIL https://phabricator.kde.org/D9764 AFFECTED FILES CMakeLists.txt main_wayland.cpp tabletmodemanager.cpp tabletmodemanager.h To: mart, #plasma, #kwin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, iodelay, bwowk, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
mart added a comment. Restricted Application edited projects, added Plasma; removed KWin. In https://phabricator.kde.org/D9764#188872, @graesslin wrote: > In https://phabricator.kde.org/D9764#188862, @mart wrote: > > > In https://phabricator.kde.org/D9764#188354, @graesslin wrote: > > > > > In https://phabricator.kde.org/D9764#188268, @mart wrote: > > > > > > > one thing i'm wondering, is how to manage dependencies, as ideally we want most of our apps to make use of this, but can't ask for sure to depend from kwin..., which finding the xml would make it an hard dependency (maybe one could still work around by connecting blindly to that by hand) > > > > > > > > > maybe a new framework which provides the XML and a small client side wrapper? Could probably be tier1. > > > > > > do you think it should be in a new standalone framework or is there anything already existing which could have it? > > > maybe KGuiAddons? yeah, sounds good REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
graesslin added a comment. Restricted Application edited projects, added KWin; removed Plasma. In https://phabricator.kde.org/D9764#188862, @mart wrote: > In https://phabricator.kde.org/D9764#188354, @graesslin wrote: > > > In https://phabricator.kde.org/D9764#188268, @mart wrote: > > > > > one thing i'm wondering, is how to manage dependencies, as ideally we want most of our apps to make use of this, but can't ask for sure to depend from kwin..., which finding the xml would make it an hard dependency (maybe one could still work around by connecting blindly to that by hand) > > > > > > maybe a new framework which provides the XML and a small client side wrapper? Could probably be tier1. > > > do you think it should be in a new standalone framework or is there anything already existing which could have it? maybe KGuiAddons? REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, iodelay, bwowk, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
mart added a comment. Restricted Application edited projects, added Plasma; removed KWin. In https://phabricator.kde.org/D9764#188354, @graesslin wrote: > In https://phabricator.kde.org/D9764#188268, @mart wrote: > > > one thing i'm wondering, is how to manage dependencies, as ideally we want most of our apps to make use of this, but can't ask for sure to depend from kwin..., which finding the xml would make it an hard dependency (maybe one could still work around by connecting blindly to that by hand) > > > maybe a new framework which provides the XML and a small client side wrapper? Could probably be tier1. do you think it should be in a new standalone framework or is there anything already existing which could have it? REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
graesslin added inline comments.
Restricted Application edited projects, added KWin; removed Plasma.
INLINE COMMENTS
> tabletmodemanager.cpp:75
> +{
> +m_spy = new TabletModeInputEventSpy(this);
> +input()->installInputEventSpy(m_spy);
please put into initializer.
Also the spy leaks.
> tabletmodemanager.cpp:86-87
> +TabletModeManager::~TabletModeManager()
> +{
> +}
> +
= default
> tabletmodemanager.cpp:106
> +
> +#include "tabletmodemanager.moc"
is that needed?
> workspace.cpp:183
>
> +TabletModeManager::create(this);
> +
I would create it in main_wayland.cpp in ApplicationWayland::performStartup
just before creating the virtualkeyboard.
Reason: this is currently Wayland only code and we might not want to expose the
dbus service on X11. Reason for just before creating virt keyboard: I want to
use that to automatically enable the virtual keyboard if we are in tablet mode.
REPOSITORY
R108 KWin
REVISION DETAIL
https://phabricator.kde.org/D9764
To: mart, #plasma, #kwin
Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, iodelay, bwowk,
ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts,
sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
graesslin added a comment. Restricted Application edited projects, added Plasma; removed KWin. In https://phabricator.kde.org/D9764#188268, @mart wrote: > one thing i'm wondering, is how to manage dependencies, as ideally we want most of our apps to make use of this, but can't ask for sure to depend from kwin..., which finding the xml would make it an hard dependency (maybe one could still work around by connecting blindly to that by hand) maybe a new framework which provides the XML and a small client side wrapper? Could probably be tier1. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: graesslin, davidedmundson, plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
mart edited the test plan for this revision. Restricted Application edited projects, added KWin; removed Plasma. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: davidedmundson, plasma-devel, kwin, #kwin, iodelay, bwowk, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
mart added a comment. Restricted Application edited projects, added Plasma; removed KWin. one thing i'm wondering, is how to manage dependencies, as ideally we want most of our apps to make use of this, but can't ask for sure to depend from kwin..., which finding the xml would make it an hard dependency (maybe one could still work around by connecting blindly to that by hand) REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: davidedmundson, plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
davidedmundson added a comment. Restricted Application edited projects, added KWin; removed Plasma. DBus code is all good. It would be nice if you can run qdbuscpp2xml on the TabletModeManager and install that .xml file in /usr/share/dbus-1/services it will allow other programs to generate the client side interface programatically. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: davidedmundson, plasma-devel, kwin, #kwin, iodelay, bwowk, ZrenBot, progwolff, lesliezhai, ali-mohamed, hardening, jensreuterberg, abetts, sebas, apol, mart
D9764: [WIP] a basic TabletModeManager
mart added reviewers: Plasma, KWin. Restricted Application edited projects, added Plasma; removed KWin. Restricted Application added a subscriber: plasma-devel. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D9764 To: mart, #plasma, #kwin Cc: plasma-devel, kwin, #kwin, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
