'How do you want to open' 8.1 dialog and icons - windows-8.1

Does anyone know, where Win 8.1 gets the icons, used in the dialog, from?
In my case an app icon is corrupted (instead of mine, another app icon is used for my app), and I want to debug the issue. But for that I have to know, where is a source of the icons.
I've already inspected my .exe file resources, there is no other icons there but mine.

It turns out, that when an app is registering itself as matching some user's model, it should set the logo and background color. See AppUserModelId (http://msdn.microsoft.com/en-us/library/windows/desktop/dd378459%28v=vs.85%29.aspx) for details.

Related

Display pdf document in flutter windows

I have been finding it difficult to display a pdf on flutter windows and other desktop applications. Can someone help me out
This is the same as this question, but for Windows, so the answer is the same at a high level. As with Linux, PlatformView is not yet supported for Windows.
Two options that could work without PlatformView support:
Swap the window between displaying the Flutter view and a PDF view (if you want the PDF to fill the window while displayed).
Place the Flutter view and the PDF view side by side in the window (if you want both Flutter content and PDF content visible at the same time).
Both would require the work to be done in the native code, so you would need to either write a plugin, or implement it directly in your runner, and use a method channel to coordinate between Dart and native code.

Where does secondary image in (node.js) Windows 8 toast notification come from?

I'm using node-notifier (link) in node.js to show a toast notification in Windows 8. I have it working and I'm able to adjust the title, text, and main image in the notification just fine. However, in a Windows 8 toast notifications, there is a secondary (smaller) image. See below:
So, node-notifier uses toaster, which in turn uses ToastNotificationManager. But, I cannot find any reference anywhere to this secondary image. I've looked here and here on Microsoft's site.
This secondary image also shows in other notifications I receive from applications like Outlook, Slack, etc.
Where is this secondary image coming from? Is the documentation just out of date? Can Toaster be modified to access this secondary image?
The secondary image is the icon for the shortcut in the Start Menu folder for the program registered to raise a toast. To change it, you'll need to modify the icon on the shortcut.
For a desktop application to use the ToastNotificationManager class, it is required to have a shortcut in the start menu, and an AppUserModelId associated with that shortcut. At ToastNotificationManager creation time, the caller passes in the same AppUserModelId, which ties back to the associated icon for the shortcut. More about registering desktop applications to raise toasts this can be found on this MSDN documentation page.
Looking at the toaster code here, it is installing the shortcut to a file called toast.lnk in the Start Menu:
String shortcutPath =
Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) +
"\\Microsoft\\Windows\\Start Menu\\Programs\\toast.lnk";
And, it is creating the shortcut targeting the initial calling process:
String exePath = Process.GetCurrentProcess().MainModule.FileName;
Updating the icon in the shortcut manually should verify that you can change what is shown locally, but an update to toaster to set the icon location is likely required (to support multiple callers with different shortcuts, or by having it call IShellLink::SetIconLocation).

Cannot set/change default icon for a Chrome webapp (created using Apps Script) in Chrome desktop launcher

I wrote a simple Google Apps script and published it in the Chrome Web Store as an app (I guess "hosted" app. You can find the link here: http://bit.ly/1JTiKLC). I followed the instructions mentioned here:
https://developers.google.com/apps-script/guides/distribute-web-app
I specified all the required items in the checklist, AFAIK, including icons of the required size. The item is listed and I can download it. However, when it is added in the Chrome desktop launcher, it has the default "apps script" blue icon:
I want to change this but can't find any way to do so. The link above specifies that there is a way to do this for a new tab page (sec. Updating a web app's icon on the New Tab Page). First of all, I cannot see any link that says "specify an alternative image" anywhere as they say. Could someone elaborate on this. Secondly, is there a similar way to change the launcher icon for apps script webapps?
Ok, I found it. Here's the info for someone else who may have the same question: The link appears in the window just after you click "Publish>Register in Chrome Web Store..." in the apps script editor itself. It's not there in the developer dashboard. You can host the image publicly on any site which provides direct links, like imgur.
This will change the icon in the Chrome new page tab (or in "chrome://apps/") as well as the desktop launcher. Cheers :)

Desktop capture - Does not show all windows during sharing contents of Desktop

Here is the link to my extension code:
Trying to capture desktop image using getUserMedia and canvas
The problem is that when I use :
chrome.desktopCapture.chooseDesktopMedia(["screen", "window"],onAccessApproved);
It asks me to share contents of my screen. But it doesn't show all windows that are active on my desktop.
Example: Sometimes my skype is minimised and if click the extension icon it opens a sharing panel and asks me to share desktop contents but skype window is not shown in this panel. If I click on skype from my task bar, the sharing panel shows skype. Reason for this behaviour?
How to show all my windows on sharing screen?
Well, the behavior is consistent: on Windows, minimized windows are not shown as eligible capture targets. There is no way around it.
This limitation is not documented, which is regrettable; it may also be OS-specific.
Specifically, Windows implementation contains the following comment:
// Skip windows that are invisible, minimized, have no title, or are owned,
// unless they have the app window style set.
Interestingly, this seems more like a Mac limitation than a Windows one:
// Return a 1x1 black frame if the window is minimized, to match the behavior
// on Mac.

How is the panel displayed when launching Chrome Hangout extension made to be always on top and pinned?

When launching the Chrome Extension Google-Hangouts, a panel initially appears that lists members and a link/button to create a new Hangout.
This panel is initially pinned to the bottom right of the browser window. When pinned like this, it remains always on top as a browser navigation session continues: users can go to different URLs, change tabs, etc. and that panel stays at the bottom right and stays on top of all other windows (or at least on top of the main browser window).
Once it's unpinned, you can drag it around the window, but it no longer stays always on top.
My question is, how was that achieved - what code, or what functions, do i need to call to create that window/panel so that it stays initially pinned and always on top? Is there some binding to some native code that's involved? Some other approach?
If anyone know and can show or explain, i would be hugely grateful as this feature is key to an extension i'm trying to build.
Thanks a lot!
This may not be an answer but to get a clue of what is happening I extracted the crx file to view its content there are a few OS specific files : ace.dll , libace.so and ace. After researching a bit i found this. This is a plugin. Hangouts extension is using ace plugin which is actually running on your desktop(i'm not sure about this). You can check this article
I found this related post: How to build an chrome extension like Google Hangouts
ACE is actually not what makes the window, Chrome has that capability built in, apparently. Even if you don't enable panels, extensions from Google can still make them, provided your OS is capable.

Resources