Commit e1849ee1 by Jamie Madill Committed by Commit Bot

Remove obsolete WinRT files.

These were no longer used in the build. Bug: angleproject:3162 Change-Id: I715bb3e6f14ed8c97523dec5b0b58bf9a89be0f0 Reviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1660716Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org> Commit-Queue: Jamie Madill <jmadill@chromium.org>
parent 67d8b6f6
......@@ -40,16 +40,6 @@ util_win_sources = [
util_win_shared_sources = [ "util/windows/WGLWindow.cpp" ]
util_winrt_sources = [
"util/windows/winrt/WinRT_system_utils.cpp",
"util/windows/winrt/WinRTPixmap.cpp",
"util/windows/winrt/WinRTWindow.cpp",
"util/windows/winrt/WinRTWindow.h",
"util/windows/Windows_system_utils.cpp",
"util/windows/WindowsTimer.cpp",
"util/windows/WindowsTimer.h",
]
util_posix_sources = [
"util/posix/PosixTimer.cpp",
"util/posix/PosixTimer.h",
......
//
// Copyright (c) 2015 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// WinRTPixmap.cpp: Stub implementation of OSPixmap functions for WinRT (Windows)
#include "OSPixmap.h"
#include "common/debug.h"
OSPixmap *CreateOSPixmap()
{
UNIMPLEMENTED();
return nullptr;
}
\ No newline at end of file
//
// Copyright (c) 2015 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// WinRTWindow.cpp: Implementation of OSWindow for WinRT (Windows)
#include "windows/winrt/WinRTWindow.h"
#include <windows.applicationmodel.core.h>
#include <windows.ui.xaml.h>
#include <wrl.h>
#include "angle_windowsstore.h"
#include "common/debug.h"
using namespace ABI::Windows::ApplicationModel::Core;
using namespace ABI::Windows::Foundation;
using namespace ABI::Windows::Foundation::Collections;
using namespace ABI::Windows::UI::Core;
using namespace Microsoft::WRL;
using namespace Microsoft::WRL::Wrappers;
WinRTWindow::WinRTWindow() : mNativeWindow(nullptr) {}
WinRTWindow::~WinRTWindow()
{
destroy();
}
bool WinRTWindow::initialize(const std::string &name, size_t width, size_t height)
{
ComPtr<ICoreWindowStatic> coreWindowStatic;
ComPtr<IActivationFactory> propertySetFactory;
ComPtr<IPropertyValueStatics> propertyValueStatics;
ComPtr<ICoreApplication> coreApplication;
ComPtr<IPropertySet> coreApplicationProperties;
ComPtr<IMap<HSTRING, IInspectable *>> coreApplicationPropertiesAsMap;
ComPtr<IMap<HSTRING, IInspectable *>> nativeWindowAsMap;
ComPtr<IInspectable> sizeValue;
HRESULT result = S_OK;
boolean propertyReplaced = false;
destroy();
// Get all the relevant activation factories
result = GetActivationFactory(HStringReference(RuntimeClass_Windows_UI_Core_CoreWindow).Get(),
&coreWindowStatic);
if (FAILED(result))
{
return false;
}
result = GetActivationFactory(
HStringReference(RuntimeClass_Windows_Foundation_Collections_PropertySet).Get(),
&propertySetFactory);
if (FAILED(result))
{
return false;
}
result =
GetActivationFactory(HStringReference(RuntimeClass_Windows_Foundation_PropertyValue).Get(),
&propertyValueStatics);
if (FAILED(result))
{
return false;
}
result = GetActivationFactory(
HStringReference(RuntimeClass_Windows_ApplicationModel_Core_CoreApplication).Get(),
&coreApplication);
if (FAILED(result))
{
return false;
}
// Create a PropertySet to be used as the native window
result = propertySetFactory->ActivateInstance(&mNativeWindow);
if (FAILED(result))
{
return false;
}
// Get the PropertySet as a map, so we can Insert things into it later
ComPtr<IInspectable> tempNativeWindow = mNativeWindow;
result = tempNativeWindow.As(&nativeWindowAsMap);
if (FAILED(result))
{
return false;
}
// Get the CoreApplication properties
result = coreApplication->get_Properties(coreApplicationProperties.GetAddressOf());
if (FAILED(result))
{
return false;
}
// Get the CoreApplication properties as a map
result = coreApplicationProperties.As(&coreApplicationPropertiesAsMap);
if (FAILED(result))
{
return false;
}
// See if the application properties contain an EGLNativeWindowTypeProperty
boolean hasEGLNativeWindowTypeProperty;
result = coreApplicationPropertiesAsMap->HasKey(
HStringReference(EGLNativeWindowTypeProperty).Get(), &hasEGLNativeWindowTypeProperty);
if (FAILED(result))
{
return false;
}
// If an EGLNativeWindowTypeProperty is inputted then use it
if (hasEGLNativeWindowTypeProperty)
{
ComPtr<IInspectable> coreApplicationPropertyNativeWindow;
result = coreApplicationPropertiesAsMap->Lookup(
HStringReference(EGLNativeWindowTypeProperty).Get(),
&coreApplicationPropertyNativeWindow);
if (FAILED(result))
{
return false;
}
// See if the inputted window was a CoreWindow
ComPtr<ICoreWindow> applicationPropertyCoreWindow;
if (SUCCEEDED(coreApplicationPropertyNativeWindow.As(&applicationPropertyCoreWindow)))
{
// Store away the CoreWindow's dispatcher, to be used later to process messages
result = applicationPropertyCoreWindow->get_Dispatcher(&mCoreDispatcher);
if (FAILED(result))
{
return false;
}
}
else
{
ComPtr<IPropertySet> propSet;
// Disallow Property Sets here, since we want to wrap this window in
// a property set with the size property below
if (SUCCEEDED(coreApplicationPropertyNativeWindow.As(&propSet)))
{
return false;
}
}
// Add the window to the map
result =
nativeWindowAsMap->Insert(HStringReference(EGLNativeWindowTypeProperty).Get(),
coreApplicationPropertyNativeWindow.Get(), &propertyReplaced);
if (FAILED(result))
{
return false;
}
}
else
{
ComPtr<ICoreWindow> currentThreadCoreWindow;
// Get the CoreWindow for the current thread
result = coreWindowStatic->GetForCurrentThread(&currentThreadCoreWindow);
if (FAILED(result))
{
return false;
}
// By default, just add this thread's CoreWindow to the PropertySet
result = nativeWindowAsMap->Insert(HStringReference(EGLNativeWindowTypeProperty).Get(),
currentThreadCoreWindow.Get(), &propertyReplaced);
if (FAILED(result))
{
return false;
}
// Store away the CoreWindow's dispatcher, to be used later to process messages
result = currentThreadCoreWindow->get_Dispatcher(&mCoreDispatcher);
if (FAILED(result))
{
return false;
}
}
// Create a Size to represent the Native Window's size
Size renderSize;
renderSize.Width = static_cast<float>(width);
renderSize.Height = static_cast<float>(height);
result = propertyValueStatics->CreateSize(renderSize, sizeValue.GetAddressOf());
if (FAILED(result))
{
return false;
}
// Add the Size to the PropertySet
result = nativeWindowAsMap->Insert(HStringReference(EGLRenderSurfaceSizeProperty).Get(),
sizeValue.Get(), &propertyReplaced);
if (FAILED(result))
{
return false;
}
return true;
};
void WinRTWindow::destroy()
{
SafeRelease(mNativeWindow);
mCoreDispatcher.Reset();
}
void WinRTWindow::resetNativeWindow() {}
EGLNativeWindowType WinRTWindow::getNativeWindow() const
{
return mNativeWindow;
}
EGLNativeDisplayType WinRTWindow::getNativeDisplay() const
{
UNIMPLEMENTED();
return static_cast<EGLNativeDisplayType>(0);
}
void WinRTWindow::messageLoop()
{
// If we have a CoreDispatcher then use it to process events
if (mCoreDispatcher)
{
HRESULT result =
mCoreDispatcher->ProcessEvents(CoreProcessEventsOption_ProcessAllIfPresent);
UNUSED_ASSERTION_VARIABLE(result);
ASSERT(SUCCEEDED(result));
}
}
void WinRTWindow::setMousePosition(int /* x */, int /* y */)
{
UNIMPLEMENTED();
}
bool WinRTWindow::setPosition(int /* x */, int /* y */)
{
UNIMPLEMENTED();
return false;
}
bool WinRTWindow::resize(int /* width */, int /* height */)
{
UNIMPLEMENTED();
return false;
}
void WinRTWindow::setVisible(bool isVisible)
{
if (isVisible)
{
// Already visible by default
return;
}
else
{
// Not implemented in WinRT
UNIMPLEMENTED();
}
}
void WinRTWindow::signalTestEvent()
{
UNIMPLEMENTED();
}
OSWindow *OSWindow::New()
{
return new WinRTWindow();
}
\ No newline at end of file
//
// Copyright (c) 2015 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// WinRTWindow.h: Definition of the implementation of OSWindow for WinRT (Windows)
#ifndef UTIL_WINRT_WINDOW_H
#define UTIL_WINRT_WINDOW_H
#include <string>
#include <windows.h>
#include <windows.applicationmodel.core.h>
#include <wrl.h>
#include "OSWindow.h"
class WinRTWindow : public OSWindow
{
public:
WinRTWindow();
~WinRTWindow() override;
bool initialize(const std::string &name, size_t width, size_t height) override;
void destroy() override;
void resetNativeWindow() override;
EGLNativeWindowType getNativeWindow() const override;
EGLNativeDisplayType getNativeDisplay() const override;
void messageLoop() override;
void setMousePosition(int x, int y) override;
bool setPosition(int x, int y) override;
bool resize(int width, int height) override;
void setVisible(bool isVisible) override;
void signalTestEvent() override;
private:
EGLNativeWindowType mNativeWindow;
Microsoft::WRL::ComPtr<ABI::Windows::UI::Core::ICoreDispatcher> mCoreDispatcher;
};
#endif // UTIL_WINRT_WINDOW_H
//
// Copyright (c) 2015 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// WinRT_system_utils.cpp: Implementation of OS-specific functions for WinRT (Windows)
#include "system_utils.h"
#include <windows.h>
#include <array>
namespace angle
{
void SetLowPriorityProcess()
{
// No equivalent to this in WinRT
}
bool StabilizeCPUForBenchmarking()
{
// No equivalent to this in WinRT
return true;
}
} // namespace angle
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment