WM_GETICON for Metro app returns default icon handle - windows-8

I am trying to retrieve the icon handle for metro apps by sending a message with the WM_GETICON message to the window. I however keep getting the default icon handle (65575). Has something changed in Windows 8 with regards to the icons?

Related

Getting past system alert on Android after device.openUrl call

When I use device.openUrl I get the prompt to pick my app or the WebView Shell app (see image below).
Is there a way to set this up to always pick my app?

how to interact with "Reminder me" in CallKit like whatsapp

My App is compatible with CallKit after iOS 10.0. However, I meet with a problem:
When there is an incoming call, I just click the "reminder me" button,
then, I open the system app "Reminders", there will be one record of my app call, But how can I set my app icon here and make the icon clickable to call the other, just like “whatsapp” shows~
I was having the same issue and solved it by letting iOS now my app can make calls. I did this adding the 'NSUserActivityTypes' array to the info plist file with with these entries: 'INStartAudioCallIntent' and 'INStartVideoCallIntent'.
This is how it looks like:
With this, iOS started showing my app icon in the Reminders app. After that you can implement in your app delegate the -application:continueUserActivity:restorationHandler: (or in Swift, application(_:continue:restorationHandler:)) method to handle the received action and start a call.

Change color for setBadgelabel Node Webkit

I am currently trying to make a chat desktop application using nodeJS, angularJs, and nodewebkit.
For notifying the user, in the icon in the taskbar, I used setBadgelabel().
How can I change the color of the default badge label by the function setBadgelabel()?
Thanks in advance.

ToastNotification during Quiet Time

I have developed a desktop application which displays ToastNotifications while the user is in Metro Mode. When clicked it will bring the user back to the desktop mode where a standard desktop notification is presented.
This all works fine except when Windows is in QUNS_QUIET_TIME. The desktop notifications do not get displayed as expected, but the ToastNotfications still get displayed. My client wishes for the ToastNotifications to not display during Quiet Time.
The code calls SHQueryUserNotificationState which returns a QUERY_USER_NOTIFICATION_STATE enumeration. The provided link says the following:
Note that during quiet time, if the user is in one of the other blocked modes (QUNS_NOT_PRESENT, QUNS_BUSY, QUNS_PRESENTATION_MODE, or QUNS_RUNNING_D3D_FULL_SCREEN) SHQueryUserNotificationState returns only that value, and does not report QUNS_QUIET_TIME.
This is what I am experiencing. The call to SHQueryUserNotificationState is returning QUNS_APP (A Windows Store app is running.) and not QUNS_QUIET_TIME.
Does anyone know of another way to determine if QUNS_QUIET_TIME is in effect or a way to force the toast to respect quiet time?
Desktop notifications use different settings than toast notifications. You can find toast notification settings here. When a user sets notifications to one hour from Windows 8 Settings | Notifications, the app will not be able set toast notification. Try the example "sending toast notifications from a desktop" here (either C++ code or C# code).

How to find out user is at desktop instead of start screen or another store app UI at Windows 8

As we know, at windows 8 if user is at start screen or another store app (metro app) UI, the dialog at the desktop won't be visible to user. We are adding some toast notification capability at our application by following Sending toast notifications from desktop apps sample. I am able to get it working. However if user is already at the desktop, we don't want to send out the toast notification. So it would mean that we need to be able to detect if user is current at desktop or not. Somehow I didn't find any API by searching on internet. Could someone let me know how to do so? Thanks very much.
A toast notification can't know in what context the user is located, so this is not possible.