Menu

#52 GUI decoration & interaction, windows’ positioning, translation…

1.7.0.0
closed
2017-07-09
2017-06-27
Sarah Nomi
No

Hi Roberto,

After the story of the 4 missing lines in translation file (problem fixed since) I took the opportunity to update the French translation file.

By testing my translations I found a couple of minors things.

But before getting to the heart of the matter, I want to remind you that originally MaxLauncher is a program YOU created for YOU and YOU have chosen to share it with everyone in Open Source.

So you’re not accountable to anyone, take more the following remarks below as a way to exchange on NET, WPF and programming and consider that they are indicatives, not submissives!

MaxLauncher must remain a program for leisure time. Anyone who are not happy with it can switch to an expensive software so kitsch and fancy that it suck all available RAM!

Caption:
[GUI]: something about the GUI or interaction,
[Bugs]: as the name suggests,
[Question]: a simple question.

Gravity meter:
From: ✰✰✰✰✰  = (nothing important)
To: ★★★★★  = (serious case here)



📌 1  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 1.png

In menu [Setting][Options…] I don’t know what the option [Auto select tab] do.
I don’t see any change with or without this option…

👌Find my response in : http://maxlauncher.sourceforge.net/documentation/menu.html


📌 2  ₍ ★✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 2.png

If you navigate manually through the menu (using only keyboard without a mouse) in [Setting][Hotkey…] menu once you are trapped in the [Key:] field it ’s impossible to exit it without using a mouse because the escape combinations’ keys (Esc, Alt+F4, Tab, Shift+Tab…) are detected as Hotkey.


📌 3  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 3.png

(See Fig. 1,2,3) : In menu [Data] ➜ [Organize Data Files…] the field to rename a menu should be higher than its current 18 pixels height so as not to be confused with a ProgressBar.
In fact it should be of the same height as the others (Fig. 2,3,4.)

(See Fig. 4) : Taken to the extreme: we also see that the text of the other fields is not vertically centered. it’s a little like if editBoxs had a "vertical-text-align=up" options.

(See Fig. 5) : Ideally, editBoxs should actually all get the same height and (approximately) be vertically centered as in the Windows example in Fig. 5

Note: No, I'm not a obsessive. It's because I work with fragile’ peoples and I noticed that they relied much more on consistency and visual habits rather than logic with the use of graphical interfaces.


📌 4  ₍ ★✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 4.png

In button’s context menu [Open file location] does not work if the file is in the same directory as maxlauncher (in portable version).

However, if the file is in the same directory as maxlauncher BUT in a subfolder (eg Language, Themes…), the [Open file location] works as expected.

Very bizarre! Perhaps an « explorer.exe + relative empty path ("/" or ".") problem »?



📌 5  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = none

I don’t know what the      Custom Theme Editor      option in the file « English.xaml », line 95 do:

<Sys: String x: Key =" PropertyEditorDialog_Title "> Custom Theme Editor </ sys: String>`

Finding my response from finding my response in question 7 : It’s simply the title of the custom menu dialox box !


📌 6  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 6.png / 📎 = 6a.html / 📎 = 6b.html

In French we must put a space before colons (:) but not in English.
In Asia, they use the fullwidth colons.

(See 6.png) : But the app.cfg, favorite.cfg, and iconcache.mldb variables appear to be hardcoded with their colons. It’s therefore not possible to act on it from a language file.
Ideally it would be convenient to have these variables available in the language’s file with something like:

See attachment 6a.html & 6b.html for idea/example solution.



📌 7  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 7.png

In menu [Setting][Theme…] I don’t know how to activate or use the buttons [Customize] or [Reset]

Find my response in : http://maxlauncher.sourceforge.net/documentation/menu.html
Note: I use MaxLauncher gorillion times a day since 3 years and I just discovered that it get an option to customize themes !!
When I think I have manually made my custom theme all by editing manually .xaml files ... D’oh!


📌 8  ₍ ★✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 8.png

(See 8.png) : In the [Edit Button] window if you only navigate with the keyboard and select the ComboBox 1 [Select…] it does not respond to arrow up, nor arrow down, nor return/enter.

Almost the same problem with the ComboBox 2 [Browse…] which responds only to the arrow down but acting like if we had pressed return for opening the fisrt option [File…]

Theoretically, both ComboBoxs would have to scroll through the options with the arrows’ keys and confirm/launch with return/enter.



📌 9  ₍ ★✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 9.png

(View 9.png) : In the [Edit Button] window I don’t know what they are used for (Group ID:) and (View List) because they are always empty and disabled on my PC.
Find my response in : http://maxlauncher.sourceforge.net/documentation/menu.html


📌 10  ₍ ★★✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 10.png

(See 10.png) : In the [Edit Button] window if you check option [Run as administrator:] on a text or an image, when you launch it: a window opens and close quickly and immediately.

It ’s like if we do a      CMD.exe option ADMIN + path text or image      but it screw up and immediately close.
However, it works with Notepad.exe or Calc.exe, etc.

Is this option only valid for EXE files?


📌 11  ₍ ★★★✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 11.png

From the [window] tab in the contextmenu [Edit Button] window:

[Location/Size _Presets:] seem broken since MaxLauncher version 1.6.0.0…
This issue seems to have already been addressed🐧…

α) MaxLauncher 1.2.0.0 is the latest version that disables the [window] tab when choosing something other than Normal (hide/min/max) to launch an window/application.
See attachment: 11.png

β) MaxLauncher 1.5.0.0 is the latest version where there is no need to set [Window title:] to use [Location/Size _Presets:] in the [window] tab
Note: Resized/Moved operate fine in 1.5.0.0

γ) MaxLauncher 1.6.0.0 is the first version where [Window title:] is now required to activate the [window] tab in order to use [Location/Size _Presets:]
Note: Resized/Moved is broken in 1.6.0.0
It seems that        Bug (s) fixed: 45 Windows set to Normal is moved to the upper-left corner of the screen        break [Location/Size _Presets:] in 1.6.0.0 and above…

We need to clarify this once and for all !

Personally, I love the behavior of version 1.2.0.0. but it seems that the required title is binding for Windows 10, instances or multiples screens🐧

As nobody reads help, PDFs and forums if you want to keep your required title I suggest creating a discrete textbox/label in read-only, disabled, undragable, no-tab-stop, etc. Which explains the functioning.
Something like : see attachment: 11bis.png

But most important seem to first repair the Resized/Moved window option.

🐧:
https://sourceforge.net/p/maxlauncher/discussion/general/thread/d91713cd/ https://sourceforge.net/p/maxlauncher/discussion/general/thread/d91713cd/1f44/f167/d205/attachment/Window%20Sizing%20Behavior.pdf https://sourceforge.net/p/maxlauncher/discussion/general/thread/d91713cd/8bf8/f3b2/attachment/Window%20moving%20and%20sizing.png

📌 12  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 12.png

See attachment: 12.png
I do not know how to test/make these messages appear…


📌 14  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 14.png

(See 14.png) : In menu [File] ➜ [Import…] is this option only to import .MAL files that correspond to old MaxLauncher’s version (MadAppLauncher) to convert them to .MLD?


📌 15  ₍ ✰✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 15.png

If the favorites are corrupted the translation into the file "English.xaml.sample", line 230:

<sys:String x:Key="String_ErrorOpeningFavoritesBarConfig">Error opening FavoritesBar configuration file {0}.</sys:String>

is never taken into account.
Probably the error message is launch before translation is initialized ?


📌 16  ₍ ★✰✰✰✰ ₎
[GUI]  [Bugs]  [Question]
📎 = 16.png

In menu [Setting] ➜ [Hotkey…] once we are in the [Key:] field: if we press [Page Up] key: the program indicates [PageUp] but if we press [Page Down]: it indicates… [Next]!
Shouldn’t it indicate [PageDown]?


I reiterate that MaxLauncher works well in the current state and you can perfectly delete this post without doing anything ! No problem !

Promise, first and last time : I wouldn’t do anymore a time-consuming thread like this one!

Thanks for reading,
Regards.

17 Attachments

Discussion

  • madproton

    madproton - 2017-06-28

    Hi Sarah,

    1 -

    2 - FIXED

    ENTER, ESC, and TAB keys cannot be used as a hotkey. They function as normal keys now. I also added a control template for checkboxes to show the FocusVisualStyle because with a dark background the selection is almost invisible. I also updated your theme.

    I may need to think about this some more.

    3 - FIXED

    It's strange because that is the actual auto height for text boxes. The others were next to labels which are actually taller. Anyway, I changed its height. I also centered all the text in all the labels and text boxes in all the dialog boxes.

    The GUI is actually of some importance because I received a few emails a while back and some people with visual and physical disabilities use this. I think it still works with screen readers. Haven't tested it lately though.

    4 - ?

    I am not 100% sure if I understand this one correctly. So if you use the portable version and assigned for example LICENSE.TXT(same folder location as maxlauncher.exe) to a button, [Open file location] fails? If yes, then the explanation is below.

    Ummm, the target needs a path like C:\IamSoDizzy\Now.txt or .\Now.txt or \IamSoDizzy\Now.txt, these work for me. The problem is this, it is difficult to know if target:=Now.txt only because you can type any command in there that you can execute using the shell. The file can be in one of the ENV paths which may point anywhere (eg. network, external drive) which may not be connected all the time.

    I'll think on this some more. As always, suggestions are most welcome.

    5 -

    6 - FIXED

    I updated all the language files including the sample.

    7 - LOL

    You're not the only one discovering features that have been there for a while now. :-)

    Acutally, customizable themes was one of my major experiments. Not only can you change the fonts, borders, colors, etc. but you can also change most of the inteface using external XAMLs. The included one is very basic because I am using a free library that has a propertygrid (like in WinForms). It was a bit tricky to implement but with a working sample, it is easier. I didn't add any animations and 3D look because it might take up too much resources. I don't want to hear another complaint about memory usage.

    8 - FIXED

    FYI: ALT+DOWN ARROR expands the combo box in .Net. At least that's what I read somewhere. Anyway, the behavior is now like the old WinForms. ENTER and DOWN arrow key opens the dropdown box, UP/DOWN to highlight, and ENTER to select.

    9 -

    10 - ?

    Similar problem as #4. You can enter "notepad" in the target box and check the [Run as administator] and it will work. Only executables can be run as administrator. Basically, for file FooBar, if you create a desktop shortcut and check its properties, if there is an option to run it as an administrator it will work. If not, it will give the error message.

    One way to do it, is to actually specify the program you want to use to open it in the [Target] and use the file as the [Argument]. I know it is not ideal but I think it is a security feature, because file associations can change. So you wouldn't want to run the unknown program with admin privileges.

    Another option is to use the tags <text> or <file> in the [Target] or [Arguments]
    Example #1: [Target] "https://www.google.com/search?q=<text>"
    In some other program, copy some text you want to Google. Open MaxLauncher and click on the button with the above [Target]</text></file></text>

    Example #2: [Target] "C:\windows\system32\mspaint.exe"
    [Arguments] <file></file>

    Copy a xxxx.bmp file on your desktop or File Explorer. By copy, I mean just CTRL+C.
    Open MaxLauncher, and click on the button with the above [Target] and [Arguments] settings.

    http://maxlauncher.sourceforge.net/documentation/kb/10/

    11 - ???

    The window resizing/moving behavior matrix is here http://maxlauncher.sourceforge.net/documentation/kb/21/
    This feature is really tricky. There are several things to consider here. Programs with windows do not always return a window handle. Some programs use some sort of window manager and that spawns child windows. There is no way to communicate with those programs as far as I know. Even then, MaxLauncher would need a background worker to always keep track of windows and their handles that it opens.

    The only consistent way to keep track of windows is with using the window title. The window title is also very useful when finding a window and resizing/moving it to your preffered location as opposed to ALT-TAB. You can just click on the same button and viola, your window is displayed where you expect it.

    Also, with multi-screen support, everything just gets weirder. Some might hae 1-4 monitors with different sizes, resolutions and arrangements. So it is very difficult to calculate where a window should show up.

    There are also windows that you don't want to resize but move only, like calculator. With differnt size monitors, it might show off screen.

    Basically, [Run] Normal without window title just opens the program like you opened it using the [Start] menu.

    I will think about that textbox/label some more. :-) It's a good idea.

    12 -

    a. MessageBox_Expander_Details, MessageBox_Title_LoadingConfiguration and MessageBox_Message_Oktoexit

    To show:

    1. Exit MaxLauncher
    2. Edit app.cfg
    3. Change <AppConfig to <xxxAppConfig
    4. Save file
    5. Open MaxLauncher
    6. MessageBox_Title_LoadingConfiguration is the window title
    7. MessageBox_Message_Oktoexit (Press OK to exit) is the text displayed after the exception summary message.
    8. MessageBox_Expander_Details is the word "Details" next to the Expander icon.

    b. MessageBox_Title_InitializingFavoritesBar

    To show:

    1. Exit MaxLauncher
    2. Edit favorites.cfg
    3. Change <favoritesbardata> to <xxxfavoritesbardata></xxxfavoritesbardata></favoritesbardata>
    4. Save file
    5. Open MaxLauncher
    6. MessageBox_Title_InitializingFavoritesBar is the window title

    c. MessageBox_Message_Oktocontinue and MessageBox_Title_InitializingIconCacheDB

    1. Exit MaxLauncher
    2. Rename your iconcache.mldb to iconcache.mldb.save
    3. Create an empty file and name it iconcache.mldb
    4. Open MaxLauncher
    5. MessageBox_Title_InitializingIconCacheDB is the window title of the error message box.
    6. MessageBox_Message_Oktocontinue (Press OK to continue) is the text displayed after the exception summary message. This is not a critical error. the iconcache will be rebuilt.

    When you're done, you can delete the iconcache.mldb file and rename your old one from iconcache.mldb.save to iconcache.mldb.

    13 - Superstitious?

    14 - YES

    Import is only for MadAppLauncher files (*.mal) files.

    15 - FIXED

    16 - FIXED

    I had to hard code the word "PageDown". It was a problem with the Enumeration of Keys in .Net. For PageUp there are two strings, PageUp and Previous. In that order, PageUp is matched first, so no problem. For PageDown, it is Next and PageDown. Next is matched first that's why it shows Next. :(

    I'm sorry if I've made incorrect assertions. Plese let me know if I made a mistake.

    Thank you so much for your help and suggestions. I am so sorry I am not good with .Net & WPF. I haven't had the time to read more about it. I only look and make changes to this program a few minutes/hours in a month. So thanks for your input, I'm getting a bit more practice.

    Here is the latest build: https://sourceforge.net/projects/maxlauncher/upload/MaxLauncher/Beta/1.7.6388.549/

    I'll check the rest later. Thanks again.

     
  • madproton

    madproton - 2017-06-28

    I updated the EditButtonDialogBox's Run: dropdown box to supoort UP/DOWN/ENTER keys.

    I am thinking I should just move the [Run], [Window title], and [Window process name] to the [Window] tab. So the [Window] tab will always be active and it will be less confusing for users. What do you think?

    Thanks.

     
  • Sarah Nomi

    Sarah Nomi - 2017-06-29

    I think you always have simple, pragmatic and effective ideas.

    I was just looking for an idea on how to activate or deactivate this tab in a clear way for the user without embarking 20 labels or tooltips of explanations ...

    But indeed, a always active’s tab would clearly be less confusing for users and I like the idea of moving de window position / run / etc. in this tab.

    I will come back in few hours for the 16 others points.

     
  • Sarah Nomi

    Sarah Nomi - 2017-06-29

    1  🚫  

    ————————————————————————

    2  ★  Fixed + Suggestion + New Bug

    Fixed
    Tab ➜ standart comportement: perfect for keyboard, disables and screen reader.
    Return ➜ validates and closes dialogBox: perfect.
    Esc ➜ does nothing like in the other dialogBox of the program: perfect.

    Suggestion
    If this key do nothing, why couldn’t it be used?
    I propose to keep only [Tab] and [Enter] as key that works normally and put [Esc] available for hotkey again ?
    Or define [Esc] to close dialogBox? So [Esc] act like Cancel Button and [Enter] as OK Button ?

    New Bug
    All themes works except mine because you have forget to overwrite a </Style> when pasting (📎 2.png)

    So I fixed the error and take the opportinute to update the design of the checkboxes for my theme.
    See (📎 2.html) for revision changes 2 to 3.
    Attachment : Theme_Dark_Red.zip

    ————————————————————————

    3  ★  Fixed + Suggestion

    Fixed
    Everything is perfectly centered. It's beautiful and harmonious : perfect.

    By the way; for disable it’s label, window title and especially existence of unique Alt+Letter code for each options that is important.

    This is why my translation takes so many time: I define and test all my ALT code for total compatibility with screen reader.

    About importance of the GUI, it’s because nowaday people are full of automatisms as result of seeing always the same controls. This is why it’s necessary to define them to a standart aspect and behavior.

    Suggestion
    <Mode I think it’s impossible ’cause it’s hard-coded in .NET ON>
    One last trick to achieve perfection would be to mimic Windows highlighting text.
    A white foreground on a dark blue background is more convenient to look when you select text.
    See Attachment (📎 3.png)
    Let’s be crazy ! Why not even make variables in theme like SelectedForegroundColor & SelectedBackgroundColor?
    <Mode I think it’s impossible ’cause it’s hard-coded in .NET OFF>

    EDIT  ➜  Finded on stackoverflow = can be done in theme. I’m on it.

    ————————————————————————

    4  ★  Fixed + Suggestion

    Fixed
    You understood well.
    I had not thought about all this things...

    Suggestion
    Suggestion? honestly, between us : who will paste a file in the MaxLauncher directory to use it as shortcut in MaxLauncher program?
    Only me. And I already moved this file since…
    I propose to do nothing here, the inherent risk of creating new bugs/problems is far too big compared to the small benefit of being able to launch a file in this directory…
    Wontfix! Next!

    ————————————————————————

    5  🚫  

    ————————————————————————

    6  ★  Fixed

    Fixed
    Everything fine for every languages. Great.

    ————————————————————————

    7  ★  Fixed

    Fixed
    I also discovered the Knowledge Base’s page yesterday. I had never clicked this thing because the word "KB" (like the too often broken windows’s updates) was frightened me ;)

    In short: never add gadget, animation or 3D effects because it’s absolutely neither the purpose nor the idea of MaxLauncher.

    I tested at least a dozen other launchers and if I finished with MaxLauncher it’s for its super efficiently, simplicity and fast fonctionning.

    ————————————————————————

    8  ★  Fixed

    Fixed
    As I said in point 3) about the GUI: the behaviors/response of controls are almost anchored in the collective unconscious. So with your fix not only the combobox behave perfectly with keyboard navigation but in addition they become compatible with accessibility.

    ————————————————————————

    9  🚫  

    ————————————————————————

    10  ★  Fixed

    Fixed
    Problem fixed. The proposed work-around works perfectly.
    You want a good joke? It was precisely me who asked for the return of the <file> option…( https://sourceforge.net/p/maxlauncher/bugs/28 )</file>

    ————————————————————————

    11  ★  More to come…

    More to come

    I don’t have problems every time (randomly). It comes from how I testing the problem…
    Anyway, I will wait with next update.

    maxlauncher_1.6.0.0_portable.zip
    Extract to maxlauncher_1.6.0.0_portable
    Run MaxLauncher.exe
    A popup « You must first open or create a new data file using the File menu! » pop up.
    Click « OK »
    A popup « A new version is available bla bla bla »
    Click « No »
    Right-click [F5] -> Edit
    in Target: write : Notepad
    in _Window title: write Notepad
    Click Window tab
    Location/Size _Presets: Top Right
    Close editor with [OK] button
    Click [F5]
    Wait a few, the window jump Top Right.

    Now donwload last beta 1.7.6388.549 or release 1.7.0.0
    Do exactly the same except the popup update that would nor popup.
    Play with Location/Size _Presets

    ————————————————————————

    12  ★  Fixed + Old Bug

    Fixed
    I see that you fix the problem by reassembleed the language initialization block before FavoritesBar and IconCache initialization in Private Sub block MainWindow_Loaded
    Errors are translated. Perfect.

    Old Bug
    Unfortunately the problem still exists for AppConfig BUT DO NOT TOUCH ANYTHING !!
    It is not in the same sub as FavoritesBar and IconCache and in addition I see that the block ConfigManager.LoadAll() has been commented and moved to Private Sub Application_Startup. So it has already been debugged for other reasons !

    Honestly it's super sensitive to fix this detail!
    Seriously : how many people are going to have a configuration loading error? And even if so: How many people don’t understand this simple english terms « error, OK, Exit »?

    Most important, this bug would had been noted with the number « It Who Cannot Be Named » that come after 12: it’s a sign that we must touch nothing here !
    Wontfix! Next!

    ————————————————————————

    Number I won’t write  ★  Fixed

    Fixed
    No, I'm not supertitious! I said myself I'll skip the n°13 just to see if he will notice and say something… ;)
    Lucky you, I also wanted to make the joke with n°4 and 14, but this numbers are only bad know in Asia… ( https://en.wikipedia.org/wiki/Tetraphobia )

    ————————————————————————

    14  ★  Fixed

    Fixed
    Perfect. (I have to find a term for my translation that makes it understood that import means converting an old configuration)

    ————————————————————————

    15  ⤴️  See 12

    ————————————————————————

    16  ★  Fixed

    Fixed
    Always the same old story of consistency. You could set either the PageUp/PageDown pair or the Previous/Next pair but don’t mix them.
    Please note that here you are working to fix some .NET bul**hit! Request for royalties to μ$oft!

    ————————————————————————

    We are close to the end! 😌😌😌

    During all our exchange you surprised me by your reactivity and your extraordinary efficiency.
    Last but not least I notice a great work on documentation, help and KB.
    If only Mozilla or Wikipedia could have a guy like you!

     

    Last edit: Sarah Nomi 2017-07-02
  • Sarah Nomi

    Sarah Nomi - 2017-07-07

    New Beta, New ticket !

    I will open a new ticket with everything updated for the new last beta release.

    You can close here !
    Thank you !

     

    Last edit: Sarah Nomi 2017-07-07
  • madproton

    madproton - 2017-07-09
    • Description has changed:

    Diff:

    --- old
    +++ new
    @@ -1,4 +1,3 @@
    -
     Hi Roberto,
    
     After the story of the 4 missing lines in translation file (problem fixed since) I took the opportunity to update the French translation file.
    
    • status: open --> closed
    • assigned_to: madproton
     

Log in to post a comment.

MongoDB Logo MongoDB