ATTENTION: You are viewing a page formatted for mobile devices; to view the full web page, click HERE.

Special User Sections > N.A.N.Y. 2014

N.A.N.Y. 2014 Release: Text Inspection & Manipulation Utility

<< < (25/27) > >>

DeVamp:
Ow indeed. nice that you get the explanation of the regex.

Thanks :)

ConstanceJill:
Hi there .o/

I found some sort of "bug", which is actually something I've seen in several applications so far.

Here are the steps to reproduce:
- have the program's window opened, but not maximized
- reduce it to the task bar
- close the program by right-clicking its button in the taskbar and selecting "Close this window"

When you run the program again, its window doesn't show, even if you click the button on the taskbar (which would normally restore the window).

From what another developer told me a while back, that is related to how Windows treats window reduction: it just moves the window to coordinates "far, far away" outside of the desktop's resolution. Thus when you close the program, it saves those coordinates... and when it runs again, its window is always at a position outside of the desktop.

You still can make it visible again by maximizing the window (using the system menu which you can bring up with Alt + spacebar), but it's kinda not cool having to do so.
You could also edit the coordinates in the user.config file somewhere under "%localappdata%\TextManipulationUtility" to have it back into the visible area of the desktop… but it would be much better if the program checked whether or not the coordinates specified in there are visible or not according to the current desktop's resolution, and if not, reset the window's position.

hamradio:
Hi there .o/

I found some sort of "bug", which is actually something I've seen in several applications so far.

Here are the steps to reproduce:
- have the program's window opened, but not maximized
- reduce it to the task bar
- close the program by right-clicking its button in the taskbar and selecting "Close this window"

When you run the program again, its window doesn't show, even if you click the button on the taskbar (which would normally restore the window).

From what another developer told me a while back, that is related to how Windows treats window reduction: it just moves the window to coordinates "far, far away" outside of the desktop's resolution. Thus when you close the program, it saves those coordinates... and when it runs again, its window is always at a position outside of the desktop.

You still can make it visible again by maximizing the window (using the system menu which you can bring up with Alt + spacebar), but it's kinda not cool having to do so.
You could also edit the coordinates in the user.config file somewhere under "%localappdata%\TextManipulationUtility" to have it back into the visible area of the desktop… but it would be much better if the program checked whether or not the coordinates specified in there are visible or not according to the current desktop's resolution, and if not, reset the window's position.
-ConstanceJill (May 11, 2017, 10:52 AM)
--- End quote ---

Not the author but in .net (CSharp) anyway developers can check for minimized programs and account for that...Here is an example if it will help anyone.  As noted not complete code, but might get coders a start with it.

Example Save Settings (Not Complete Code) CSharp
--- Code: C# ---if (this.WindowState == FormWindowState.Maximized || this.WindowState == FormWindowState.Minimized){    SaveSettingsData.ClosedState.Left = this.RestoreBounds.Left;    SaveSettingsData.ClosedState.Top = this.RestoreBounds.Top;    SaveSettingsData.ClosedState.Width = this.RestoreBounds.Width;    SaveSettingsData.ClosedState.Height = this.RestoreBounds.Height;     if (this.WindowState == FormWindowState.Minimized)    {        SaveSettingsData.ClosedState.wasMaximized = false;    }    else    {        SaveSettingsData.ClosedState.wasMaximized = true;    }}else{    SaveSettingsData.ClosedState.Left = this.Left;    SaveSettingsData.ClosedState.Top = this.Top;    SaveSettingsData.ClosedState.Width = this.Width;    SaveSettingsData.ClosedState.Height = this.Height;    SaveSettingsData.ClosedState.wasMaximized = false;}

Example Load Settings (Not Complete Code) CSharp
--- Code: C# ---this.Left = LoadSettingsData.ClosedState.Left;this.Top = LoadSettingsData.ClosedState.Top;this.Width = LoadSettingsData.ClosedState.Width;this.Height = LoadSettingsData.ClosedState.Height; if (LoadSettingsData.ClosedState.wasMaximized == true){    this.WindowState = FormWindowState.Maximized;}else if (LoadSettingsData.ClosedState.wasMaximized == false){    this.WindowState = FormWindowState.Normal;}

Note: It will even restore back down correctly after an application restart if it was maximized too with my example I believe.

ConstanceJill:
I currently see two ways to handle the problem, one of which seems better in my opinion (and I'll explain why):

1 - check if the window is minimized or not when saving the settings
2 - check the desktop's "visible area" limits/coordinates when starting the program

I think option 2 is better because it doesn't only handle the case of the program being minimized, but also other cases such as the user having switched from a dual to single monitor desktop, for example someone with a laptop and an external monitor on its dock, who obviously doesn't have that second monitor available when travelling.

Of course, I suppose you could do 1 and 2.

phitsc:
Hello ConstanceJill,

Glad to hear someone is still using this application, if only to minimize and close it ;)

Thanks for reporting this issue. I have fixed it as to your suggestion 2. Thanks hamradio for chiming in with a suggestion as well.

The new release can be downloaded from here: https://github.com/phitsc/timu/releases/download/v0.20/TextManipulationUtility-0.20.zip

This project is now open source :D

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version