On Tue, May 18, 2021 at 06:26:19AM -0700, Francesco ARGENTIERI (KINETON) wrote: > Hi Marius,</br> Hi Francesco, > Thank you for your last reply. I wuold share my work to ensure if I move on correctly direction or not. > I had removed the json object accordigly as mentioned in your message, so the instruction assume the form: > ```cpp > mp_hs_->showWindow(application_id.toStdString().c_str(), nullptr); > ``` > Furthemore I had used you applicamtion *splitv* with minor > modification. The result is shown in figure **IMG-0684.jpg**. The > behaviour is exactly what I want to achieve, but the area occupied by > the app is unreacheble until app is kill ed. Done this the screen > return to the status *fullscreen*. > When you launch the second application, as shown in the figure > **IMG-0683.jpg**, the screen is splitted correctcly. Such as described > by you, the application (*dashboard*) takes information about screen > by (*Window.width, Window.height*) QML instructions. But again I can > control only the left side of the screen, the right side is definetly > lost. I suspect that this because we don't give it input focus at all. There are couple of improvement tasks related to this one for remote outputs and one for the pop-up/dialog one surface role, so I speculate this is the same here. https://jira.automotivelinux.org/browse/SPEC-3344 and https://jira.automotivelinux.org/browse/SPEC-3836 keep track of that. > Could you please tell me if this i issue can be solved? Yes. Please open a new Jira task for it so we can track it and do a follow-up. > > Figure **IMG-0683.jpg** shows the *dashboard* application runs > perfectly. When I press the *plus* button in top bar, the homescreen > sends a message to my custom service to enable > `AGL_SHELL_DESKTOP_APP_ROLE_SPLIT_VERTICAL`. So far all works > perfectly. > Now, I want to inform the *agl-compositor* by a custom service use > `enum AGL_SHELL_DESKTOP_APP_ROLE_SPLIT_VERTICAL or > AGL_SHELL_DESKTOP_APP_FULLSCREEN`, but these instructions are ignored > in my lambda even though, code runs and program prints the debug > information correctly. > ```cpp > QObject::connect( > hmi.get(), &HmiFeature::statusScreenChanged, > [aglShell, grapich_role](QJsonObject obj) { > if (obj["role"].toInt() == 2) { > qDebug() << "split condition"; > const auto role = agl_shell_desktop_app_role::AGL_SHELL_DESKTOP_APP_ROLE_SPLIT_VERTICAL; > aglShell->set_window_props(nullptr, grapich_role, role, 0, 0); > } else if (obj["role"].toInt() == 1) { > qDebug() << "full condition"; > const auto role = agl_shell_desktop_app_role::AGL_SHELL_DESKTOP_APP_ROLE_FULLSCREEN; > aglShell->set_window_props(nullptr, grapich_role, role, 0, 0); > } else { > qDebug() << should disable application on screen"; > aglShell->deactivate_app(grapich_role); > } > }); > ``` This sounds like you'd like to perform another level of split, but any further requests will be ignored, until you destroy the current one. The split functionality is just a demo so it is half-backed to have it working for just one level. This would actually need https://jira.automotivelinux.org/browse/SPEC-3906 fixing, and ditch the current implementation of split surfaces. So handling multiple levels should first see if we can't really use the protocol rather than doing it ourselves. > Finally through the button to recall the *launcher* I want to > deactivate the apps shown on screen separately. Infact, again, I am > able to activate/deactivate only the left one. (**IMG-0685.jpg**)</br> > When I'm using the instruction: > ```cpp > aglShell->deactivate_app(grapich_role); > ``` > it seems does not sort any effect and the application remain visible on screen.</br> Yeah, deactivation only works for desktop only roles. Suggest opening a a new Jira item as well. > > In your opinion, it does make sense?</br> > I'm glad hear from you any kind advice.</br> > > Best regard,</br> > Francesco > > > > > -=-=-=-=-=-=-=-=-=-=-=- Links: You receive all messages sent to this group. View/Reply Online (#9190): https://lists.automotivelinux.org/g/agl-dev-community/message/9190 Mute This Topic: https://lists.automotivelinux.org/mt/82204671/2167316 Mute #koi:https://lists.automotivelinux.org/g/agl-dev-community/mutehashtag/koi Mute #split-screen-feauture:https://lists.automotivelinux.org/g/agl-dev-community/mutehashtag/split-screen-feauture Mute #swap-screen:https://lists.automotivelinux.org/g/agl-dev-community/mutehashtag/swap-screen Mute #agl-compositor:https://lists.automotivelinux.org/g/agl-dev-community/mutehashtag/agl-compositor Group Owner: agl-dev-community+owner@xxxxxxxxxxxxxxxxxxxxxxxxx Unsubscribe: https://lists.automotivelinux.org/g/agl-dev-community/leave/4543822/2167316/883735764/xyzzy [list-automotive-discussions82@xxxxxxxxxxx] -=-=-=-=-=-=-=-=-=-=-=-
Attachment:
signature.asc
Description: PGP signature