cbanack / comic-vine-scraper

An add-on script for ComicRack that lets you copy details from Comic Vine into your comic books.
255 stars 48 forks source link

Scraper dialog windows too small, can't be resized #435

Closed seemonkey08 closed 6 years ago

seemonkey08 commented 8 years ago

All my scraper windows are very small. I'm running windows 10 pro 64 bit. Other comicrack dialog boxes are normal. Initially installed the latest version 1.0.92 on a clean install of comicrack. Uninstalled that and tried 1.0.91 which has the same issue.

comicvinescraper

cbanack commented 8 years ago

Perhaps you are running some other program that manages window positions or sizes? Or there's something else unusual about your system? There are many other people (myself included) that are running Comic Vine Scraper in Windows 10 64 bit who are not experiencing this problem. (You are the first that I've heard of to run into this.)

So the first step to solving this problem will be to figure out what aspect of your machine setup is causing it. Unfortunately, that's not something I can do. But if you can find a cause, then I might be able to duplicate the bug on my computer, and then there's a chance I might be able to fix it.

seemonkey08 commented 8 years ago

It's a surface book pro, the only thing I can think would be the process that switches it to tablet mode...I don't have anything else running that would control window size. Is there a parameter I can enter on advanced settings that would force the window to a bigger size maybe?

cbanack commented 8 years ago

Unfortunately no, there is no setting for window size in the app. The size of most windows in the plugin is hard coded into the app. A few Windows are resizable.

The fact that you are running it on a tablet is definitely a potential reason for the problem. If I had access to a surface tablet it would be a lot easier for me to try finding a way to fix this.

One thing that might work is running Comic Rack (and thus all its plugins) in Windows compatibility mode: http://www.lovemysurface.net/windows-application-compatibility-mode/

If that works, I'd like to hear about it, because it would give me a concrete starting point to try to find a solution.

seemonkey08 commented 8 years ago

Yep, definitely something to do with the tablet-ness of it. I've tried a couple different compatibility settings, none changed the dialog size issue, now all my normal comicrack menus are huge lol. But it doesn't seem to be an issue with this plugin, I installed library organizer and it does the same. I'll keep testing

wilburSOMA commented 8 years ago

According to cYo this is due to the use of winforms running on a high resolution monitor, such as 4K. I have the same issue running on Windows 10. cYo enhanced his latest version of ComicRack to run high resolution and left a comment regarding addins such as scraper needing similar development to be supported at HD resolutions.

cbanack commented 8 years ago

Do you have a link to the thread where he discusses this? The problem is, I don't have a 4k monitor, so there's no way to test any change I make. If it is a simple fix, I might be able to do it 'blind' and have someone else like you test it out.

Otherwise, I may have to rely on someone else to submit a patch.

wilburSOMA commented 8 years ago

http://comicrack.cyolito.com/forum/8-help/39178-surface-4-pro-almost-perfect-for-comics-but-two-problems?start=10#44780

I'd be willing to test.

cbanack commented 8 years ago

Unfortunately, the scraper's user interface is entirely layed-out using absolute pixel co-ordinates (which is why it's not working very well in high DPI mode.) I wish I hadn't done it that way, because it's not a very future-proof way to lay out a user interface. But I was just learning winforms as I went, and didn't know any better. :/

As far as I can tell, the proper fix will involve redoing the layout all of the scraper's UI using a flow layout instead of absolute pixel sizes. This is no small task, and more importantly, it's going to require a lot of trial and error--something that I can't do without a high DPI screen.

https://stackoverflow.com/questions/22735174/how-to-write-winforms-code-that-auto-scales-to-system-font-and-dpi-settings

Or perhaps there is some easier way to do this that I'm not aware of? Something involving just scaling the entire app maybe?

Otherwise, the fix is going to have to wait until either 1) I get a high DPI device (maybe one day) and find some spare time, or 2) someone with a high DPI device submits a patch that does not break the scraper on regular DPI devices.

cbanack commented 8 years ago

This is also useful information for fixing this problem:

http://www.telerik.com/blogs/winforms-scaling-at-large-dpi-settings-is-it-even-possible-

ghost commented 8 years ago

this guide work perfect http://www.danantonielli.com/adobe-app-scaling-on-high-dpi-displays-fix/

just download photoshop.exe.manifest and rename it to ComicRack.exe.manifest and paste it to comirack folder

wilburSOMA commented 8 years ago

Thanks optimus0. That worked nicely.

cbanack commented 6 years ago

As I think we've established, this problem occurs on high DPI displays. One easy way to see it is simply to go to your display settings in Windows, and set the Scaling to 150%. Log out, log back in, run ComicRack and the Scraper, and you will see the problem.

There isn't really anything I can do to fix this, short of rewriting the entire user interface of the scraper. Unfortunately, I originally wrote it using absolutely postioned and sized elements in the old-style Windows GDI, so it is pretty helpless in the face of a high DPI display.

There IS, however, a way to work around the problem using Windows compatibility features. I've written a wiki page describing what you can do.