summaryrefslogtreecommitdiff
path: root/src/components/application_manager/include/application_manager/display_capabilities_builder.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/components/application_manager/include/application_manager/display_capabilities_builder.h')
-rw-r--r--src/components/application_manager/include/application_manager/display_capabilities_builder.h28
1 files changed, 27 insertions, 1 deletions
diff --git a/src/components/application_manager/include/application_manager/display_capabilities_builder.h b/src/components/application_manager/include/application_manager/display_capabilities_builder.h
index 529c9a32c1..6810bfee8c 100644
--- a/src/components/application_manager/include/application_manager/display_capabilities_builder.h
+++ b/src/components/application_manager/include/application_manager/display_capabilities_builder.h
@@ -68,6 +68,16 @@ class DisplayCapabilitiesBuilder {
const smart_objects::SmartObject& display_capabilities);
/**
+ * @brief IsWaitingForWindowCapabilities checks wheter builder is waiting for
+ * a capabilities notification for at least one window or not
+ * @param incoming_display_capabilities capabilities to analyze
+ * @return true if builder is waiting for capabilities for at least one
+ * window, otherwise returns false
+ */
+ bool IsWaitingForWindowCapabilities(
+ const smart_objects::SmartObject& incoming_display_capabilities) const;
+
+ /**
* @brief ResetDisplayCapabilities resets stored notification
*/
void ResetDisplayCapabilities();
@@ -84,13 +94,29 @@ class DisplayCapabilitiesBuilder {
*/
const smart_objects::SmartObjectSPtr display_capabilities() const;
+ /**
+ * @brief IsWindowResumptionNeeded checks that is there a need for
+ * resumption of windows (except main window)
+ * @return true if data about windows to be resumed was saved in window_info,
+ * otherwise returns false
+ */
+
+ bool IsWindowResumptionNeeded() const;
+
private:
+ /**
+ * @brief InvokeResumeCallback invokes resume callback function if all
+ * required criteria is met
+ */
+ void InvokeResumeCallback();
+
smart_objects::SmartObjectSPtr display_capabilities_;
typedef std::set<WindowID> WindowIDsToResume;
WindowIDsToResume window_ids_to_resume_;
Application& owner_;
ResumeCallback resume_callback_;
- sync_primitives::Lock display_capabilities_lock_;
+ mutable sync_primitives::Lock display_capabilities_lock_;
+ bool is_widget_windows_resumption_;
};
} // namespace application_manager
#endif