nostalgy-xpi
nostalgy-xpi copied to clipboard
Update Info Window too large
Win7, TB 78.5
I use the display 150% settings in Win7. with thi setting the update Info Window is too large, upper buttons cannot be operated and the donate button is only partially visible. Here is a screenshot:
here the same window with display 100% settings:
TB problem? I have the same with the new email notification box: if there are many emails, I see a part of the box, without even an x for closing and impossible to move.
The popup has a given height of 700 (?? don't remember exactly) px. So it fits onto a 1200x 800 laptop in 100%. How many vertical px at your side? Does MS multiply the px by 150%, even if these px don't exist?
Yes, we just switched our software from WinForms to WPF for that reason.
If users change the percentage, which lots do due to the stupid high pixel density on laptops now a days (or the stupid way windows deals with this), all windows made with old APIs get blown up by that faktor. If they are to large they just get cut. A good strategy for developers is to plan for a max of 200%, if you explicitly set the pixels in code or screen development tool. An other way is to scale windows dynamically in relation to screen.width and screen.height.
By the way, just did the test with Win10, same issue.
max of 200%: I can't just set half height for everybody because scaling might be above 100%.
But I see the problem - it is what I have in the new mail notification.
One would need a fixed top position so that one can grab it and change size, and scrollbars.
Possible workaround?: can't one move mousecursor by keyboard? Maybe that way get the top of the window.
Is there a way to find scaling? Even screen size wouldn't help, it could be on a 10 in convertible or a 27 in monitor, and one might be near 100%, the other not.
Hi opto, unfortunately I have no experience with the UI of these TB Extensions since I develop in Visual Studio.
The general issues seem the same thouhg:
-
In VS I can set the width / heigth properties to Pixels, cm or a virtual units which scale (mostly) automatically. I personally prefer to retriefe the real pixels with something like screen.width / scree.height (might be different for you) and then set those in the loading event of the window. This gives you full control and all automatic procedures from have proofed to fail at some point in the past.
-
You need to find out if your screen.width / scree.height properies deliver the physical or the converted (incl. e.g. 200%) pixels. Some Apis also have special proerties for this.
-
Once you know this it gets easy. In your wind load event e.g. mywindow.width = screen.width (or multiply with any percentage if you want to occupie only a part of the screen) mywindow.heigth = screen.heigth
-
With fixed Fontsize then write your text into a a control that offers horizontal and vertical scroll bars. The master solution would be to adopt the Fontsize by measuring e.g. the ouput width of a line and changing font size accordingly. But that be very cumbersome ....
What is the actial Language this extension is written ?
Is it possible that the issue with the missing folderwindow width setting wich I described here: https://github.com/opto/nostalgy-xpi/issues/38 is also related to this. Is the the setting maybe hidden so that I cannot se it ?
I actually have a similar problem with the Preferences Window. On a Win 10 with 150% screen scaling, when I have many rules, the Windows gets larger than the screen height and makes the buttons at the bottom of the window unusable because they're outside the visible screen area.