#include <dali/public-api/signals/callback.h>
// INTERNAL INCLUDES
-#include <dali/devel-api/adaptor-framework/text-clipboard.h>
#include <dali/integration-api/adaptor-framework/adaptor.h>
#include <dali/integration-api/adaptor-framework/scene-holder-impl.h>
#include <dali/integration-api/adaptor-framework/trigger-event-factory.h>
{
class RenderSurfaceInterface;
-namespace Accessibility
-{
-class Bridge;
-}
-
namespace Integration
{
class Core;
public:
using AdaptorSignalType = Dali::Adaptor::AdaptorSignalType;
using WindowCreatedSignalType = Dali::Adaptor::WindowCreatedSignalType;
+ using LocaleChangedSignalType = Dali::Adaptor::LocaleChangedSignalType;
using SurfaceSize = Uint16Pair; ///< Surface size type
*/
void SceneCreated();
+ /**
+ * Get the application package name
+ */
static std::string GetApplicationPackageName();
public: // AdaptorInternalServices implementation
/**
* @copydoc Dali::Adaptor::AddIdle()
*/
- virtual bool AddIdle(CallbackBase* callback, bool hasReturnValue, bool forceAdd);
+ virtual bool AddIdle(CallbackBase* callback, bool hasReturnValue);
/**
* Adds a new Window instance to the Adaptor
void SurfaceResizeComplete(Dali::RenderSurfaceInterface* surface, SurfaceSize surfaceSize);
/**
+ * @brief Increase surface resize completed counter.
+ * This API will be ignored if thread controller is not exist.
+ */
+ void IncreaseSurfaceResizeCounter();
+
+ /**
* Sets layout direction of root by system language
* @param[in] locale System locale
*/
const LogFactoryInterface& GetLogFactory();
/**
+ * @copydoc Dali::Adaptor::GetTraceFactory
+ */
+ const TraceFactoryInterface& GetTraceFactory();
+
+ /**
* @copydoc Dali::Adaptor::RegisterProcessor
*/
void RegisterProcessor(Integration::Processor& processor, bool postProcessor);
void GetWindowContainerInterface(WindowContainer& windows) override;
/**
+ * copydoc Dali::Internal::Adaptor::AdaptorInternalServices::GetTextureUploadManager()
+ */
+ Devel::TextureUploadManager& GetTextureUploadManager() override;
+
+ /**
* @brief Get the configuration manager
* @return The configuration manager, or null if it hasn't been created yet
*/
return mWindowCreatedSignal;
}
+ /**
+ * @copydoc Dali::Adaptor::LocaleChangedSignal
+ */
+ LocaleChangedSignalType& LocaleChangedSignal()
+ {
+ return mLocaleChangedSignal;
+ }
+
public: // From Dali::Internal::Adaptor::CoreEventInterface
/**
- * @copydoc Dali::Internal::Adaptor:CoreEventInterface:::ProcessCoreEvents()
+ * @copydoc Dali::Internal::Adaptor::CoreEventInterface:::FlushUpdateMessages()
+ */
+ void FlushUpdateMessages() override;
+
+ /**
+ * @copydoc Dali::Internal::Adaptor::CoreEventInterface:::ProcessCoreEvents()
*/
void ProcessCoreEvents() override;
*/
void QueueCoreEvent(const Dali::Integration::Event& event) override;
-private: // From Dali::Integration::RenderController
+public: // From Dali::Integration::RenderController
/**
* @copydoc Dali::Integration::RenderController::RequestUpdate()
*/
void SetupSystemInformation();
/**
+ * Remove system information if needs
+ */
+ void RemoveSystemInformation();
+
+ /**
* Adds a callback to be run when entering an idle state.
*
* A callback of the following type should be used:
* @endcode
* This callback will be called repeatedly as long as it returns true. A return of 0 deletes this callback.
*/
- bool AddIdleEnterer(CallbackBase* callback, bool forceAdd);
+ bool AddIdleEnterer(CallbackBase* callback);
/**
* Removes a previously added the idle enterer callback.
AdaptorSignalType mResizedSignal; ///< Resized signal.
AdaptorSignalType mLanguageChangedSignal; ///< Language changed signal.
WindowCreatedSignalType mWindowCreatedSignal; ///< Window created signal.
+ LocaleChangedSignalType mLocaleChangedSignal; ///< Locale changed signal.
Dali::Adaptor& mAdaptor; ///< Reference to public adaptor instance.
State mState; ///< Current state of the adaptor
std::unique_ptr<CallbackManager> mCallbackManager; ///< Used to install callbacks
bool mNotificationOnIdleInstalled; ///< whether the idle handler is installed to send an notification event
+ bool mRequiredIdleRepeat; ///< whether we need to repeat installed notification event in idle handler
TriggerEventInterface* mNotificationTrigger; ///< Notification event trigger
FeedbackPluginProxy* mDaliFeedbackPlugin; ///< Used to access feedback support
FeedbackController* mFeedbackController; ///< Plays feedback effects for Dali-Toolkit UI Controls.
PerformanceInterface* mPerformanceInterface; ///< Performance interface
KernelTrace mKernelTracer; ///< Kernel tracer
SystemTrace mSystemTracer; ///< System tracer
+ Devel::TextureUploadManager mTextureUploadManager; ///< TextureUploadManager
ObjectProfiler* mObjectProfiler; ///< Tracks object lifetime for profiling
Dali::Timer mMemoryPoolTimer; ///< Logs memory pool capacity
SlotDelegate<Adaptor> mMemoryPoolTimerSlotDelegate;
std::unique_ptr<Integration::AddOnManager> mAddOnManager; ///< Pointer to the addon manager
- class AccessibilityObserver : public ConnectionTracker
- {
- public:
- void OnAccessibleKeyEvent(const Dali::KeyEvent& event);
- };
- AccessibilityObserver mAccessibilityObserver;
-
public:
inline static Adaptor& GetImplementation(Dali::Adaptor& adaptor)
{