2 * Copyright (c) 2018 Samsung Electronics Co., Ltd.
\r
4 * Licensed under the Apache License, Version 2.0 (the "License");
\r
5 * you may not use this file except in compliance with the License.
\r
6 * You may obtain a copy of the License at
\r
8 * http://www.apache.org/licenses/LICENSE-2.0
\r
10 * Unless required by applicable law or agreed to in writing, software
\r
11 * distributed under the License is distributed on an "AS IS" BASIS,
\r
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
13 * See the License for the specific language governing permissions and
\r
14 * limitations under the License.
\r
19 #include <dali/internal/window-system/windows/display-connection-impl-win.h>
\r
22 #include <dali/integration-api/debug.h>
\r
25 #include <dali/internal/window-system/windows/pixmap-render-surface-win.h>
\r
36 DisplayConnection* DisplayConnectionWin::New()
\r
38 DisplayConnection* pDisplayConnection(new DisplayConnectionWin());
\r
40 return pDisplayConnection;
\r
43 DisplayConnectionWin::DisplayConnectionWin()
\r
48 DisplayConnectionWin::~DisplayConnectionWin()
\r
52 //XCloseDisplay(mDisplay);
\r
56 Any DisplayConnectionWin::GetDisplay()
\r
58 return Any(mDisplay);
\r
61 void DisplayConnectionWin::ConsumeEvents()
\r
63 // check events so that we can flush the queue and avoid any potential memory leaks in X
\r
64 // looping if events remain
\r
68 // Check if there are any events in the queue
\r
69 //events = XEventsQueued(mDisplay, QueuedAfterFlush);
\r
73 // // Just flush event to prevent memory leak from event queue as the events get built up in
\r
74 // // memory but are only deleted when we retrieve them
\r
76 // XNextEvent(mDisplay, &ev);
\r
82 bool DisplayConnectionWin::InitializeEgl(EglInterface& egl)
\r
84 EglImplementation& eglImpl = static_cast<EglImplementation&>( egl );
\r
86 if( !eglImpl.InitializeGles( reinterpret_cast<EGLNativeDisplayType>( mDisplay ) ) )
\r
88 DALI_LOG_ERROR( "Failed to initialize GLES.\n" );
\r
95 void DisplayConnectionWin::SetSurfaceType( RenderSurface::Type type )
\r
97 if( type == RenderSurface::WINDOW_RENDER_SURFACE )
\r
99 mDisplay = GetDC( GetForegroundWindow() );
\r
103 } // namespace Adaptor
\r
105 } // namespace Internal
\r
107 } // namespace Dali
\r