Pop up created by CFUserNotificationCreate is not coming to front - objective-c

This is bit tricky situation. I want to display a dialogue to the user from daemon, that dialog should come in front of all other open windows on screen. In regular cases CFUserNotificationCreate just working fine. But say open xcode from that try to open a file by using the "open window", if for some reason that window is hung, dialogue from CFUserNotificationCreate is not coming on top of such windows. Is there any solution for that/ Is there any way to display dialogue other than this.

After consulting with Apple, got to know this is a bug which exists with few applications. We had raised Apple bug ticket for the enhancement.

Related

How to remove Desktop tab in KDE Plasma

I would like to remove the Desktop tab from KDE Plasma desktop environment and get rid of the context menu. Is there a way to do this ?
Hi Chris, Thanks for the reply. I am running KDE 4.14.8. I am not seeing what you are describing. The context menu is the menu when you right click on the desktop. I think you are calling it "desktop menu". My original snapshot show that menu. That menu changed depending what desktop theme I selected. I could not find anything call Configure Desktop. The closest thing to that would be Default Desktop Setting and there is not there about the Tweaks tab. The project that I am working on is kind of mission critical. It would be just a plain desktop without anything. The only thing the user can do is log on, does his job and log off. All the things that can distract the user will be removed. I got most of them except for this pesky toolbox.
To remove the toolbox:
right-click on desktop to get the desktop menu
select Configure Desktop, a dialog appears
switch to Tweaks tab
uncheck Show the desktop toolbox
You can also drag it to a corner (when widgets are unlocked), then it will not show the current activity name, but will still be accessible.

Clicks going to background window in Adobe AIR app on OS X High Sierra

We have a fairly large AIR desktop application (captive AIR, using Runtime version 21).
Recently our QA have confirmed and reproduced an odd report by a Mac user:
When the app is in full screen, running on OS X High Sierra, then some clicks on the main user interface go through to whatever application is running behind the window. Whatever background window has been clicked, it will jump to the front and the click is processed, e.g. if the click was sent to a Finder window and happened to be in the location of a favorites folder, that folder will be opened as if you clicked it when the Finder window was open.
If no window is behind our app at the click location, the desktop will receive focus.
This is not consistent and even clicks in the same spot (as much as one can hit the same pixel twice) sometimes go to the background window and sometimes end up, as expected, in our window.
I know that this sound weird but it's been verified both by our QA and by me and another developer working on different machines.
Ideas would be most welcome.
Answering my own question after some trial and error:
Upgrading to AIR SDK 28 solved the problem.
Bonus tip: Avoid Adobe AIR. Great technology, zero support, dead forums.

The form fails to popup in windows 8

I have a chat application written in VB.net which is used to chat between users who are connected in LAN inside a office . The application popups whenever user gets new chat message. It works fine in windows XP. But sometimes in windows 8 the application fails to popup the chat window. So my chat window is not appearing at the top when popup occurs for new messages.
I have tried using setwindowspos, form.Show(), form.BringToFront() which can bring the form to topmost. But sometimes this will not work properly.
So is there any other method other than those three(which i have mentioned above) i have used which can make the form popup and bring it to front.
Your WinForms app is a desktop application, so it's likely that the reason the pop-up is not being displayed in Windows 8 is because the desktop is not visible.
Remember that Windows 8 brings with it a whole new Start Screen interface and relegates the desktop to an alternate mode. All desktop applications still run, but they run in this separate mode and cannot interact with the new Metro applications (or whatever they're calling them nowadays). Yes, it's too bad that the usability folks at Microsoft didn't listen to Larry Tesler and have decided instead to mode us in, but c'est la vie.
So anyway, the pop-up is still being displayed, but it's being displayed on the desktop, which is not visible. Bringing it to the top isn't doing any good because it's already at the top of all the other windows on the desktop. If you click on the "Desktop" tile in the Start Screen, you should see your window.
Fixing this problem is going to take some work. Forcing a focus switch to the desktop mode is a horrible idea from a usability perspective, and I'm not sure it's even possible. A better solution would be to look into using Toast notifications instead, which can be done from a desktop application.

How can I send clicks or keys from a VB6 app to an Excel dialog box?

My employer has purchased a third-party tool, OfficeConverter from Conveter Technology that automates the conversion / repair of Office 2003-formatted files to Office 2007 format. This tool also highly automates the translation / change in macro / VBA code requirements between Office 2003 and 2007 formats.
My problem is that during this conversion the tool is opening the targeted Office product, say Excel and is then opening the target user file (ie. Report.xls) and is then examining any VBA / macro code for change requirements. The problem is that IF the Excel file code is dependent upon some external tool like an .OCX file and if that tool doesn't exist on the PC that I'm performing this action on, Excel will pop up a message that the Object has not been found, stopping the entire conversion process (thousands of files in a row) until someone comes along and MANUALLY clicks the appropriate button to close the dialogue box.
I figured that creating a small watching application in VB6 (hey, I'm old and my skills are too) could sit on the same PC and watch for these dialogue boxes and, depending on the specific message, click the appropriate button via the SendMessage API call.
The problem is that I haven't been able to get SendMessage to actually PUSH the button for me, I've tried sending it the Return key value (vbKeyReturn) or even the Space key (vbKeySpace) but the action never results in the dialogue box closing like it should. I can get the focus to tab between whichever buttons on the dialogue box are enabled, but that is about it.
I've attempted to use SendKeys, but that is far less reliable and strongly discouraged in the current documentation that I've come across.
Any suggestions? :)
If you have the hWnd for the button, and the machine is unattended, you can easily use MouseEvent to move the cursor over the button and click it. This sample includes a drop-in ready module that'll do the dirty work for you given just the window handle:
http://vb.mvps.org/samples/MouseEvent
Otherwise, the most straightforward way is probably to just send WM_LBUTTONDOWN and WM_LBUTTONUP sequentially.
EDIT: If you "just want to get it done" take Jim's advice and try Gary Chanson's Window Demon tool.
Take a look at this utility "Window Demon" by Gary Chanson
Karl: how quickly we forget our pals!
I would suggest taking a look at AutoIt.
It is perfect for this task, look for a window with a particular text on it and click a button.
Runs in the system tray as a standalone application.

open IE without toolbar or address bar from Windows VB Application

Shell ("explorer.exe www.google.com")
is how I'm currently opening my products ad page after successful install. However I think it would look much nicer if I could do it more like Avira does, or even a popup where there are no address bar links etc. Doing this via an inbrowser link is easy enough
<a href="http://page.com"
onClick="javascript:window.open('http://page.com','windows','width=650,height=350,toolbar=no,menubar=no,scrollbars=yes,resizable=yes,location=no,directories=no,status=no'); return false")">Link text</a>
But how would I go about adding this functionality in VB?
If you want it to look professional, you need to use an actual browser component. VB.NET comes with one. If you are using an older version of VB, you'd need to go third party. If you want to stay with a shell open, you would have to individually target the browser command-line and pass arguments to indicate that it should not have toolbars etc.
Speaking as a user, I find castrated popup windows annoying and unproductive.
So my answer is: "don't".