From 5bc85625bb52c97301091844d786d4016ec3c883 Mon Sep 17 00:00:00 2001 From: Sung-Jin Park Date: Fri, 28 Aug 2020 17:24:38 +0900 Subject: [PATCH 01/16] packaging: add libds-boot package for booting with exampleCompositor Change-Id: I17d15bd330e620dc316f462bb48638783a5c698f Signed-off-by: Sung-Jin Park --- data/units/display-manager.service | 15 +++++++++++++++ data/units/libds.env | 11 +++++++++++ packaging/libds.spec | 31 ++++++++++++++++++++++++++++++- 3 files changed, 56 insertions(+), 1 deletion(-) create mode 100644 data/units/display-manager.service create mode 100644 data/units/libds.env diff --git a/data/units/display-manager.service b/data/units/display-manager.service new file mode 100644 index 0000000..d171f75 --- /dev/null +++ b/data/units/display-manager.service @@ -0,0 +1,15 @@ +[Unit] +Description=Display manager (libds) + +[Service] +EnvironmentFile=/etc/sysconfig/libds.env +SmackProcessLabel=System +ExecStartPre=-/usr/bin/keymap_update.sh +ExecStart=/usr/bin/bash -c "/usr/bin/exampleCompositor" +ExecStartPost=/usr/bin/bash -c "/usr/bin/touch $XDG_RUNTIME_DIR/.wm_ready;devicectl display start;devicectl display stop" +Restart=always +RestartSec=10 + +[Install] +WantedBy=graphical.target + diff --git a/data/units/libds.env b/data/units/libds.env new file mode 100644 index 0000000..d4d820d --- /dev/null +++ b/data/units/libds.env @@ -0,0 +1,11 @@ +# env for exampleCompositor (libds) +E_CONF_PROFILE=tizen-mobile +XDG_RUNTIME_DIR=/run +XDG_CACHE_HOME=/run +ECORE_EVAS_FORCE_SYNC_RENDER=1 +ELM_PROFILE=mobile +HOME=/var/lib/enlightenment +EINA_LOG_DLOG_ENABLE=1 +LIBINPUT_IGNORE_JOYSTICK=1 +#E_INFO_RULE_FILE=/opt/rule/rule +#E_INFO_TRACE_FILE=/tmp/trace diff --git a/packaging/libds.spec b/packaging/libds.spec index 81ef44d..61324e1 100644 --- a/packaging/libds.spec +++ b/packaging/libds.spec @@ -62,6 +62,13 @@ Group: System/Libraries %description tests Test module for testing libtbm APIs +%package boot +Summary: package for boot with libds-based display server +Group: System/Libraries + +%description boot +Package for boot with libds-based display server + %prep %setup -q cp %{SOURCE1001} . @@ -82,8 +89,24 @@ ninja -C builddir all export DESTDIR=%{buildroot} ninja -C builddir install -%post -p /sbin/ldconfig +%define daemon_user display +%define daemon_group display + +# install service +%__mkdir_p %{buildroot}%{_unitdir} +install -m 644 data/units/display-manager.service %{buildroot}%{_unitdir} + +# install env file for service +%__mkdir_p %{buildroot}%{_sysconfdir}/sysconfig +install -m 0644 data/units/libds.env %{buildroot}%{_sysconfdir}/sysconfig +#%pre +# create groups 'display' +#getent group %{daemon_group} >/dev/null || %{_sbindir}/groupadd -r -o %{daemon_group} +# create user 'display' +#getent passwd %{daemon_user} >/dev/null || %{_sbindir}/useradd -r -g %{daemon_group} -d /run/display -s /bin/false -c "Display daemon" %{daemon_user} + +%post -p /sbin/ldconfig %postun -p /sbin/ldconfig %files @@ -105,3 +128,9 @@ ninja -C builddir install %defattr(-,root,root,-) %license COPYING %{_bindir}/libds-tests + +%files boot +%defattr(-,root,root,-) +%license COPYING +%{_unitdir}/display-manager.service +%config %{_sysconfdir}/sysconfig/libds.env -- 2.7.4 From 2e9329d0be01860400598f8775079727b3df98c7 Mon Sep 17 00:00:00 2001 From: jeon Date: Fri, 28 Aug 2020 18:52:09 +0900 Subject: [PATCH 02/16] DSTextInput: set TextInput window to InputPanel's parent Change-Id: I1e16c37d74e6116b416c9c4afee3395f64b6ee09 --- src/DSWaylandServer/DSWaylandInputPanel.cpp | 38 +++++++---------------------- src/DSWaylandServer/DSWaylandTextInput.cpp | 13 +++++----- 2 files changed, 16 insertions(+), 35 deletions(-) diff --git a/src/DSWaylandServer/DSWaylandInputPanel.cpp b/src/DSWaylandServer/DSWaylandInputPanel.cpp index 77c65a0..f8b7d18 100644 --- a/src/DSWaylandServer/DSWaylandInputPanel.cpp +++ b/src/DSWaylandServer/DSWaylandInputPanel.cpp @@ -373,34 +373,14 @@ void DSWaylandInputPanelSurfacePrivate::setTransientForSurface(DSWaylandSurface { for (auto it = __dataMap.begin(); it != __dataMap.end(); it++) { - //DSWaylandInputPanelSurfaceData *surfaceData = (*it).second; - /* TODO: - * child = surfaceData->getWlSurface(); - * if child->parent - * { - * if child->parent != parent - * { - * remove child in child->parent->transients list - * child->parent = nullptr - * } - * } - * if parent != child && parent != child->parent - * { - * add child in child->parent->transients list - * child->parent = parent; - * } - * if (parent) - * { - * child->icccm.fetch.transientFor = true; - * child->icccm.transientFor = parent->id; - * } - * else - * { - * child->icccm.fetch.transientFor = false; - * child->icccm.transientFor = 0; - * } - * mark window changedr - */ + DSWaylandInputPanelSurfaceData *surfaceData = (*it).second; + DSWaylandSurface *child = surfaceData->getWlSurface(); + + // TODO: if current child has parent reset this + + DSWindowManager *windowManager = DSWindowManager::getInstance(); + windowManager->setWindowParent(child, parent); + windowManager->releaseInstance(); } } @@ -587,7 +567,7 @@ void DSWaylandInputPanelSurfacePrivate::__appendSurface(Resource *resource, void if (textInputSurface) { - //TODO: transparent set + pub->__inputPanel->setTransientFor(textInputSurface); } if (pub->__inputPanel->getRerunPanelShow()) diff --git a/src/DSWaylandServer/DSWaylandTextInput.cpp b/src/DSWaylandServer/DSWaylandTextInput.cpp index 743d57c..820e8ba 100644 --- a/src/DSWaylandServer/DSWaylandTextInput.cpp +++ b/src/DSWaylandServer/DSWaylandTextInput.cpp @@ -271,15 +271,16 @@ void DSWaylandTextInputPrivate::showInputPanel(void *resource) pub->__dsTextInputPrivate->showInputPanel(pub, id); __showClient = privateResource->client(); pub->__dsTextInputPrivate->updateInputPanelState(true); - if (pub->__dsTextInputPrivate->getInputPanelState() == DSTextInputPrivate::InputPanelStateWillHide) - { - send_private_command(privateResource->handle, 0, "CONFORMANT_RESTORE"); - } - pub->__dsTextInputPrivate->setInputPanelState(DSTextInputPrivate::InputPanelStateWillShow); - /* TODO: pub->__dsTextInputPrivate->setInputPanelTransientFor(getDSWindow(__activatedResource)); */ } + if (pub->__dsTextInputPrivate->getInputPanelState() == DSTextInputPrivate::InputPanelStateWillHide) + { + send_private_command(privateResource->handle, 0, "CONFORMANT_RESTORE"); + } + + pub->__dsTextInputPrivate->setInputPanelState(DSTextInputPrivate::InputPanelStateWillShow); pub->__geometryUpdated = false; + pub->__dsTextInputPrivate->setInputPanelTransientFor(__clientSurface); } void DSWaylandTextInputPrivate::text_input_destroy(Resource *resource) -- 2.7.4 From 5c1b5fad75815a8edb9b103db41cabd8f1d38188 Mon Sep 17 00:00:00 2001 From: jeon Date: Fri, 28 Aug 2020 23:55:02 +0900 Subject: [PATCH 03/16] DSWindowManager: add a API to allow user geometry Change-Id: I5a7698d8c462d3f808dec62cf792dc0203e6a51d --- src/DSWindowManager/DSWindowManager.cpp | 13 +++++++++++++ src/DSWindowManager/DSWindowManager.h | 2 ++ src/DSWindowManager/DSWindowManagerPrivate.h | 2 ++ src/DSWindowShell/DSWindowShell.cpp | 8 ++++++++ src/DSWindowShell/DSWindowShell.h | 2 ++ src/DSWindowShell/DSWindowShellPrivate.cpp | 7 +++++++ src/DSWindowShell/DSWindowShellPrivate.h | 2 ++ src/DSZone/DSZone.cpp | 9 +++++++++ src/DSZone/DSZone.h | 2 ++ 9 files changed, 47 insertions(+) diff --git a/src/DSWindowManager/DSWindowManager.cpp b/src/DSWindowManager/DSWindowManager.cpp index 4e8e32c..a77dcce 100644 --- a/src/DSWindowManager/DSWindowManager.cpp +++ b/src/DSWindowManager/DSWindowManager.cpp @@ -384,6 +384,13 @@ bool DSWindowManagerPrivate::getWindowVkbdFloating(DSWaylandSurface *dswlSurface return false; } +void DSWindowManagerPrivate::setWindowAllowUserGeometry(DSWaylandSurface *dswlSurface, bool set) +{ + DSZone *zone = __getZone(dswlSurface); + if (zone) + zone->setWindowAllowUserGeometry(dswlSurface, set); +} + DSWindowManager::DSWindowManager(DSObject *parent) : DS_INIT_PRIVATE_PTR(DSWindowManager) @@ -579,5 +586,11 @@ bool DSWindowManager::getWindowVkbdFloating(DSWaylandSurface *dswlSurface) return priv->getWindowVkbdFloating(dswlSurface); } +void DSWindowManager::setWindowAllowUserGeometry(DSWaylandSurface *dswlSurface, bool set) +{ + DS_GET_PRIV(DSWindowManager); + + priv->setWindowAllowUserGeometry(dswlSurface, set); +} } // namespace display_server diff --git a/src/DSWindowManager/DSWindowManager.h b/src/DSWindowManager/DSWindowManager.h index 838b821..730826c 100644 --- a/src/DSWindowManager/DSWindowManager.h +++ b/src/DSWindowManager/DSWindowManager.h @@ -77,6 +77,8 @@ public: bool setWindowVkbdFloating(DSWaylandSurface *dswlSurface, bool set); bool getWindowVkbdFloating(DSWaylandSurface *dswlSurface); + void setWindowAllowUserGeometry(DSWaylandSurface *dswlSurface, bool set); + protected: private: diff --git a/src/DSWindowManager/DSWindowManagerPrivate.h b/src/DSWindowManager/DSWindowManagerPrivate.h index e40eadc..956ec03 100644 --- a/src/DSWindowManager/DSWindowManagerPrivate.h +++ b/src/DSWindowManager/DSWindowManagerPrivate.h @@ -71,6 +71,8 @@ public: bool setWindowVkbdFloating(DSWaylandSurface *dswlSurface, bool set); bool getWindowVkbdFloating(DSWaylandSurface *dswlSurface); + void setWindowAllowUserGeometry(DSWaylandSurface *dswlSurface, bool set); + private: DSZone *__getZone(DSWindow *window); DSZone *__getZone(DSWaylandSurface *surface); diff --git a/src/DSWindowShell/DSWindowShell.cpp b/src/DSWindowShell/DSWindowShell.cpp index 6798b79..2bbbe33 100644 --- a/src/DSWindowShell/DSWindowShell.cpp +++ b/src/DSWindowShell/DSWindowShell.cpp @@ -372,4 +372,12 @@ bool DSWindowShell::getVkbdFloating() return priv->getVkbdFloating(); } +void DSWindowShell::setAllowUserGeometry(bool set) +{ + DS_GET_PRIV(DSWindowShell); + + priv->setAllowUserGeometry(set); +} + + } // namespace display_server diff --git a/src/DSWindowShell/DSWindowShell.h b/src/DSWindowShell/DSWindowShell.h index f2452f7..84123c5 100644 --- a/src/DSWindowShell/DSWindowShell.h +++ b/src/DSWindowShell/DSWindowShell.h @@ -116,6 +116,8 @@ public: bool setVkbdFloating(bool set); bool getVkbdFloating(); + void setAllowUserGeometry(bool set); + protected: private: diff --git a/src/DSWindowShell/DSWindowShellPrivate.cpp b/src/DSWindowShell/DSWindowShellPrivate.cpp index 7435cbf..4e939d7 100644 --- a/src/DSWindowShell/DSWindowShellPrivate.cpp +++ b/src/DSWindowShell/DSWindowShellPrivate.cpp @@ -647,6 +647,13 @@ bool DSWindowShellPrivate::getVkbdFloating() return false; } +void DSWindowShellPrivate::setAllowUserGeometry(bool set) +{ + if (__window) + __window->allowUserGeometry(set); +} + + void DSWindowShellPrivate::__sendConfigure(void) { if (__shellSurface) diff --git a/src/DSWindowShell/DSWindowShellPrivate.h b/src/DSWindowShell/DSWindowShellPrivate.h index 1d1924c..d9d864c 100644 --- a/src/DSWindowShell/DSWindowShellPrivate.h +++ b/src/DSWindowShell/DSWindowShellPrivate.h @@ -120,6 +120,8 @@ public: bool setVkbdFloating(bool set); bool getVkbdFloating(); + void setAllowUserGeometry(bool set); + private: bool __create(int x, int y, unsigned int w, unsigned int h, DSWindowShell *pWin, DSWindowShell *pParent); bool __findInChildList(DSWindowShell *parentWinShell); diff --git a/src/DSZone/DSZone.cpp b/src/DSZone/DSZone.cpp index 2493f8c..610e872 100644 --- a/src/DSZone/DSZone.cpp +++ b/src/DSZone/DSZone.cpp @@ -548,4 +548,13 @@ bool DSZone::getWindowVkbdFloating(DSWaylandSurface *dswlsurface) return wShell->getVkbdFloating(); } + +void DSZone::setWindowAllowUserGeometry(DSWaylandSurface *dswlsurface, bool set) +{ + DSWindowShell *wShell = __findWindowShell(dswlsurface); + if (!wShell) return; + + wShell->setAllowUserGeometry(set); +} + } // namespace display_server diff --git a/src/DSZone/DSZone.h b/src/DSZone/DSZone.h index 338d070..0fdd351 100644 --- a/src/DSZone/DSZone.h +++ b/src/DSZone/DSZone.h @@ -85,6 +85,8 @@ public: bool setWindowVkbdFloating(DSWaylandSurface *dswlSurface, bool set); bool getWindowVkbdFloating(DSWaylandSurface *dswlSurface); + void setWindowAllowUserGeometry(DSWaylandSurface *dswlSurface, bool set); + std::list> getWindowList(); std::list> getWindowShellList(); -- 2.7.4 From 9f4dfc88e7e259b540dde3416ff4bdfea9df7a8c Mon Sep 17 00:00:00 2001 From: jeon Date: Sat, 29 Aug 2020 00:11:55 +0900 Subject: [PATCH 04/16] DSWaylandInputPanel: set keyboard window environment and size Change-Id: I05bf5853ba8de1fbbcf11a7dce5d02ab47403eec --- src/DSWaylandServer/DSWaylandInputPanel.cpp | 41 +++++++++++++++++++++++++++-- src/DSWaylandServer/DSWaylandInputPanel.h | 3 +++ 2 files changed, 42 insertions(+), 2 deletions(-) diff --git a/src/DSWaylandServer/DSWaylandInputPanel.cpp b/src/DSWaylandServer/DSWaylandInputPanel.cpp index f8b7d18..191fced 100644 --- a/src/DSWaylandServer/DSWaylandInputPanel.cpp +++ b/src/DSWaylandServer/DSWaylandInputPanel.cpp @@ -28,6 +28,7 @@ #include "DSWaylandSurface.h" #include "DSStruct.h" #include "DSWindowManager.h" +#include "IDSBuffer.h" namespace display_server { @@ -116,7 +117,8 @@ DSWaylandInputPanel::DSWaylandInputPanel(DSWaylandCompositor *compositor) __dsTextInputPrivate(nullptr), __eventLoop(nullptr), __waitUpdate(false), - __rerunPanelShow(false) + __rerunPanelShow(false), + __wlSurface(nullptr) { __inputPanelSurface = new DSWaylandInputPanelSurface(__compositor, this); __inputPanelFloating = new DSWaylandInputPanelFloating(this); @@ -131,7 +133,8 @@ DSWaylandInputPanel::DSWaylandInputPanel(DSWaylandCompositor *compositor, DSText __dsTextInputPrivate(dsTextInputPrivate), __eventLoop(nullptr), __waitUpdate(false), - __rerunPanelShow(false) + __rerunPanelShow(false), + __wlSurface(nullptr) { __inputPanelSurface = new DSWaylandInputPanelSurface(__compositor, this); __inputPanelFloating = new DSWaylandInputPanelFloating(this); @@ -153,6 +156,21 @@ void DSWaylandInputPanel::createSurface(void *client, void *inputPanelResource, __inputPanelSurface->createGlobal(client, inputPanelResource, id, surface); /* TODO: Find window from surface and set some data */ + DSWaylandSurface *wlSurface = DSWaylandSurface::fromWlResource((struct ::wl_resource *)surface); + __wlSurface = wlSurface; + + if (!wlSurface) + { + DSLOG_WRN("DSWaylandInputPanel", "%p wl_surface has no DSWaylandSurface", surface); + return; + } + + DSWindowManager *windowManager = DSWindowManager::getInstance(); + windowManager->setWindowTitle(wlSurface, "Keyboard"); + windowManager->setWindowAllowUserGeometry(wlSurface, true); + windowManager->releaseInstance(); + + wlSurface->registerCallbackSurfaceCommitted(this, std::bind(&DSWaylandInputPanel::__onSurfaceCommitted, this, std::placeholders::_1)); } void DSWaylandInputPanel::clearSurfaces(void *inputPanelResource) @@ -263,6 +281,25 @@ DSWaylandSurface *DSWaylandInputPanel::getTextInputSurface() return __dsTextInputPrivate->getTextInputSurface(); } +void DSWaylandInputPanel::__onSurfaceCommitted(std::shared_ptr waylandSurfaceCommitInfo) +{ + if (!waylandSurfaceCommitInfo->bufferChanged()) + return; + + std::shared_ptr buffer = waylandSurfaceCommitInfo->getBuffer(); + std::shared_ptr bufferSize = buffer->getSize(); + + DSWindowManager *windowManager = DSWindowManager::getInstance(); + stGeometry geo = windowManager->getWindowGeometry(__wlSurface); + + /* FIXME: This calc is only for 0 angle. Use others calc if window is rotated */ + int nx = geo.x + (geo.w - bufferSize->w) / 2; + int ny = geo.y + geo.h - bufferSize->h; + + windowManager->setWindowGeometry(__wlSurface, nx, ny, bufferSize->w, bufferSize->h); + windowManager->releaseInstance(); +} + void DSWaylandInputPanel::__onEventIdleEnterer(void *data) { } diff --git a/src/DSWaylandServer/DSWaylandInputPanel.h b/src/DSWaylandServer/DSWaylandInputPanel.h index f456580..f9f39fa 100644 --- a/src/DSWaylandServer/DSWaylandInputPanel.h +++ b/src/DSWaylandServer/DSWaylandInputPanel.h @@ -38,6 +38,7 @@ class DSWaylandInputPanelPrivate; class DSWaylandInputPanelSurface; class DSWaylandInputPanelFloating; class DSWaylandSurface; +class DSWaylandSurfaceCommitInfo; class DS_DECL_EXPORT DSWaylandInputPanel : public DSObject { @@ -73,7 +74,9 @@ private: DSWaylandInputPanelFloating *__inputPanelFloating; bool __waitUpdate; bool __rerunPanelShow; + DSWaylandSurface *__wlSurface; + void __onSurfaceCommitted(std::shared_ptr waylandSurfaceCommitInfo); void __onEventIdleEnterer(void *data); }; -- 2.7.4 From f184cec2a78125426e0d5b539077a3482c058c19 Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 28 Aug 2020 17:42:30 +0900 Subject: [PATCH 05/16] DSWaylandSurface: add unique __tizenResId value Change-Id: I9b491473c2518fd01434aa098519e7eb27686174 Signed-off-by: Junkyeong Kim --- src/DSWaylandServer/DSWaylandSurface.cpp | 20 ++++++++++++++++++-- src/DSWaylandServer/DSWaylandSurface.h | 1 + src/DSWaylandServer/DSWaylandSurfacePrivate.h | 2 ++ 3 files changed, 21 insertions(+), 2 deletions(-) diff --git a/src/DSWaylandServer/DSWaylandSurface.cpp b/src/DSWaylandServer/DSWaylandSurface.cpp index 9e180de..d007595 100644 --- a/src/DSWaylandServer/DSWaylandSurface.cpp +++ b/src/DSWaylandServer/DSWaylandSurface.cpp @@ -73,6 +73,8 @@ bool DSWaylandSurfaceCommitInfo::bufferChanged() } /* DSWaylandSurfacePrivate */ +static uint32_t tizenResIdCnt; + DSWaylandSurfacePrivate::DSWaylandSurfacePrivate(DSWaylandSurface *p_ptr) : DSObjectPrivate(p_ptr), __p_ptr(p_ptr), @@ -81,7 +83,8 @@ DSWaylandSurfacePrivate::DSWaylandSurfacePrivate(DSWaylandSurface *p_ptr) __commitInfo{std::make_shared()}, __waylandClient(nullptr), __bufferManager{DSBufferManager::getInstance()}, - __resId(0) + __resId(0), + __tizenResId(++tizenResIdCnt) {} DSWaylandSurfacePrivate::DSWaylandSurfacePrivate(DSWaylandSurface *p_ptr, DSWaylandClient *waylandClient, uint32_t id) @@ -92,7 +95,8 @@ DSWaylandSurfacePrivate::DSWaylandSurfacePrivate(DSWaylandSurface *p_ptr, DSWayl __commitInfo{std::make_shared()}, __waylandClient(waylandClient), __bufferManager{DSBufferManager::getInstance()}, - __resId(0) + __resId(0), + __tizenResId(++tizenResIdCnt) { if (id > 0) { wl_surface::init(waylandClient->wlClient(), (int)id, 4); @@ -111,6 +115,11 @@ uint32_t DSWaylandSurfacePrivate::getResourceId() return __resId; } +uint32_t DSWaylandSurfacePrivate::getTizenResourceId() +{ + return __tizenResId; +} + void DSWaylandSurfacePrivate::surface_bind_resource(Resource *resource) { } @@ -282,4 +291,11 @@ uint32_t DSWaylandSurface::getResourceId() return priv->getResourceId(); } +uint32_t DSWaylandSurface::getTizenResourceId() +{ + DS_GET_PRIV(DSWaylandSurface); + + return priv->getTizenResourceId(); +} + } /* namespace display_server */ diff --git a/src/DSWaylandServer/DSWaylandSurface.h b/src/DSWaylandServer/DSWaylandSurface.h index f6cf2ca..e715fc7 100644 --- a/src/DSWaylandServer/DSWaylandSurface.h +++ b/src/DSWaylandServer/DSWaylandSurface.h @@ -68,6 +68,7 @@ public: bool hasResource(); uint32_t getResourceId(); + uint32_t getTizenResourceId(); private: // signals diff --git a/src/DSWaylandServer/DSWaylandSurfacePrivate.h b/src/DSWaylandServer/DSWaylandSurfacePrivate.h index 0f09d5b..6e344de 100644 --- a/src/DSWaylandServer/DSWaylandSurfacePrivate.h +++ b/src/DSWaylandServer/DSWaylandSurfacePrivate.h @@ -92,6 +92,7 @@ public: ~DSWaylandSurfacePrivate() override; uint32_t getResourceId(); + uint32_t getTizenResourceId(); protected: void surface_bind_resource(Resource *resource) override; @@ -118,6 +119,7 @@ private: DSWaylandClient *__waylandClient; DSBufferManager *__bufferManager; uint32_t __resId; + uint32_t __tizenResId; }; } /*namespace display_server */ -- 2.7.4 From f5b41c469d0b39fda6c7e86d7d5e96849751f760 Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 28 Aug 2020 17:44:06 +0900 Subject: [PATCH 06/16] DSWaylandSurface: add static __waylandSurfaceList list to manage waylandSurfaces Change-Id: I18f694ad2534894f7817130ec77306371c4ca6c5 Signed-off-by: Junkyeong Kim --- src/DSWaylandServer/DSWaylandSurface.cpp | 12 +++++++++--- src/DSWaylandServer/DSWaylandSurface.h | 2 ++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/src/DSWaylandServer/DSWaylandSurface.cpp b/src/DSWaylandServer/DSWaylandSurface.cpp index d007595..7df93e1 100644 --- a/src/DSWaylandServer/DSWaylandSurface.cpp +++ b/src/DSWaylandServer/DSWaylandSurface.cpp @@ -247,14 +247,20 @@ DS_WAYLAND_IMPL_FROM_RESOURCE(DSWaylandSurface); /* DSWaylandSurface */ DSWaylandSurface::DSWaylandSurface() : DS_INIT_PRIVATE_PTR(DSWaylandSurface) -{} +{ + __waylandSurfaceList.push_back(this); +} DSWaylandSurface::DSWaylandSurface(DSWaylandClient *waylandClient, uint32_t id) : _d_ptr(std::make_unique(this, waylandClient, id)) -{} +{ + __waylandSurfaceList.push_back(this); +} DSWaylandSurface::~DSWaylandSurface() -{} +{ + __waylandSurfaceList.remove(this); +} void DSWaylandSurface::registerCallbackSurfaceCommitted(DSObject *slot, std::function commitInfo)> func) { diff --git a/src/DSWaylandServer/DSWaylandSurface.h b/src/DSWaylandServer/DSWaylandSurface.h index e715fc7..7275a4f 100644 --- a/src/DSWaylandServer/DSWaylandSurface.h +++ b/src/DSWaylandServer/DSWaylandSurface.h @@ -75,6 +75,8 @@ private: DSSignal> __surfaceCommittedSignal; }; +static std::list __waylandSurfaceList; + } /* namespace display_server */ #endif /* _DS_WAYLAND_SURFACE_H_ */ -- 2.7.4 From f4fce9d036d5f4de0b2ffa40faf44d2b026e6365 Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 28 Aug 2020 17:45:34 +0900 Subject: [PATCH 07/16] DSWaylandTizenSurface: get resource id from DSWaylandSurface's __tizenResourceId Change-Id: I97c6abf78454edf48ee2e0f69e7e0e8ce7fb94b5 Signed-off-by: Junkyeong Kim --- src/DSWaylandServer/DSWaylandTizenSurface.cpp | 28 ++++++++++++++++++---- src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h | 2 +- 2 files changed, 25 insertions(+), 5 deletions(-) diff --git a/src/DSWaylandServer/DSWaylandTizenSurface.cpp b/src/DSWaylandServer/DSWaylandTizenSurface.cpp index 0a693cb..a698b2a 100644 --- a/src/DSWaylandServer/DSWaylandTizenSurface.cpp +++ b/src/DSWaylandServer/DSWaylandTizenSurface.cpp @@ -30,8 +30,7 @@ namespace display_server /* DSWaylandTizenSurface */ DSWaylandTizenSurfacePrivate::DSWaylandTizenSurfacePrivate(DSWaylandTizenSurface *p_ptr, DSWaylandCompositor *compositor) : DSObjectPrivate(p_ptr), - __p_ptr(p_ptr), - __resource_id_cnt(0) + __p_ptr(p_ptr) { if (!compositor) return; @@ -54,6 +53,8 @@ void DSWaylandTizenSurfacePrivate::tizen_surface_destroy_resource(Resource *reso void DSWaylandTizenSurfacePrivate::tizen_surface_get_tizen_resource(Resource *resource, uint32_t id, struct ::wl_resource *surface) { DSWaylandTizenResource *tizenResource = nullptr; + DSWaylandSurface *waylandSurface = nullptr; + uint32_t tizenResourceId = 0; for (DSWaylandTizenResource *temp : __resourceList) if (temp->getResourceSurface() == surface) return; @@ -65,8 +66,27 @@ void DSWaylandTizenSurfacePrivate::tizen_surface_get_tizen_resource(Resource *re return; } - __resource_id_cnt++; - tizenResource->setResourceId(__resource_id_cnt); + for (DSWaylandSurface *temp : __waylandSurfaceList) + { + if (temp->hasResource()) + { + if (temp->getWlResource() == surface) + { + waylandSurface = temp; + break; + } + } + } + + if (waylandSurface) + { + tizenResourceId = waylandSurface->getTizenResourceId(); + tizenResource->setResourceId(tizenResourceId); + } + else + { + DSLOG_ERR("DSWaylandTizenSurface", "fail get tizen resource id"); + } __resourceList.push_back(tizenResource); diff --git a/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h b/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h index 27ea899..e2e634d 100644 --- a/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h +++ b/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h @@ -26,6 +26,7 @@ #include "dswayland-server-tizen-extension.h" #include "DSWaylandTizenSurface.h" +#include "DSWaylandSurface.h" namespace display_server { @@ -73,7 +74,6 @@ protected: private: std::list __resourceList; - uint32_t __resource_id_cnt; //TO DO : have to manage more proper class }; } -- 2.7.4 From 943a1b57d1bbaf0b3a123e98ef8e0014ba1ab68e Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 28 Aug 2020 18:56:05 +0900 Subject: [PATCH 08/16] DSWaylandSurface: delete __waylandSurfaceList Change-Id: Icb5e735f961fcf32f92f3d3e836ec64e907ef01c Signed-off-by: Junkyeong Kim --- src/DSWaylandServer/DSWaylandSurface.cpp | 5 +---- src/DSWaylandServer/DSWaylandSurface.h | 2 -- 2 files changed, 1 insertion(+), 6 deletions(-) diff --git a/src/DSWaylandServer/DSWaylandSurface.cpp b/src/DSWaylandServer/DSWaylandSurface.cpp index 7df93e1..1eb9b2d 100644 --- a/src/DSWaylandServer/DSWaylandSurface.cpp +++ b/src/DSWaylandServer/DSWaylandSurface.cpp @@ -73,7 +73,7 @@ bool DSWaylandSurfaceCommitInfo::bufferChanged() } /* DSWaylandSurfacePrivate */ -static uint32_t tizenResIdCnt; +static uint32_t tizenResIdCnt = 0; DSWaylandSurfacePrivate::DSWaylandSurfacePrivate(DSWaylandSurface *p_ptr) : DSObjectPrivate(p_ptr), @@ -248,18 +248,15 @@ DS_WAYLAND_IMPL_FROM_RESOURCE(DSWaylandSurface); DSWaylandSurface::DSWaylandSurface() : DS_INIT_PRIVATE_PTR(DSWaylandSurface) { - __waylandSurfaceList.push_back(this); } DSWaylandSurface::DSWaylandSurface(DSWaylandClient *waylandClient, uint32_t id) : _d_ptr(std::make_unique(this, waylandClient, id)) { - __waylandSurfaceList.push_back(this); } DSWaylandSurface::~DSWaylandSurface() { - __waylandSurfaceList.remove(this); } void DSWaylandSurface::registerCallbackSurfaceCommitted(DSObject *slot, std::function commitInfo)> func) diff --git a/src/DSWaylandServer/DSWaylandSurface.h b/src/DSWaylandServer/DSWaylandSurface.h index 7275a4f..e715fc7 100644 --- a/src/DSWaylandServer/DSWaylandSurface.h +++ b/src/DSWaylandServer/DSWaylandSurface.h @@ -75,8 +75,6 @@ private: DSSignal> __surfaceCommittedSignal; }; -static std::list __waylandSurfaceList; - } /* namespace display_server */ #endif /* _DS_WAYLAND_SURFACE_H_ */ -- 2.7.4 From 45d219d122611012f1e3cb85ef9f88dc8937159d Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 28 Aug 2020 19:02:11 +0900 Subject: [PATCH 09/16] DSWaylandTizenSurface: get DSWaylandSurface from wlCompositor Change-Id: Iebcd050d29ff45606555ec6ff52094e238f4368f Signed-off-by: Junkyeong Kim --- src/DSWaylandServer/DSWaylandTizenSurface.cpp | 16 +++------------- src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h | 1 + 2 files changed, 4 insertions(+), 13 deletions(-) diff --git a/src/DSWaylandServer/DSWaylandTizenSurface.cpp b/src/DSWaylandServer/DSWaylandTizenSurface.cpp index a698b2a..9036bb9 100644 --- a/src/DSWaylandServer/DSWaylandTizenSurface.cpp +++ b/src/DSWaylandServer/DSWaylandTizenSurface.cpp @@ -30,7 +30,8 @@ namespace display_server /* DSWaylandTizenSurface */ DSWaylandTizenSurfacePrivate::DSWaylandTizenSurfacePrivate(DSWaylandTizenSurface *p_ptr, DSWaylandCompositor *compositor) : DSObjectPrivate(p_ptr), - __p_ptr(p_ptr) + __p_ptr(p_ptr), + __wlCompositor(compositor) { if (!compositor) return; @@ -66,18 +67,7 @@ void DSWaylandTizenSurfacePrivate::tizen_surface_get_tizen_resource(Resource *re return; } - for (DSWaylandSurface *temp : __waylandSurfaceList) - { - if (temp->hasResource()) - { - if (temp->getWlResource() == surface) - { - waylandSurface = temp; - break; - } - } - } - + waylandSurface = __wlCompositor->getSurface(id); if (waylandSurface) { tizenResourceId = waylandSurface->getTizenResourceId(); diff --git a/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h b/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h index e2e634d..9c7229b 100644 --- a/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h +++ b/src/DSWaylandServer/DSWaylandTizenSurfacePrivate.h @@ -74,6 +74,7 @@ protected: private: std::list __resourceList; + DSWaylandCompositor *__wlCompositor; }; } -- 2.7.4 From bdba05a7bc741ceefadc1b7a4aafe5069fa9bdc4 Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 28 Aug 2020 19:34:46 +0900 Subject: [PATCH 10/16] DSWaylandCompositor: add getSurface function by wl_resource Change-Id: Ia4003f15101bcd1261f927b6497ff54fc42132fc Signed-off-by: Junkyeong Kim --- src/DSWaylandServer/DSWaylandCompositor.cpp | 13 +++++++++++++ src/DSWaylandServer/DSWaylandCompositor.h | 2 ++ 2 files changed, 15 insertions(+) diff --git a/src/DSWaylandServer/DSWaylandCompositor.cpp b/src/DSWaylandServer/DSWaylandCompositor.cpp index f09ef05..438cfd2 100644 --- a/src/DSWaylandServer/DSWaylandCompositor.cpp +++ b/src/DSWaylandServer/DSWaylandCompositor.cpp @@ -519,6 +519,19 @@ DSWaylandSurface *DSWaylandCompositor::getSurface(uint32_t id) return nullptr; } +DSWaylandSurface *DSWaylandCompositor::getSurface(struct ::wl_resource *surface) +{ + for (auto s : __surfaceList) + { + if (s->getWlResource() == surface) + { + return s.get(); + } + } + + return nullptr; +} + void DSWaylandCompositor::sendSurfaceDestroy(DSWaylandSurface *dswSurface) { for (auto s : __surfaceList) diff --git a/src/DSWaylandServer/DSWaylandCompositor.h b/src/DSWaylandServer/DSWaylandCompositor.h index b350f48..6e89344 100644 --- a/src/DSWaylandServer/DSWaylandCompositor.h +++ b/src/DSWaylandServer/DSWaylandCompositor.h @@ -30,6 +30,7 @@ #include struct wl_display; +struct wl_resource; namespace display_server { @@ -68,6 +69,7 @@ public: IDSWaylandShell *getShell(void); DSWaylandSurface *getSurface(uint32_t id); + DSWaylandSurface *getSurface(struct ::wl_resource *surface); void sendSurfaceDestroy(DSWaylandSurface *dswSurface); void regionDestroy(DSWaylandRegion *dswRegion); -- 2.7.4 From cb59191511852cc92e93ea191063138ac9649dd9 Mon Sep 17 00:00:00 2001 From: Junkyeong Kim Date: Fri, 28 Aug 2020 19:35:57 +0900 Subject: [PATCH 11/16] DSWaylandTizenSurface: get DSWayalndSurface from wlCompositor by wl_resource Change-Id: I557bdbd4191f54027425fb09454a68bd9a6aa222 Signed-off-by: Junkyeong Kim --- src/DSWaylandServer/DSWaylandTizenSurface.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DSWaylandServer/DSWaylandTizenSurface.cpp b/src/DSWaylandServer/DSWaylandTizenSurface.cpp index 9036bb9..e430097 100644 --- a/src/DSWaylandServer/DSWaylandTizenSurface.cpp +++ b/src/DSWaylandServer/DSWaylandTizenSurface.cpp @@ -67,7 +67,7 @@ void DSWaylandTizenSurfacePrivate::tizen_surface_get_tizen_resource(Resource *re return; } - waylandSurface = __wlCompositor->getSurface(id); + waylandSurface = __wlCompositor->getSurface(surface); if (waylandSurface) { tizenResourceId = waylandSurface->getTizenResourceId(); -- 2.7.4 From 376d8fd8cc7fee5957e711e737ca1d667ec093a4 Mon Sep 17 00:00:00 2001 From: Doyoun Kang Date: Tue, 1 Sep 2020 10:41:47 +0900 Subject: [PATCH 12/16] Enable dlog by using LIBDS tag Change-Id: Ic85b5733e652628bbf006a09132bc5f4483fbe57 --- data/units/libds.env | 1 + 1 file changed, 1 insertion(+) diff --git a/data/units/libds.env b/data/units/libds.env index d4d820d..3c8c695 100644 --- a/data/units/libds.env +++ b/data/units/libds.env @@ -6,6 +6,7 @@ ECORE_EVAS_FORCE_SYNC_RENDER=1 ELM_PROFILE=mobile HOME=/var/lib/enlightenment EINA_LOG_DLOG_ENABLE=1 +DSLOG_DLOG_ENABLE=1 LIBINPUT_IGNORE_JOYSTICK=1 #E_INFO_RULE_FILE=/opt/rule/rule #E_INFO_TRACE_FILE=/tmp/trace -- 2.7.4 From 4608e8b45e4b35985e0b7f105480d89a5c708e5d Mon Sep 17 00:00:00 2001 From: "Junseok, Kim" Date: Tue, 1 Sep 2020 14:40:32 +0900 Subject: [PATCH 13/16] DSCore: add null check at fromWlResource Change-Id: Ic8fa6561d6245b877ecd784614df2b5178befca8 Signed-off-by: Junseok, Kim --- src/DSCore/DSCore.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/DSCore/DSCore.h b/src/DSCore/DSCore.h index 4ab573b..cacf7b7 100644 --- a/src/DSCore/DSCore.h +++ b/src/DSCore/DSCore.h @@ -86,7 +86,7 @@ Class *Class::fromWlResource(struct ::wl_resource *resource) \ { \ Class##Private* privat = __getPrivatePtrFromWlResource(resource); \ - return privat->p_func(); \ + return privat? privat->p_func() : nullptr; \ } #ifndef DS_ASSERT -- 2.7.4 From 6c139fdfd0f8d05c0ad9b1449f43a7b84c72d2d4 Mon Sep 17 00:00:00 2001 From: Sung-Jin Park Date: Tue, 1 Sep 2020 14:52:41 +0900 Subject: [PATCH 14/16] Packaging: disable libds-boot package Change-Id: I418fecd4cbaa93f47a1fbe7d115a5f52277816c6 Signed-off-by: Sung-Jin Park --- packaging/libds.spec | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/packaging/libds.spec b/packaging/libds.spec index 61324e1..31b2f12 100644 --- a/packaging/libds.spec +++ b/packaging/libds.spec @@ -93,12 +93,12 @@ ninja -C builddir install %define daemon_group display # install service -%__mkdir_p %{buildroot}%{_unitdir} -install -m 644 data/units/display-manager.service %{buildroot}%{_unitdir} +#%__mkdir_p %{buildroot}%{_unitdir} +#install -m 644 data/units/display-manager.service %{buildroot}%{_unitdir} # install env file for service -%__mkdir_p %{buildroot}%{_sysconfdir}/sysconfig -install -m 0644 data/units/libds.env %{buildroot}%{_sysconfdir}/sysconfig +#%__mkdir_p %{buildroot}%{_sysconfdir}/sysconfig +#install -m 0644 data/units/libds.env %{buildroot}%{_sysconfdir}/sysconfig #%pre # create groups 'display' @@ -132,5 +132,5 @@ install -m 0644 data/units/libds.env %{buildroot}%{_sysconfdir}/sysconfig %files boot %defattr(-,root,root,-) %license COPYING -%{_unitdir}/display-manager.service -%config %{_sysconfdir}/sysconfig/libds.env +#%{_unitdir}/display-manager.service +#%config %{_sysconfdir}/sysconfig/libds.env -- 2.7.4 From 60aad6e22c2d21b9d157eed4ef6631559edc718f Mon Sep 17 00:00:00 2001 From: Sung-Jin Park Date: Tue, 1 Sep 2020 12:58:26 +0900 Subject: [PATCH 15/16] DSWaylandServer: set LCOV_EXEC block(s) for unused classes Change-Id: I6a2830ccef0af5555480c4a1df371e6d7ebe420b Signed-off-by: Sung-Jin Park --- .../dswayland-server-tizen-extension.cpp | 50 +++++++++++++++------- .../dswayland-server-tizen-extension.h | 34 +++++++++++++++ 2 files changed, 68 insertions(+), 16 deletions(-) diff --git a/src/DSWaylandServer/dswayland-server-tizen-extension.cpp b/src/DSWaylandServer/dswayland-server-tizen-extension.cpp index 94a0000..3fa4a81 100644 --- a/src/DSWaylandServer/dswayland-server-tizen-extension.cpp +++ b/src/DSWaylandServer/dswayland-server-tizen-extension.cpp @@ -1970,7 +1970,7 @@ namespace DSWaylandServer { y); } - +/*LCOV_EXCL_START*/ tizen_move_resize::tizen_move_resize(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -2200,8 +2200,9 @@ namespace DSWaylandServer { h, error_state); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_gesture::tizen_gesture(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -2839,8 +2840,9 @@ namespace DSWaylandServer { active, error); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_keyrouter::tizen_keyrouter(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -3358,8 +3360,9 @@ namespace DSWaylandServer { key, mode); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_screenshooter::tizen_screenshooter(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -3606,8 +3609,9 @@ namespace DSWaylandServer { resource, noti); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_screenmirror::tizen_screenmirror(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -3917,8 +3921,9 @@ namespace DSWaylandServer { tizen_screenmirror_send_stop( resource); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_video::tizen_video(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -4147,8 +4152,9 @@ namespace DSWaylandServer { resource, format); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_video_object::tizen_video_object(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -4448,8 +4454,9 @@ namespace DSWaylandServer { max_h, prefer_align); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_subsurface_watcher::tizen_subsurface_watcher(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -4640,8 +4647,9 @@ namespace DSWaylandServer { resource, value); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_viewport::tizen_viewport(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -5010,8 +5018,9 @@ namespace DSWaylandServer { width, height); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_destination_mode::tizen_destination_mode(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -5310,7 +5319,9 @@ namespace DSWaylandServer { w, h); } +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ tizen_embedded_compositor::tizen_embedded_compositor(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -5516,7 +5527,7 @@ namespace DSWaylandServer { resource, sock_fd); } - +/*LCOV_EXCL_STOP*/ tizen_input_device_manager::tizen_input_device_manager(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() @@ -6236,7 +6247,7 @@ namespace DSWaylandServer { value); } - +/*LCOV_EXCL_START*/ tizen_launchscreen::tizen_launchscreen(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -6425,7 +6436,9 @@ namespace DSWaylandServer { static_cast(r->tizen_launchscreen_object)->tizen_launchscreen_destroy( r); } +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ tizen_launch_image::tizen_launch_image(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -6671,7 +6684,9 @@ namespace DSWaylandServer { static_cast(r->tizen_launch_image_object)->tizen_launch_image_hide( r); } +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ tizen_effect::tizen_effect(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -6886,8 +6901,9 @@ namespace DSWaylandServer { surface, type); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_display_policy::tizen_display_policy(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -7101,7 +7117,7 @@ namespace DSWaylandServer { brightness, error_state); } - +/*LCOV_EXCL_STOP*/ tizen_indicator::tizen_indicator(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() @@ -7353,7 +7369,7 @@ namespace DSWaylandServer { type); } - +/*LCOV_EXCL_START*/ tizen_clipboard::tizen_clipboard(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -7615,8 +7631,9 @@ namespace DSWaylandServer { resource, allowed); } +/*LCOV_EXCL_STOP*/ - +/*LCOV_EXCL_START*/ tizen_screen_rotation::tizen_screen_rotation(struct ::wl_client *client, uint32_t id, int version) : m_resource_map() , m_resource(NULL) @@ -7828,4 +7845,5 @@ namespace DSWaylandServer { } } +/*LCOV_EXCL_STOP*/ diff --git a/src/DSWaylandServer/dswayland-server-tizen-extension.h b/src/DSWaylandServer/dswayland-server-tizen-extension.h index 6b092ea..b4b0900 100644 --- a/src/DSWaylandServer/dswayland-server-tizen-extension.h +++ b/src/DSWaylandServer/dswayland-server-tizen-extension.h @@ -744,6 +744,7 @@ namespace DSWaylandServer { DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_START*/ class tizen_move_resize { public: @@ -843,7 +844,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_gesture { public: @@ -1055,7 +1058,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_keyrouter { public: @@ -1235,7 +1240,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_screenshooter { public: @@ -1332,7 +1339,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_screenmirror { public: @@ -1453,7 +1462,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_video { public: @@ -1555,7 +1566,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_video_object { public: @@ -1663,7 +1676,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_subsurface_watcher { public: @@ -1753,7 +1768,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_viewport { public: @@ -1885,7 +1902,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_destination_mode { public: @@ -2018,7 +2037,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_embedded_compositor { public: @@ -2106,6 +2127,7 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ class tizen_input_device_manager { @@ -2408,6 +2430,7 @@ namespace DSWaylandServer { DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_START*/ class tizen_launchscreen { public: @@ -2493,7 +2516,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_launch_image { public: @@ -2614,7 +2639,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_effect { public: @@ -2707,7 +2734,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_display_policy { public: @@ -2802,6 +2831,7 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ class tizen_indicator { @@ -2924,6 +2954,7 @@ namespace DSWaylandServer { DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_START*/ class tizen_clipboard { public: @@ -3024,7 +3055,9 @@ namespace DSWaylandServer { }; DisplayDestroyedListener m_displayDestroyedListener; }; +/*LCOV_EXCL_STOP*/ +/*LCOV_EXCL_START*/ class tizen_screen_rotation { public: @@ -3114,5 +3147,6 @@ namespace DSWaylandServer { DisplayDestroyedListener m_displayDestroyedListener; }; } +/*LCOV_EXCL_STOP*/ #endif -- 2.7.4 From 51ed771e73d2a05548586aa6c5f9c9734194a0ab Mon Sep 17 00:00:00 2001 From: jeon Date: Tue, 1 Sep 2020 17:30:49 +0900 Subject: [PATCH 16/16] DSTextInput: set LOCV_EXEC block for DSTextInput Private methods Change-Id: Idaa6014cc8a24e5ae964fcda4d5d2b8aa613aded --- src/DSTextInput/DSTextInput.cpp | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/DSTextInput/DSTextInput.cpp b/src/DSTextInput/DSTextInput.cpp index 9f61c9a..f97dcaa 100644 --- a/src/DSTextInput/DSTextInput.cpp +++ b/src/DSTextInput/DSTextInput.cpp @@ -48,7 +48,7 @@ DSTextInputPrivate::~DSTextInputPrivate() delete __wlInputMethod; DSWaylandCompositor::releaseInstance(); } - +/*LCOV_EXCL_START*/ void DSTextInputPrivate::setInputPanelState(InputPanelState state) { __inputPanelState = state; @@ -309,7 +309,7 @@ stGeometry DSTextInputPrivate::inputPanelGetGeometry(DSWaylandSurface *window) { return __wlInputPanel->getSurfaceGeometry(window); } - +/*LCOV_EXCL_STOP*/ DSTextInput::DSTextInput() : DS_INIT_PRIVATE_PTR(DSTextInput) -- 2.7.4