WheelEvent class pimpling
[platform/core/uifw/dali-adaptor.git] / dali / internal / window-system / common / window-base.h
index 9871611..a055c59 100644 (file)
@@ -2,7 +2,7 @@
 #define DALI_INTERNAL_WINDOWSYSTEM_COMMON_WINDOW_BASE_H
 
 /*
- * Copyright (c) 2019 Samsung Electronics Co., Ltd.
+ * Copyright (c) 2020 Samsung Electronics Co., Ltd.
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -21,7 +21,7 @@
 // EXTERNAL INCLUDES
 #include <dali/integration-api/events/key-event-integ.h>
 #include <dali/integration-api/events/point.h>
-#include <dali/public-api/events/wheel-event.h>
+#include <dali/integration-api/events/wheel-event-integ.h>
 #include <string>
 #include <vector>
 #include <cstdint>
@@ -71,10 +71,11 @@ public:
   typedef Signal< void ( const DamageArea& ) > DamageSignalType;
   typedef Signal< void ( const RotationEvent& ) > RotationSignalType;
   typedef Signal< void ( DevelWindow::EffectState, DevelWindow::EffectType ) > TransitionEffectEventSignalType;
+  typedef Signal< void ( ) > KeyboardRepeatSettingsChangedSignalType;
 
   // Input events
   typedef Signal< void ( Integration::Point&, uint32_t ) > TouchEventSignalType;
-  typedef Signal< void ( WheelEvent& ) > WheelEventSignalType;
+  typedef Signal< void ( Integration::WheelEvent& ) > WheelEventSignalType;
   typedef Signal< void( Integration::KeyEvent& ) > KeyEventSignalType;
 
   // Clipboard
@@ -335,6 +336,18 @@ public:
    */
   virtual void SetParent( WindowBase* parentWinBase ) = 0;
 
+  /**
+   * @brief Create a sync fence that can tell the frame is rendered by the graphics driver.
+   * @return The file descriptor that tells when it is rendered.
+   */
+  virtual int CreateFrameRenderedSyncFence() = 0;
+
+  /**
+   * @brief Create a sync fence that can tell the frame is presented by the display server.
+   * @return The file descriptor that tells when it is presented.
+   */
+  virtual int CreateFramePresentedSyncFence() = 0;
+
   // Signals
 
   /**
@@ -407,6 +420,11 @@ public:
    */
   TransitionEffectEventSignalType& TransitionEffectEventSignal();
 
+  /**
+   * @brief This signal is emitted when the keyboard repeat is changed.
+   */
+  KeyboardRepeatSettingsChangedSignalType& KeyboardRepeatSettingsChangedSignal();
+
 protected:
 
   // Undefined
@@ -417,20 +435,21 @@ protected:
 
 protected:
 
-  IconifySignalType                    mIconifyChangedSignal;
-  FocusSignalType                      mFocusChangedSignal;
-  OutputSignalType                     mOutputTransformedSignal;
-  DeleteSignalType                     mDeleteRequestSignal;
-  DamageSignalType                     mWindowDamagedSignal;
-  RotationSignalType                   mRotationSignal;
-  TouchEventSignalType                 mTouchEventSignal;
-  WheelEventSignalType                 mWheelEventSignal;
-  KeyEventSignalType                   mKeyEventSignal;
-  SelectionSignalType                  mSelectionDataSendSignal;
-  SelectionSignalType                  mSelectionDataReceivedSignal;
-  StyleSignalType                      mStyleChangedSignal;
-  AccessibilitySignalType              mAccessibilitySignal;
-  TransitionEffectEventSignalType      mTransitionEffectEventSignal;
+  IconifySignalType                       mIconifyChangedSignal;
+  FocusSignalType                         mFocusChangedSignal;
+  OutputSignalType                        mOutputTransformedSignal;
+  DeleteSignalType                        mDeleteRequestSignal;
+  DamageSignalType                        mWindowDamagedSignal;
+  RotationSignalType                      mRotationSignal;
+  TouchEventSignalType                    mTouchEventSignal;
+  WheelEventSignalType                    mWheelEventSignal;
+  KeyEventSignalType                      mKeyEventSignal;
+  SelectionSignalType                     mSelectionDataSendSignal;
+  SelectionSignalType                     mSelectionDataReceivedSignal;
+  StyleSignalType                         mStyleChangedSignal;
+  AccessibilitySignalType                 mAccessibilitySignal;
+  TransitionEffectEventSignalType         mTransitionEffectEventSignal;
+  KeyboardRepeatSettingsChangedSignalType mKeyboardRepeatSettingsChangedSignal;
 };
 
 } // namespace Adaptor