Git Product home page Git Product logo

winrt-api's People

Contributors

alvinashcraft avatar cxwtool avatar deepakmsft avatar drewbatgit avatar eliotcowley avatar grantmestrength avatar harinikmsft avatar hickeys avatar jwmsft avatar karl-bridge-microsoft avatar kevin-schultz avatar ktoliver avatar laurenhughes avatar mancunianbandit avatar mcleanbyron avatar mhopkins-msft avatar mijacobs avatar mikematteson avatar msatranjr avatar muhsinking avatar normesta avatar nschonni avatar oldnewthing avatar patrickfarley avatar prashobnambiar avatar pritamso avatar quinnradich avatar serenaz avatar stevewhims avatar tylermsft avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

winrt-api's Issues

EasingDoubleKeyFrame docs should mention the default easing function

I noticed that in a XAML app, if you create an animation with an EasingDoubleKeyFrame but don't specify an easing function via the EasingFunction property, the system applies a default Bezier curve. This was unexpected since you would expect a linear ease in this case.

Please document what the default easing function will be if you do not supply one.

ArgumentException in StorageFolder.GetFilesAsync()

The document of StorageFolder.GetFilesAsync() says that it only throws UnauthorizedAccessException. But it also throws ArgumentException (while there are no arguments) without meaningful message.

Sample code:

        private async void GetFiles()
        {
            var storageItems = await Clipboard.GetContent().GetStorageItemsAsync();
            foreach(var item in storageItems)
            {
                if (item is StorageFolder folder)
                {
                    await folder.GetFilesAsync();
                }
            }
        }

Exception

System.ArgumentException:“Value does not fall within the expected range.”

OS version: Windows 10 16299.19
Target version: Windows 10 build 15063
Minimum version: Windows 10 build 15063
Microsoft.NETCore.UniversalWindowsPlatform package version: 5.4.0/5.4.1/6.0.1

Missing details: AppServiceConnection

Relevant API: Windows.ApplicationModel.AppService.AppServiceConnection

After reading the documentation for this class, I have the following questions which I think the documentation should answer:

  • Delivery contract. If I send a message with SendMessageAsync, is it guaranteed to be delivered to the recipient? Or are there cases where delivery can fail (e.g. the AppServiceConnection closes, the app gets suspended, the app terminates/crashes)? If a message fails to be delivered, how is this communicated to the sender?
  • Event ordering contract. When multiple messages are sent, is RequestReceived expected to fire in the same order that the messages were sent? Is it possible for me to get a RequestReceived after ServiceClosed fires? These answers seem uncertain to me because all I know about AppServiceConnection's event contract is that the events fire on thread pool threads. Consequently, it seems plausible to me that different AppServiceConnection events could happen to run on different thread pool threads and so the ordering of the event handlers running could depend on the scheduling of the threads. So I'm wondering if AppServiceConnection's implementation guarantees an ordering for the running of event handlers.

Adam Comella
Microsoft Corp.

Attached properties

When a user requests markdown updates for new files, the service should create new stubs provided by the build/transform service and create new files into the target repo & branch.

Incapable of manipulating VpnPacketBufferList

Missing description of Data​Writer​Store​Operation result

https://docs.microsoft.com/en-us/uwp/api/windows.storage.streams.datawriterstoreoperation

Data​Writer​Store​Operation::GetResults() returns uint, but it's not documented, what does this uint represent. From the sample for DataWriter it can be seen that it's the number of stored bytes, but the meaning should be clear from the function documentation.

Is this the right place to report this stuff? There's a ton of issues like this in new docs.microsoft.com :-(, but I see only ~20 issues in the database.

J.

User::NonRoamableId missing details.

Hi,

Description of User::NonRoamableId here would use some details.

Like when it's guaranteed to stay the same and when not. From my observations:

  • It's different for the same user on different machines (that's understandable, it's nonroamable).
  • It seems to be different, when the same user logs in locally and remotely.
  • It seems to stay the same after the restart.
  • It seems to be different in each app for the same user on the same machine but.

Or if it's guaranteed to be different for two local users (i.e. not domain users) on different machines.

I was not sure whether I can use it to reliably identify the user or not, so I had to do all this tests myself.

Thanks,
J.

How to edit JS code examples?

I came across SystemNavigationManager doc page and tried to use JS example presented there, however, it turned out that it has a flaw in event naming convention.

The example says it's backRequested but it doesn't work because all events names in WinRT JS API are lowercased so I tried with backrequested and it works.

I wanted to edit the doc page but I noticed that its file doesn't contain code samples. Is it possible to fix it or they are somehow magically generated from the C# API?

Docs inaccessible via Help Viewer?

I've been searching and searching and cannot find a definitive answer to this issue. It is not specifically a winrt-api issue, but it is my inability to view these docs in the offline Help Viewer that raises the larger question. As I understand, MicrosoftDocs here on GitHub.com is the new hotness, but Help Viewer doesn't seem to understand this, because the list of "online resources" is quite short and non-comprehensive, nor does it seem to offer any method for connecting to the GitHub repo to subscribe to documentation sets.

I am brand new to Windows development (coming from macOS/iOS development on Xcode), wanting to start with the latest technology as my baseline moving forward (I have no legacy platform development needs). As I understand, Windows UWP app development via C# and the WinRT APIs is the Redmond-recommended platform moving forward. And yet, Visual Studio 2017 Help Viewer cannot provide the documentation contained in this repo.

Am I missing something? Is there a piece to this puzzle that connects Visual Studio offline documentation to these GitHub repos? Is Help Viewer deprecated in favor of these and a Markdown extension within VS2017? How can API lookups in VS2017 connect to their GitHub doc explanations?

Wrong statement that background triggers do not work when device is battery mode

In TimeTrigger class documention you claim that: "TimeTriggers, and other background triggers, do not work when the device is in battery saver mode."

This is not true for all triggers, as at least ToastNotificationHistoryChangedTrigger and ToastNotificationActionTrigger do work even when device is in battery saver mode.

Provide summary document of all logging options and recommendations

I wanted to pick a logging solution for my C# UWP app and found the number of options to be overwhelming:

  • System.Diagnostics.Debug
  • System.Diagnostics.Trace
  • System.Diagnostics.Tracing
  • Windows.Foundation.Diagnostics.LoggingChannel

I couldn't find any document which describes the relationship between all of these APIs. What are the trade offs between these APIs? Which ones are recommended for which use cases?

I want to pick the right logging API up front so that my team doesn't end up having to rewrite all of our logging code later after we learn what the right option would have been the hard way through experience.

Picking a logging API is a problem that every serious UWP app team has to do. It would be nice to have a document that summarizes the UWP logging options, their relationships, their trade offs, and makes some recommendations. This is nicer than the current state of each app team having to study each logging API and try to guess at the relationships and trade offs between all of the options.

Adam Comella
Microsoft Corp.

DeviceClass details is missing some words

Source

A couple of field descriptions of this enum start with "Introduced in ." Notice the blank between "in" and the period. It seems like there's a missing word there.

image

Adam Comella
Microsoft Corp.

Language interface section isn't rendering properly

The documentation shows method declarations in each supported language and has sections labeled C++, C#, VB, and JavaScript.

I would expect each declaration to appear under the section for the appropriate language.

Instead, all of the declarations appear under the JavaScript section.

Additionally, the "Copy" buttons don't appear to work. When I click the "Copy" button for C++ this is what is copied to my clipboard: // You can use this method in JavaScript..

Here's an example screenshot from Windows.ApplicationModel.AppService.AppServiceConnection:

image

Adam Comella
Microsoft Corp.

Print complete document in UWP HTML5 app

MSApp.getHtmlPrintDocumentSourceAsync(document).then(function (source) {
args.setSource(source);
});

The above code is not working for printing the complete document if document content is more than one page.

Syntax block doesn't render return types using a collection correctly

For example:-
https://docs.microsoft.com/en-us/uwp/api/windows.devices.radios.radio#Windows_Devices_Radios_Radio_GetRadiosAsync
The method returns an IAsyncOperation<IVectorView> but it is shown in the C# syntax block as
IAsyncOperation>
Notice the mismatched brackets.
For C# this should be displayed as:-
IAsyncOperation<IReadOnlyList>
The VisualBasic and C++ versions are also wrong (though C++ should display the IVectorView type as it is the raw WinRT type rather than IReadOnlyList which is the .NET mapping).
I suspect this could also be a problem for other async methods which return collections.

Incomplete Examples

I feel some document has some classes provide incomplete examples...

For example, take a look at GridView Class. With the code:

<GridView ItemsSource="{Binding Source={StaticResource cvsProjects}}"
<!-- ... -->

I don't see the cvsProjects class anywhere in the example, so I cannot copy / paste the examples to play around with it in order to understand how it works.

It would be nice if the cvsProjects or an example class was shown so we could use it with the rest of the examples.

Missing details: VoipCallCoordinator.ReserveCallResourcesAsync

Affected API: Windows.ApplicationModel.Calls.VoipCallCoordinator.ReserveCallResourcesAsync

The only thing the documentation says about this API is "Reserves the resources necessary for a VoIP call.". It doesn't answer questions such as:

  • When/why do I need to call this?
  • If my app is handling 2 VoIP calls simultaneously, do I have to invoke this API once per VoIP call?
  • What kind of resources is it reserving?
  • Do I need to free them? When? How?
  • What exceptions is this expected to throw? Looking at the VoIP sample, it appears that it's okay for ReserveCallResourcesAsync to throw an Exception with HRESULT -2147024713.

Adam Comella
Microsoft Corp.

Inherited Members section is an overwhelming unstructured list

docs-inherited-members

The attached screenshot shows the inherited members for the Windows.UI.Xaml.Controls.Button class. It's impossible to work with because it's just an unstructured list. It's missing information on which class in the hierarchy each member comes from.
The old style documentation listed all members within fields, properties, methods and events and showed "Inherited from UIElement" for example and the hyperlinks went through to the correct type.

Incorrect links in AutomationProperties doc

It seems that there are many links in the AutomationProperties doc which should navigate to another page but instead don't navigate anywhere.

Let's take Windows.UI.Xaml.Automation.AutomationProperties.AccessibilityViewProperty as an example:

The beginning of the documentation for that property starts with "Identifies the AutomationProperties.AccessibilityView...". The last word, "AutomationProperties.AccessibilityView", is a link which brings me to the exact same part of the documentation I was looking at. However, I believe that link should have brought me here instead.

It seems this kind of mistake is made all over the AutomationProperties documentation

Adam Comella
Microsoft Corp.

More Info Needed for ExetendedExecutionSession.PercentProgress

It says this property is "A value to show progress in the shell", but don't know where it actually shows. If currently it doesn't actually show a progress in the shell, the doc should inform API users of this.

File directory:
winrt-api/windows.applicationmodel.extendedexecution/extendedexecutionsession_percentprogress.md

Implement grouping for inherited members

Alpha sort of inherited members would improve output.
Use short name instead of fully-qualified.

Add Parent element to inherited members

Tags should be:

Inherited properties
Inherited methods
Inherited events

Sample Parent entry:

  • uid: System.Object.ReferenceEquals(System.Object,System.Object)
      commentId: M:System.Object.ReferenceEquals(System.Object,System.Object)
      parent: Inherited zzzzz
      isExternal: true
      name: ReferenceEquals(Object, Object)
      nameWithType: Object.ReferenceEquals(Object, Object)
      fullName: System.Object.ReferenceEquals(System.Object, System.Object)
      spec.csharp:

Error in GetAppListEntriesAsync

winrt-api/windows.applicationmodel/package_getapplistentriesasync_364802562.md

Text states:
Enumerates the packaged apps on the device. Only packaged apps that are registered to the current user are returned.
This is incorrect. Actually only apps included within the current package are enumerated.

Missing parameteres in declarations of generic types

Like here:
https://docs.microsoft.com/en-us/uwp/api/windows.devices.enumeration.devicewatcher#events_

DeviceWatcher::EnumerationCompleted event is declared like this:

public event TypedEventHandler EnumerationCompleted

But it should be:

public event TypedEventHandler<DeviceWatcher^, Object^> EnumerationCompleted

Also the description of parameters of generic type is missing. E.g. what does the Object^ parameter represent?

I can see this throughout the whole UWP documentation at docs.microsoft.com.

J.

The Windows Web App example for the manifest does not comply with the xml schema

Referring to winrt-api/windows.applicationmodel/startuptask.md

It says there is no "StartupPage" attribute declared under <uap5:StartupTask> tag when compiling confirmed here: https://docs.microsoft.com/en-us/uwp/schemas/appxpackage/uapmanifestschema/element-uap5-startuptask

Shouldn't the "StartupPage" actually be the "StartPage" attribute under <uap5:Extension> tag?

Like this:

    <uap5:Extension Category="windows.startupTask" StartPage="EntryPage">
      <uap5:StartupTask
        TaskId="MyStartupId"
        DisplayName="Test startup"  />            
    </uap5:Extension>

Style "all in one page" is hard to read

New style of the docs, where everything is in one page (class description, and detailed descriptions of all its properties, events, methods, ...) is hard to read. It's hard to get an overview from this layout, it's overwhelming. Structuring would help. Like in the old msdn docs, where you had class description on one page, together with table of properties, events, methods with SHORT description of each. And each property/event/method had separate page with detailed description.

Example of bad, "all in one page" documentation, FrameworkElement:
https://docs.microsoft.com/en-us/uwp/api/windows.ui.xaml.frameworkelement

Example of good, structured documentation, IDirect3DDevice9:
https://msdn.microsoft.com/en-us/library/windows/desktop/bb174336(v=vs.85).aspx

I wonder whose idea it was to ruin the good old msdn documentation like this... :-(. Pardon my expressive language.

Why can't you Microsoft people add a "Watermark" Property to TextBlock and ComboBoxs?

Why can't you Microsoft people add a "Watermark" Property to TextBlock and ComboBoxs that adds a watermark label to left or inside and above the content for telling people what the TextBox or ComboBox is for?? I hate writing garage templates to do the same thing. It should be built into the component in my opinion. Example:

The Effect this Achieves without all the garbage:

        <Grid>
            <Grid.ColumnDefinitions>
                <ColumnDefinition Width="auto"/>
                <ColumnDefinition Width="*"/>
            </Grid.ColumnDefinitions>
            <Grid.RowDefinitions>
                <RowDefinition Height="auto"/>
            </Grid.RowDefinitions>
            <TextBlock Grid.Row="0" Grid.Column="0" Text="Rate" FontSize="10" Padding="3,0,0,0"/>
            <TextBox Grid.Row="0" Grid.Column="0" Padding="0,10,0,0" Margin="0" Text="1.0" FontSize="12"/>
        </Grid>

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.