Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Adding GazeIntegration #2026

Merged
merged 171 commits into from
Apr 30, 2018
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
171 commits
Select commit Hold shift + click to select a range
0693461
Initial checkin for integrating gaze libraries
harishsk Apr 9, 2018
819cbc5
Integrated updated API definition code
harishsk Apr 10, 2018
bc5d959
Integrated updated API definition code
Apr 10, 2018
d8188e2
Fix build break by building the Gaze API
Apr 10, 2018
7f5d2b8
Fixed tracing offset bug
harishsk Apr 11, 2018
96aa38d
Merge branch 'harishsk/gaze-integration' of ssh://github.com/Microsof…
harishsk Apr 11, 2018
687f453
/gaze-integration: Auto stash before merge of "harishsk/gaze-integrat…
Apr 11, 2018
38f41b8
Attempt to get GazePointer to shutdown sweetly. Fighting other issues…
peteams Apr 11, 2018
e176215
Better reported time of state events, and reported them both to the p…
peteams Apr 12, 2018
e70aafc
Unsuccessful attempt to get xaml binding and DataContext working
harishsk Apr 13, 2018
c2ad6c0
gaze interaction sample supports bind
nmetulev Apr 13, 2018
8b87907
Removed test code from previous merge
harishsk Apr 13, 2018
e664c12
Merge branch 'master' into harishsk/gaze-integration
Apr 13, 2018
a76b6b2
Merge branch 'harishsk/gaze-integration' into petea/gaze-progression
Apr 13, 2018
17807c9
Removed GazePage item.
Apr 13, 2018
6920b3f
Exposed cursor radius to XAML.
Apr 13, 2018
15beb5d
Shattered GazePointer.h and some of GazePointer.cpp into individual c…
peteams Apr 14, 2018
cf57f60
Temporarily added GazeInputTest into toolkit for quick testing.
Apr 14, 2018
395efd6
Adopted suggested invoke pattern (TODO: Flatten logic)
Apr 15, 2018
422d220
Added note to say that GazeTargetItems should be responsible for Invo…
Apr 15, 2018
96073d2
Merge branch 'master' into harishsk/gaze-integration
Apr 16, 2018
24bd021
First attempt to wire up a gazepointer test page
DLamb-MagicLeap Apr 16, 2018
a6aec37
Oops! Invoke logic should take place against peer, not control!
Apr 16, 2018
9805694
Revert "Oops! Invoke logic should take place against peer, not control!"
Apr 16, 2018
af06612
Invoke against peer not control!
Apr 16, 2018
b6b137b
Added temporary button press states as feedback.
Apr 16, 2018
2010790
Merge pull request #1979 from Microsoft/petea/gaze-progression
harishsk Apr 16, 2018
4d6d644
Button binding attempt
DLamb-MagicLeap Apr 16, 2018
e355360
Merge remote-tracking branch 'origin/harishsk/gaze-integration' into …
DLamb-MagicLeap Apr 16, 2018
75423a7
Merge branch 'master' into harishsk/gaze-integration
Apr 16, 2018
454acd6
Added progress states as start of feedback.
Apr 16, 2018
3727866
Fixed setting of cursor radius.
Apr 16, 2018
3512ef2
Fixed DependencyProperty::RegisterAttached calls to pass ownerType as…
Apr 17, 2018
b99f583
First pass at popup feedback animation. Currently animating on Page a…
Apr 17, 2018
c368b81
Guarded Page items from drawing inappropriate feedback.
Apr 17, 2018
bb52c16
Update Gaze Tracing page to add various visuals
Apr 17, 2018
1d77268
Added initial version of documentation
harishsk Apr 18, 2018
ceb236a
fixed merge conflict
nmetulev Apr 18, 2018
cfca49b
Fixed cursor centring.
Apr 18, 2018
5c6bdc4
added nuspec and Native configuration
nmetulev Apr 18, 2018
880a174
Merge pull request #1985 from Microsoft/petea/gaze-progression
harishsk Apr 18, 2018
0c61075
Fixes for gaze docs
Apr 18, 2018
a099675
Minor fixes for markdown compliance
Apr 18, 2018
f49ecc1
Add link to sources in doc
Apr 18, 2018
f4b797f
Remove textbox and extra grid rows
Apr 18, 2018
f1762dc
Merge branch 'harishsk/gaze-integration' into DwayneUWPCTKSandbox
DLamb-MagicLeap Apr 18, 2018
0ff4863
Made events follow usual pattern of having an object sender as the fi…
Apr 18, 2018
bc95ed0
Removed previous custom invoke mechanism in preparation for introduci…
Apr 18, 2018
66bedeb
One sizable button that displays eye control states and lets the deve…
DLamb-MagicLeap Apr 18, 2018
c1eb15f
Made unset TimeSpan value less magic and improved search logic. (TODO…
Apr 18, 2018
0885c9a
Guarded against drawing wacky progress values.
Apr 18, 2018
b8470fc
Merge pull request #1986 from Microsoft/petea/gaze-progression
harishsk Apr 18, 2018
6583fcc
Made time int64 and cleaned some truncations.
Apr 18, 2018
bf7f8db
Merge pull request #1987 from Microsoft/petea/gaze-progression
harishsk Apr 18, 2018
8b07fd6
Merge pull request #1988 from Microsoft/harishsk/gaze-integration
harishsk Apr 18, 2018
9659f38
Only show cursor when gaze has entered view.
Apr 19, 2018
8f5bc5b
Merge pull request #1989 from Microsoft/petea/gaze-progression
harishsk Apr 19, 2018
0a96b5f
Updated project file with GazePointerPropertiesPage
harishsk Apr 19, 2018
cc451d9
Merge pull request #1990 from Microsoft/DwayneUWPCTKSandbox
harishsk Apr 19, 2018
40941d2
Merge branch 'master' into harishsk/gaze-integration
harishsk Apr 19, 2018
e49df78
Working with tonnes of extra debugging stuff.
peteams Apr 19, 2018
c1bf4a3
Removed some of the more paranoid and noisy trace stuff.
Apr 19, 2018
e3d740b
Merge branch 'master' into harishsk/gaze-integration
nmetulev Apr 20, 2018
b10df81
Removed test code from GazeApi (will reappear in functional form shor…
Apr 20, 2018
fe5820e
Removed more debug code.
Apr 20, 2018
d7b2bdf
Add formatted timeline to show a visualization of the relationship be…
DLamb-MagicLeap Apr 20, 2018
c6214d6
Merge pull request #1995 from Microsoft/petea/multigaze
harishsk Apr 20, 2018
c7b4d30
Merge pull request #1996 from Microsoft/DwayneUWPCTKSandbox
harishsk Apr 20, 2018
b6db4aa
Fixed cursor offset bug
harishsk Apr 20, 2018
920d191
Updated icon concept images
DLamb-MagicLeap Apr 20, 2018
40ff3cc
Merge pull request #1997 from Microsoft/DwayneUWPCTKSandbox
harishsk Apr 20, 2018
43c1a85
Merge pull request #1998 from Microsoft/harishsk/gaze-integration
harishsk Apr 20, 2018
ef1de02
First pass implementation of GazePointer lifespan controlled by IsGaz…
Apr 21, 2018
a32902b
Replaced GazeInteractionPage with the contents of the GazePointerPage…
DLamb-MagicLeap Apr 21, 2018
134dc15
Merge pull request #2000 from Microsoft/DwayneUWPCTKSandbox
harishsk Apr 21, 2018
86727e8
Marked gaze cursor as invisible to hit test
harishsk Apr 21, 2018
9c73cec
Speculative implementation of gaze idsablement.
Apr 21, 2018
d47e73e
Changed ISGazeEnabled from bool to enum Enabled/Disabled/Inherited so…
peteams Apr 21, 2018
2559860
Performed complete search for gaze enabled/disabled indicator when hi…
peteams Apr 21, 2018
35450c4
Set IsGazeEntered true when we receive and message, because we must h…
peteams Apr 21, 2018
ffaa712
First attempt to allow repetition to continue beyond constraint of qu…
Apr 21, 2018
09317e2
First outline of adding progress animation override.
Apr 21, 2018
ba7fef8
Merged from parent.
peteams Apr 21, 2018
dcba426
Merge pull request #2001 from Microsoft/petea/gaze-progression
harishsk Apr 21, 2018
cfdcd5c
Removed unused properties.
peteams Apr 21, 2018
2e6dd15
Added demonstration of cutom gaze progress feedback.
peteams Apr 21, 2018
6f22f89
Chanhes to cache invoke mechanism inside GazeTargetItem.
peteams Apr 23, 2018
81416fd
Moved brushes used for gaze feedback to be publicly accessible from G…
Apr 23, 2018
3637d40
Merge pull request #2002 from Microsoft/petea/gaze-progression
harishsk Apr 23, 2018
cf68870
Add header, fix compiler warnings
Apr 23, 2018
96c4eda
Merge remote-tracking branch 'origin/harishsk/gaze-integration' into …
Apr 23, 2018
225a47a
Merge branch 'petea/gaze-progression' into petea/invoker
Apr 23, 2018
062d802
Rename in progress
harishsk Apr 23, 2018
fdd4cd2
Fixed buttons, hit by arrow pattern problem!
Apr 23, 2018
7167523
Merge pull request #2005 from Microsoft/petea/invoker
peteams Apr 23, 2018
7c5595a
Merge branch 'harishsk/api-rename' into harishsk/gaze-integration
harishsk Apr 23, 2018
968ff49
Converted various microsecond representations of time passing into Ti…
Apr 23, 2018
0217e88
Merge branch 'master' into harishsk/gaze-integration
Apr 23, 2018
2e9cb44
fix complier warning
Apr 23, 2018
d029277
Merge pull request #2007 from Microsoft/petea/timespan2
peteams Apr 24, 2018
c94a993
Fixed merge issues
harishsk Apr 24, 2018
f8c88dd
Merge branch 'harishsk/gaze-integration' of ssh://github.com/Microsof…
harishsk Apr 24, 2018
77ad663
Merge pull request #2008 from Microsoft/harishsk/api-rename
peteams Apr 24, 2018
9dcc55a
Collapsed Enter and Exit delays into a single Threshold value.
Apr 24, 2018
eadc2e3
Renamed GazePointerState to PointerState and MaxRepeatCount to MaxDwe…
harishsk Apr 24, 2018
f26f98e
Merge branch 'harishsk/gaze-integration' into harishsk/api-rename
harishsk Apr 24, 2018
069d4ff
Merge pull request #2010 from Microsoft/harishsk/api-rename
harishsk Apr 24, 2018
2199fb0
Update GazeInputTest to use newer WindowsSDK
Apr 24, 2018
2172605
Renamed Fixation, Dwell, etc, to be FixationDuration, DwellDuration, …
harishsk Apr 24, 2018
8d1e395
Made timings relative, reinterpreted DwellRepeat as inter-repeat time…
Apr 24, 2018
01e80cd
Update nuspec for naming changes, update targeting to updated Windows…
Apr 24, 2018
36a4a97
Merge pull request #2011 from Microsoft/harishsk/api-rename
peteams Apr 24, 2018
0df0d1d
Merged name changes
Apr 24, 2018
95035bd
Removed debug code.
Apr 24, 2018
58b891f
Merge remote-tracking branch 'origin/harishsk/gaze-integration' into …
Apr 24, 2018
cf25d7f
Merge pull request #2014 from Microsoft/petea/relativity
harishsk Apr 24, 2018
a196acb
Merge remote-tracking branch 'origin/harishsk/gaze-integration' into …
Apr 24, 2018
bdf6c1d
rollback sdk version
Apr 24, 2018
b7c15d6
Renamed GazePointerEventArgs to StateChangedEventArgs and GazeEventAr…
harishsk Apr 24, 2018
fe3a772
Fixed rename error
harishsk Apr 24, 2018
51140d7
Merge pull request #2015 from Microsoft/harishsk/api-rename
harishsk Apr 24, 2018
be9eb24
Added code to detect presence of a eye tracker.
Apr 25, 2018
7afe9d1
Fixed naming of device detection names and added sample use to stand-…
peteams Apr 25, 2018
e00b520
Deleted unwanted spaces.
peteams Apr 25, 2018
4e1c359
Merge pull request #2016 from Microsoft/petea/sniffer
harishsk Apr 25, 2018
6d40904
Updated documentation
harishsk Apr 25, 2018
19173eb
Merge pull request #2019 from Microsoft/harishsk/gaze-integration
DLamb-MagicLeap Apr 25, 2018
4820538
Update .vsts-ci.yml
nmetulev Apr 25, 2018
6d192bb
Renamed GazeInvokedRoutedEventsArgs to DwellInvokedRoutedEventArgs, G…
harishsk Apr 25, 2018
9376e57
Merge pull request #2020 from Microsoft/harishsk/api-rename
harishsk Apr 25, 2018
ebf095e
More renames and doc updates
harishsk Apr 25, 2018
d229d38
Merge pull request #2021 from Microsoft/harishsk/api-rename
harishsk Apr 25, 2018
843cee4
Used correct property to pick up delay for repeating from.
Apr 25, 2018
c17b00e
Report progress as double 0..1ish rather than component times.
Apr 25, 2018
dcdce14
Merge pull request #2023 from Microsoft/petea/fixes
peteams Apr 25, 2018
84285a8
Merge pull request #2024 from Microsoft/harishsk/gaze-integration
DLamb-MagicLeap Apr 25, 2018
acadb37
Corrected binding issues and cleaned up GazeInteraction files
DLamb-MagicLeap Apr 25, 2018
b805bf8
Merge pull request #2025 from Microsoft/DwayneUWPCTKSandbox
harishsk Apr 25, 2018
c470df6
Updated docs
harishsk Apr 26, 2018
91e7973
Update .vsts-ci.yml
nmetulev Apr 26, 2018
86e2023
Renamed GazeEnablement to Interaction. Added code file to GazeTracing…
harishsk Apr 27, 2018
e5d6c32
Merge branch 'harishsk/gaze-integration' of ssh://github.com/Microsof…
harishsk Apr 27, 2018
d170695
Merge branch 'rel/3.0.0-preview' into harishsk/gaze-integration
harishsk Apr 27, 2018
a391672
Fixed sdk version and updated documentation
harishsk Apr 27, 2018
7d10b98
Merge branch 'harishsk/gaze-integration' of ssh://github.com/Microsof…
harishsk Apr 27, 2018
3855d9a
Merge branch 'rel/3.0.0-preview' into harishsk/gaze-integration
harishsk Apr 27, 2018
9ed2c23
Merge branch 'rel/3.0.0-preview' into harishsk/gaze-integration
nmetulev Apr 27, 2018
6398c75
fixed projectreference in sampleapp.csproj
nmetulev Apr 27, 2018
e8f45cd
updated gaze project to 17134
nmetulev Apr 27, 2018
9160f7d
Hid and protected some internals.
Apr 27, 2018
c8051ed
updated vsts yml
nmetulev Apr 27, 2018
b14f3ad
Improved private/public marking and added <summary> tags to all publi…
Apr 27, 2018
5d04b02
Fixed tabs to spaces
harishsk Apr 27, 2018
11410ff
Merge pull request #2030 from Microsoft/harishsk/gaze-integration
DLamb-MagicLeap Apr 27, 2018
4d83654
Merge branch 'harishsk/gaze-integration' into petea/cleanup
harishsk Apr 27, 2018
541f260
Merge pull request #2028 from Microsoft/petea/cleanup
harishsk Apr 27, 2018
a1a114d
Slimmed down header files.
Apr 27, 2018
a692af2
Merge branch 'petea/cleanup' of https://github.com/Microsoft/UWPCommu…
Apr 27, 2018
2c54072
Merge pull request #2031 from Microsoft/petea/cleanup
harishsk Apr 27, 2018
daa1d5b
Deleted HitTarget from StateChangedEventArgs. Updated many summary ta…
harishsk Apr 27, 2018
8c5f955
Added warning for user to ask them to connect device tracker
DLamb-MagicLeap Apr 27, 2018
ba94dae
Updated more summary tags in GazeInput.h
harishsk Apr 27, 2018
80bbc19
Merge pull request #2032 from Microsoft/DwayneUWPCTKSandbox
harishsk Apr 27, 2018
feb72bd
Completed adding documentation comments to public declarations.
Apr 27, 2018
02ac02c
Witespace changes to quiet intellisense
Apr 27, 2018
59b20b0
Trimmed top of .cpp files, or removed them if they were empty.
Apr 27, 2018
0076e67
Merge branch 'harishsk/gaze-integration' of https://github.com/Micros…
Apr 27, 2018
7731ad8
Add directive to quiet warnings
Apr 27, 2018
5486e89
Merge remote-tracking branch 'origin/harishsk/gaze-integration' into …
Apr 27, 2018
f823ee6
updated gaze nuspec and targets to target 17134
nmetulev Apr 30, 2018
d464b19
Addressed review comments: Changed filter related classes to private …
harishsk Apr 30, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .vsts-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ variables:
steps:
- task: BatchScript@1
inputs:
filename: "C:\\Program Files (x86)\\Microsoft Visual Studio\\Preview\\Enterprise\\Common7\\Tools\\VsDevCmd.bat"
filename: "C:\\Program Files (x86)\\Microsoft Visual Studio\\2017\\Community\\Common7\\Tools\\VsDevCmd.bat"
arguments: -no_logo
modifyEnvironment: true
displayName: Setup Environment Variables
Expand Down
8 changes: 8 additions & 0 deletions GazeInputTest/App.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<Application
x:Class="GazeInputTest.App"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:GazeInputTest"
RequestedTheme="Light">

</Application>
102 changes: 102 additions & 0 deletions GazeInputTest/App.xaml.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
// ******************************************************************
// Copyright (c) Microsoft. All rights reserved.
// This code is licensed under the MIT License (MIT).
// THE CODE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
// INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
// IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM,
// DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
// TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH
// THE CODE OR THE USE OR OTHER DEALINGS IN THE CODE.
// ******************************************************************

using System;
using Windows.ApplicationModel;
using Windows.ApplicationModel.Activation;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Navigation;

namespace GazeInputTest
{
/// <summary>
/// Provides application-specific behavior to supplement the default Application class.
/// </summary>
sealed partial class App : Application
{
/// <summary>
/// Initializes the singleton application object. This is the first line of authored code
/// executed, and as such is the logical equivalent of main() or WinMain().
/// </summary>
public App()
{
this.InitializeComponent();
this.Suspending += OnSuspending;
}

/// <summary>
/// Invoked when the application is launched normally by the end user. Other entry points
/// will be used such as when the application is launched to open a specific file.
/// </summary>
/// <param name="e">Details about the launch request and process.</param>
protected override void OnLaunched(LaunchActivatedEventArgs e)
{
Frame rootFrame = Window.Current.Content as Frame;

// Do not repeat app initialization when the Window already has content,
// just ensure that the window is active
if (rootFrame == null)
{
// Create a Frame to act as the navigation context and navigate to the first page
rootFrame = new Frame();

rootFrame.NavigationFailed += OnNavigationFailed;

if (e.PreviousExecutionState == ApplicationExecutionState.Terminated)
{
//TODO: Load state from previously suspended application
}

// Place the frame in the current Window
Window.Current.Content = rootFrame;
}

if (e.PrelaunchActivated == false)
{
if (rootFrame.Content == null)
{
// When the navigation stack isn't restored navigate to the first page,
// configuring the new page by passing required information as a navigation
// parameter
rootFrame.Navigate(typeof(MainPage), e.Arguments);
}
// Ensure the current window is active
Window.Current.Activate();
}
}

/// <summary>
/// Invoked when Navigation to a certain page fails
/// </summary>
/// <param name="sender">The Frame which failed navigation</param>
/// <param name="e">Details about the navigation failure</param>
void OnNavigationFailed(object sender, NavigationFailedEventArgs e)
{
throw new Exception("Failed to load Page " + e.SourcePageType.FullName);
}

/// <summary>
/// Invoked when application execution is being suspended. Application state is saved
/// without knowing whether the application will be terminated or resumed with the contents
/// of memory still intact.
/// </summary>
/// <param name="sender">The source of the suspend request.</param>
/// <param name="e">Details about the suspend request.</param>
private void OnSuspending(object sender, SuspendingEventArgs e)
{
var deferral = e.SuspendingOperation.GetDeferral();
//TODO: Save application state and stop any background activity
deferral.Complete();
}
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added GazeInputTest/Assets/SplashScreen.scale-200.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added GazeInputTest/Assets/StoreLogo.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
151 changes: 151 additions & 0 deletions GazeInputTest/GazeInputTest.csproj
Original file line number Diff line number Diff line change
@@ -0,0 +1,151 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="15.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProjectGuid>{A122EA02-4DE7-413D-BFBF-AF7DFC668DD6}</ProjectGuid>
<OutputType>AppContainerExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>GazeInputTest</RootNamespace>
<AssemblyName>GazeInputTest</AssemblyName>
<DefaultLanguage>en-US</DefaultLanguage>
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier>
<TargetPlatformVersion Condition=" '$(TargetPlatformVersion)' == '' ">10.0.17134.0</TargetPlatformVersion>
<TargetPlatformMinVersion>10.0.17134.0</TargetPlatformMinVersion>
<MinimumVisualStudioVersion>14</MinimumVisualStudioVersion>
<FileAlignment>512</FileAlignment>
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
<WindowsXamlEnableOverview>true</WindowsXamlEnableOverview>
<PackageCertificateKeyFile>GazeInputTest_TemporaryKey.pfx</PackageCertificateKeyFile>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x86'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x86\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<NoWarn>;2008</NoWarn>
<DebugType>full</DebugType>
<PlatformTarget>x86</PlatformTarget>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x86'">
<OutputPath>bin\x86\Release\</OutputPath>
<DefineConstants>TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<Optimize>true</Optimize>
<NoWarn>;2008</NoWarn>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x86</PlatformTarget>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
<UseDotNetNativeToolchain>true</UseDotNetNativeToolchain>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|ARM'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\ARM\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<NoWarn>;2008</NoWarn>
<DebugType>full</DebugType>
<PlatformTarget>ARM</PlatformTarget>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|ARM'">
<OutputPath>bin\ARM\Release\</OutputPath>
<DefineConstants>TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<Optimize>true</Optimize>
<NoWarn>;2008</NoWarn>
<DebugType>pdbonly</DebugType>
<PlatformTarget>ARM</PlatformTarget>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
<UseDotNetNativeToolchain>true</UseDotNetNativeToolchain>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
<DebugSymbols>true</DebugSymbols>
<OutputPath>bin\x64\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<NoWarn>;2008</NoWarn>
<DebugType>full</DebugType>
<PlatformTarget>x64</PlatformTarget>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
</PropertyGroup>
<PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
<OutputPath>bin\x64\Release\</OutputPath>
<DefineConstants>TRACE;NETFX_CORE;WINDOWS_UWP</DefineConstants>
<Optimize>true</Optimize>
<NoWarn>;2008</NoWarn>
<DebugType>pdbonly</DebugType>
<PlatformTarget>x64</PlatformTarget>
<UseVSHostingProcess>false</UseVSHostingProcess>
<ErrorReport>prompt</ErrorReport>
<Prefer32Bit>true</Prefer32Bit>
<UseDotNetNativeToolchain>true</UseDotNetNativeToolchain>
</PropertyGroup>
<PropertyGroup>
<RestoreProjectStyle>PackageReference</RestoreProjectStyle>
</PropertyGroup>
<ItemGroup>
<Compile Include="App.xaml.cs">
<DependentUpon>App.xaml</DependentUpon>
</Compile>
<Compile Include="MainPage.xaml.cs">
<DependentUpon>MainPage.xaml</DependentUpon>
</Compile>
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<AppxManifest Include="Package.appxmanifest">
<SubType>Designer</SubType>
</AppxManifest>
<None Include="GazeInputTest_TemporaryKey.pfx" />
</ItemGroup>
<ItemGroup>
<Content Include="Properties\Default.rd.xml" />
<Content Include="Assets\LockScreenLogo.scale-200.png" />
<Content Include="Assets\SplashScreen.scale-200.png" />
<Content Include="Assets\Square150x150Logo.scale-200.png" />
<Content Include="Assets\Square44x44Logo.scale-200.png" />
<Content Include="Assets\Square44x44Logo.targetsize-24_altform-unplated.png" />
<Content Include="Assets\StoreLogo.png" />
<Content Include="Assets\Wide310x150Logo.scale-200.png" />
</ItemGroup>
<ItemGroup>
<ApplicationDefinition Include="App.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</ApplicationDefinition>
<Page Include="MainPage.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
</ItemGroup>
<ItemGroup>
<PackageReference Include="Microsoft.NETCore.UniversalWindowsPlatform">
<Version>6.0.1</Version>
</PackageReference>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Microsoft.Toolkit.UWP.Input.GazeInteraction\Microsoft.Toolkit.Uwp.Input.GazeInteraction.vcxproj">
<Project>{a5e98964-45b1-442d-a07a-298a3221d81e}</Project>
<Name>Microsoft.Toolkit.Uwp.Input.GazeInteraction</Name>
</ProjectReference>
</ItemGroup>
<PropertyGroup Condition=" '$(VisualStudioVersion)' == '' or '$(VisualStudioVersion)' &lt; '14.0' ">
<VisualStudioVersion>14.0</VisualStudioVersion>
</PropertyGroup>
<Import Project="$(MSBuildExtensionsPath)\Microsoft\WindowsXaml\v$(VisualStudioVersion)\Microsoft.Windows.UI.Xaml.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
48 changes: 48 additions & 0 deletions GazeInputTest/MainPage.xaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
<Page
x:Class="GazeInputTest.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="using:GazeInputTest"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:g="using:Microsoft.Toolkit.Uwp.Input.GazeInteraction"
g:GazeInput.Interaction="Enabled"
mc:Ignorable="d">

<Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}">

<Grid.RowDefinitions>
<RowDefinition />
<RowDefinition />
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition />
</Grid.ColumnDefinitions>
<ToggleButton Grid.Row="0" Grid.Column="0" x:Name="ShowCursor" Checked="ShowCursor_Toggle" Unchecked="ShowCursor_Toggle" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">Show Cursor</ToggleButton>
<Button Grid.Row="0" Grid.Column="1" x:Name="Dwell" Click="Dwell_Click" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Content="Eyes Here">
<g:GazeInput.GazeElement>
<g:GazeElement StateChanged="OnStateChanged"/>
</g:GazeInput.GazeElement>
</Button>
<Button Grid.Row="1" Grid.Column="1" x:Name="HowButton" Content="0: Idle" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Click="OnLegacyInvoked" g:GazeInput.MaxDwellRepeatCount="4">
<g:GazeInput.GazeElement>
<g:GazeElement Invoked="OnGazeInvoked"/>
</g:GazeInput.GazeElement>
</Button>
<Grid Grid.Row="1" Grid.Column="0">
<Grid.RowDefinitions>
<RowDefinition Height="5*"/>
<RowDefinition/>
</Grid.RowDefinitions>
<ToggleButton Grid.Row="0" Content="Click" g:GazeInput.DwellDuration="0:0:2" HorizontalAlignment="Stretch" VerticalAlignment="Stretch">
<g:GazeInput.GazeElement>
<g:GazeElement DwellProgressFeedback="OnInvokeProgress" />
</g:GazeInput.GazeElement>
</ToggleButton>
<ProgressBar Grid.Row="1" x:Name="ProgressShow" Maximum="100" />
</Grid>
<TextBlock Grid.Row="2" Grid.ColumnSpan="2" x:Name="DeviceAvailable" Text="Device availablility not yet detected"/>
</Grid>
</Page>
Loading