grpc-proxy: Add set_app_fullscreen functionality
[src/agl-compositor.git] / grpc-proxy / shell.cpp
index cc6ead6..ef5c22f 100644 (file)
@@ -61,13 +61,37 @@ Shell::ActivateApp(const std::string &app_id, const std::string &output_name)
 void
 Shell::DeactivateApp(const std::string &app_id)
 {
-       (void) app_id;
+       struct agl_shell *shell = this->m_shell.get();
+
+       agl_shell_deactivate_app(shell, app_id.c_str());
+       wl_display_flush(m_shell_data->wl_display);
 }
 
 void
-Shell::SetAppFloat(const std::string &app_id)
+Shell::SetAppFloat(const std::string &app_id, int32_t x_pos, int32_t y_pos)
 {
-       (void) app_id;
+       struct agl_shell *shell = this->m_shell.get();
+
+       agl_shell_set_app_float(shell, app_id.c_str(), x_pos, y_pos);
+       wl_display_flush(m_shell_data->wl_display);
+}
+
+void
+Shell::SetAppNormal(const std::string &app_id)
+{
+       struct agl_shell *shell = this->m_shell.get();
+
+       agl_shell_set_app_normal(shell, app_id.c_str());
+       wl_display_flush(m_shell_data->wl_display);
+}
+
+void
+Shell::SetAppFullscreen(const std::string &app_id)
+{
+       struct agl_shell *shell = this->m_shell.get();
+
+       agl_shell_set_app_fullscreen(shell, app_id.c_str());
+       wl_display_flush(m_shell_data->wl_display);
 }
 
 void