apianti Posted December 23, 2018 Share Posted December 23, 2018 8 hours ago, Awesome Donkey said: Yes I am using the build you posted yesterday (but I did have to rename CLOVER.efi to CLOVERX64.efi if that makes any difference) along with the current DarkBootX theme (v1.7) with a custom icon for macOS Mojave (doesn't make a difference if I use the original one). Random thought; would forcing screen resolution in Clover cause it to happen? If so, I have mine forced to display at 2560x1440. But yeah, MainEntries are still off-center for me. Second random thought; I also use only custom entries too, perhaps that's why it happens? EDIT: I removed the 2560x1440 screen resolution, and it didn't make a difference so it isn't that. EDIT 2: Switched from custom entries to auto and that doesn't make a difference either, MainEntries are still off-center for me. I'm stumped now. Are you sure you aren't using \EFI\BOOT\BOOTX64.efi as your clover and thats what needed replaced? 1 Link to comment Share on other sites More sharing options...
blackosx Posted December 23, 2018 Share Posted December 23, 2018 (edited) 8 hours ago, Awesome Donkey said: Yes I am using the build you posted yesterday (but I did have to rename CLOVER.efi to CLOVERX64.efi if that makes any difference) along with the current DarkBootX theme (v1.7) with a custom icon for macOS Mojave (doesn't make a difference if I use the original one). Random thought; would forcing screen resolution in Clover cause it to happen? If so, I have mine forced to display at 2560x1440. But yeah, MainEntries are still off-center for me. Second random thought; I also use only custom entries too, perhaps that's why it happens? EDIT: I removed the 2560x1440 screen resolution, and it didn't make a difference so it isn't that. EDIT 2: Switched from custom entries to auto and that doesn't make a difference either, MainEntries are still off-center for me. I'm stumped now. Thanks for this new report and for details of what you've tried. This will need some further testing when I get time. EDIT: I've just tested again, this time using a new build of Clover with a couple of patches applied. This time I see it too.. This gives me something to work on... Edited December 23, 2018 by blackosx Link to comment Share on other sites More sharing options...
Badruzeus Posted December 23, 2018 Share Posted December 23, 2018 (edited) 9 hours ago, Awesome Donkey said: Yes I am using the build you posted yesterday (but I did have to rename CLOVER.efi to CLOVERX64.efi if that makes any difference) along with the current DarkBootX theme (v1.7) with a custom icon for macOS Mojave (doesn't make a difference if I use the original one). Random thought; would forcing screen resolution in Clover cause it to happen? If so, I have mine forced to display at 2560x1440. But yeah, MainEntries are still off-center for me. Second random thought; I also use only custom entries too, perhaps that's why it happens? EDIT: I removed the 2560x1440 screen resolution, and it didn't make a difference so it isn't that. EDIT 2: Switched from custom entries to auto and that doesn't make a difference either, MainEntries are still off-center for me. I'm stumped now. You were using r4818 (could be from SF release?) instead of blackosx's r4817 which is different, few things were changed from r4785 commit. My attached r4819 below is another "different" bcoz I reverted back r4785 commit to r4784 instead of changed them (I really didn't understand should change to what LoL). Now we have 3 diff. Clover's; I hope you're bit confuse but for testing purpose I guess you could preview them using VM instead of real HW (or via USB FlashDisk). #EDIT: Or you just forgot to copy blackosx's CLOVERX64.efi to \EFI\BOOT\ and rename it to BOOTX64.efi r4819-Test.zip Edited December 23, 2018 by Badruzeus 1 Link to comment Share on other sites More sharing options...
blackosx Posted December 23, 2018 Share Posted December 23, 2018 3 minutes ago, Badruzeus said: My attached r4819 below is another "different" bcoz I reverted back r4785 commit to r4784 r4819-Test.zip And the icons are centred as you said, before 4785. 1 Link to comment Share on other sites More sharing options...
Badruzeus Posted December 23, 2018 Share Posted December 23, 2018 2 minutes ago, blackosx said: And the icons are centred as you said, before 4785. Yes, but I'm just afraid if Vector theme layout (that currently I'm working on) would be affected, it looks similar with what SF has but who know; I was reverting it when r4808 arrived BTW (which I believe another few changes were made on those files from r4785). Link to comment Share on other sites More sharing options...
blackosx Posted December 23, 2018 Share Posted December 23, 2018 16 minutes ago, Badruzeus said: Yes, but I'm just afraid if Vector theme layout (that currently I'm working on) would be affected, it looks similar with what SF has but who know; I was reverting it when r4808 arrived BTW (which I believe another few changes were made on those files from r4785). The main change for centred icons is down to the line discussed here For designing vector themes, sure, the layout is still new and under development, but I believe as long as you design as per the latest Clovy, then you'll be good. Though I wouldn't rush to create lots of vector themes just yet as I'm sure settings will change as bugs are ironed out and new ideas/settings are implemented. But having said that, it's only by creating new vector themes that bugs and other ideas may arise. 1 Link to comment Share on other sites More sharing options...
blackosx Posted December 23, 2018 Share Posted December 23, 2018 (edited) @Awesome Donkey Just to be sure, can you please test try DarkBootX with this version of Clover? CLOVER.efi.zip EDIT: And of course rename CLOVER.efi to either CLOVERX64.efi or BOOTX64.efi if you need. Edited December 23, 2018 by blackosx Link to comment Share on other sites More sharing options...
Badruzeus Posted December 23, 2018 Share Posted December 23, 2018 (edited) 33 minutes ago, blackosx said: The main change for centred icons is down to the line discussed here For designing vector themes, sure, the layout is still new and under development, but I believe as long as you design as per the latest Clovy, then you'll be good. Though I wouldn't rush to create lots of vector themes just yet as I'm sure settings will change as bugs are ironed out and new ideas/settings are implemented. But having said that, it's only by creating new vector themes that bugs and other ideas may arise. If allowed I'll propose "a key" to disable vector GUI and or SVG support on config.plist (if it' s possible) for user to decide; I got significant performance degradation with (probably, my Nvidia Fermi graphics on 2nd gen?), but no problem with Vesa on a laptop that comes with 4th Gen IntelHD 4xxx (Clovy is well loaded for no more than 2 secs, but mine took about 20-30 secs.. I use 1360x768 for ScreenResolution to get it closer to native res, which on Intel HD I changed nothing to get a proper native res on Clover GUI.. or could bcoz something else which I don't know what is it, dynamic DayLight? I don't use it btw). Yes, apianti has told many times that how icons drawn on GUI were changed since Vector introduced, though. #EDIT: Or bcoz I've installed too many themes (more than 60 items lol), since now I play with VM a lot instead of real HW for preview purpose, I think need to remove them and report later. Thanks anyway. Edited December 23, 2018 by Badruzeus Link to comment Share on other sites More sharing options...
Awesome Donkey Posted December 23, 2018 Share Posted December 23, 2018 19 minutes ago, blackosx said: @Awesome Donkey Just to be sure, can you please test try DarkBootX with this version of Clover? CLOVER.efi.zip EDIT: And of course rename CLOVER.efi to either CLOVERX64.efi or BOOTX64.efi if you need. We've got a winner! It's nice and center now, thanks! 1 Link to comment Share on other sites More sharing options...
blackosx Posted December 23, 2018 Share Posted December 23, 2018 (edited) 19 minutes ago, Badruzeus said: If allowed I'll propose "a key" to disable vector GUI and or SVG support on config.plist (if it' s possible) for user to decide I don't think a key is necessary as surely the theme entry in either nvram or config.plist does this? 19 minutes ago, Badruzeus said: I got significant performance degradation with (probably, my Nvidia Fermi graphics on 2nd gen?), but no problem with Vesa on a laptop that comes with 4th Gen IntelHD 4xxx (Clovy is well loaded for no more than 2 secs, but mine took about 20-30 secs.. Can you post a debug log to show timings? This may help identify where any lags are happening. 19 minutes ago, Badruzeus said: I use 1360x768 for ScreenResolution to get it closer to native res, which on Intel HD I changed nothing to get a proper native res on Clover GUI.. or could bcoz something else which I don't know what is it, dynamic DayLight? I don't use it btw Shouldn't make much of a different which resolution you use. You could always test with BGM_SVG as that contains many of the possible variations of content, for example many icons and day/night versions of each. 19 minutes ago, Badruzeus said: Yes, apianti has told many times that how icons drawn on GUI were changed since Vector introduced, though. Yes, there have been lots of changes to implement vector themes so there may well be bugs that need addressing. 6 minutes ago, Awesome Donkey said: We've got a winner! It's nice and center now, thanks! Great. Thanks for confirming. For ref: diff is Binary files /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/.DS_Store and /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/.DS_Store differ diff -uNr /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/Version.h /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/Version.h --- /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/Version.h 1970-01-01 01:00:00.000000000 +0100 +++ /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/Version.h 2018-12-23 22:58:50.000000000 +0000 @@ -0,0 +1,4 @@ +#define FIRMWARE_BUILDDATE "2018-12-23 22:58:50" +#define FIRMWARE_REVISION L"4819" +#define REVISION_STR "Clover revision: 4819" +#define BUILDINFOS_STR "Args: -D USE_LOW_EBDA -a X64 -b DEBUG -t XCODE8 -n 5 | OS: 10.14.2 | XCODE: 10.1" diff -uNr /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/libeg/VectorGraphics.c /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/libeg/VectorGraphics.c --- /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/libeg/VectorGraphics.c 2018-12-23 23:35:46.000000000 +0000 +++ /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/libeg/VectorGraphics.c 2018-12-23 21:22:31.000000000 +0000 @@ -107,6 +107,9 @@ if ((strstr(IconName, "selection_big") != NULL) && (!GlobalConfig.SelectionOnTop)) { GlobalConfig.MainEntriesSize = (int)(IconImage->width * Scale); //xxx row0TileSize = GlobalConfig.MainEntriesSize; // + (int)(16.f * Scale); + DBG("GlobalConfig.SelectionOnTop = FALSE\n"); + DBG("row0TileSize=%d\n",(int)row0TileSize); + DBG("MainEntriesSize=%d\n",(int)GlobalConfig.MainEntriesSize); DBG("main entry size = %d\n", GlobalConfig.MainEntriesSize); } if ((strstr(IconName, "selection_small") != NULL) && (!GlobalConfig.SelectionOnTop)) { @@ -404,10 +407,13 @@ GlobalConfig.ThemeDesignHeight = (int)SVGimage->height; GlobalConfig.ThemeDesignWidth = (int)SVGimage->width; if (GlobalConfig.SelectionOnTop) { + DBG("GlobalConfig.SelectionOnTop = TRUE\n"); row0TileSize = (INTN)(144.f * Scale); row1TileSize = (INTN)(64.f * Scale); GlobalConfig.MainEntriesSize = (INTN)(128.f * Scale); } + DBG("row0TileSize=%d\n",(int)row0TileSize); + DBG("MainEntriesSize=%d\n",(int)GlobalConfig.MainEntriesSize); DBG("parsing theme finish\n"); return EFI_SUCCESS; } diff -uNr /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/refit/menu.c /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/refit/menu.c --- /Volumes/Data/VCS/SVN/cloverefiboot-code/rEFIt_UEFI/refit/menu.c 2018-12-16 19:16:50.000000000 +0000 +++ /Users/blackosx/src/UDK2018/Clover/rEFIt_UEFI/refit/menu.c 2018-12-23 22:58:16.000000000 +0000 @@ -4053,7 +4053,9 @@ MaxItemOnScreen = (UGAWidth - (int)((ROW0_SCROLLSIZE * 2)* GlobalConfig.Scale)) / (EntriesWidth + EntriesGap); //8 CountItems(Screen); InitScroll(State, row0Count, Screen->EntryCount, MaxItemOnScreen, 0); - row0PosX = (UGAWidth + EntriesGap - (EntriesWidth + EntriesGap) + //row0PosX = (UGAWidth + EntriesGap - (EntriesWidth + EntriesGap) + // * ((MaxItemOnScreen < row0Count)?MaxItemOnScreen:row0Count)) >> 1; + row0PosX = (UGAWidth + (GlobalConfig.TypeSVG ? EntriesGap : 8) - (EntriesWidth + EntriesGap) * ((MaxItemOnScreen < row0Count)?MaxItemOnScreen:row0Count)) >> 1; row0PosY = (int)(((float)UGAHeight - LayoutMainMenuHeight * GlobalConfig.Scale) * 0.5f + LayoutBannerOffset * GlobalConfig.Scale); Time out.. bed time.. Edited December 23, 2018 by blackosx 1 Link to comment Share on other sites More sharing options...
Badruzeus Posted December 24, 2018 Share Posted December 24, 2018 (edited) 17 minutes ago, blackosx said: I don't think a key is necessary as surely the theme entry in either nvram or config.plist does this? I didn't check my nvram either; is there any issue if nvram's Clover.Theme="Name" and Theme=Name on config.plist are different? 17 minutes ago, blackosx said: Can you post a debug log to show timings? This may help identify where any lags are happening. File attached, just not sure why logs are repeated on one debug file. debug.log_r4819_a43sj.zip #EDIT: Oh yes, they're different: 1:517 0:001 Default theme: Nightwish256 5:344 0:001 theme Apocalypse defined in NVRAM found and theme.plist parsed Edited December 24, 2018 by Badruzeus Link to comment Share on other sites More sharing options...
blackosx Posted December 24, 2018 Share Posted December 24, 2018 (edited) 7 hours ago, Badruzeus said: I didn't check my nvram either; is there any issue if nvram's Clover.Theme="Name" and Theme=Name on config.plist are different? No issue. Any theme entry in nvram will take precedence over a theme entry in config.plist. 7 hours ago, Badruzeus said: File attached, just not sure why logs are repeated on one debug file. debug.log_r4819_a43sj.zip Weren't you saying you experience long delays with the Clovy theme? Your log shows you only loading your Apocalypse raster theme. 5:209 0:001 === [ InitTheme ] ========================================= 5:376 0:001 Chosen theme Apocalypse 9:067 0:424 GUI ready 5:252 0:001 === [ InitTheme ] ========================================= 5:421 0:001 Chosen theme Apocalypse 9:189 0:413 GUI ready 5:886 0:001 === [ InitTheme ] ========================================= 6:076 0:001 Chosen theme Apocalypse 9:900 0:431 GUI ready 5:930 0:001 === [ InitTheme ] ========================================= 6:099 0:001 Chosen theme Apocalypse 9:967 0:432 GUI ready 5:852 0:001 === [ InitTheme ] ========================================= 6:032 0:001 Chosen theme Apocalypse 9:811 0:428 GUI ready Edited December 24, 2018 by blackosx Link to comment Share on other sites More sharing options...
Badruzeus Posted December 24, 2018 Share Posted December 24, 2018 (edited) 33 minutes ago, blackosx said: No issue. Any theme entry in nvram will take precedence over a theme entry in config.plist. Weren't you saying you experience long delays with the Clovy theme? Your log shows you only loading your Apocalypse raster theme. Oh yes, I removed it BTW.. last time using it on real HW was with r4784 or earlier. Will do more tests with vector theme. My bad, the issue about slow loading vector GUI probably has been resolved with recent Clover revs. Edited December 24, 2018 by Badruzeus Link to comment Share on other sites More sharing options...
blackosx Posted December 24, 2018 Share Posted December 24, 2018 (edited) 28 minutes ago, Badruzeus said: Oh yes, I removed it BTW.. last time using it on real HW was with r4784 or earlier. Will do more tests with vector theme. My bad, the issue about slow loading vector GUI probably has been resolved with recent Clover revs. Ok. No problem. On 12/22/2018 at 1:30 PM, Badruzeus said: @Slice Sorry for another report. We have weird scrollbar appearance since r4811, only bar_fill & scroll_fill are shown properly (especially if they contain Alpha). Thanks. So is this still an issue? I've just tested your DarkBoot theme on my hack with latest Clover build and see the scrollbar is okay, but then do I need to check on a lighter background? Besides, WTF happened to vertically positioning of logo? Is this another new bug? I see it on all raster themes.... EDIT: It seems this only happens if I boot with a default vector theme, then change to a raster theme from within the GUI. time out. gotta go out now. Edited December 24, 2018 by blackosx 1 Link to comment Share on other sites More sharing options...
Badruzeus Posted December 24, 2018 Share Posted December 24, 2018 (edited) 35 minutes ago, blackosx said: So is this still an issue? I've just tested your DarkBoot theme on my hack with latest Clover build and see the scrollbar is okay, but then do I need to check on a lighter background? About scrollbar currently: Yes. Even if I fill layer with non-transparent color, but drawn on top transparent background; it'll show weird black color over it. 35 minutes ago, blackosx said: Besides, WTF happened to vertically positioning of logo? Is this another new bug? I see it on all raster themes.... I remember have reported this issue before (on vector theme thread): If Vector theme is used by default, then switched to Raster theme; Raster's Banner positioning would follow vector has. No issue if Raster theme is the default (till it changed to vector, then switched back). Edited December 24, 2018 by Badruzeus Link to comment Share on other sites More sharing options...
Badruzeus Posted December 24, 2018 Share Posted December 24, 2018 @blackosx Weird, on my case with r4820 if Clovy (vector) is used by default, then switched to Raster > Banner positioning for Raster theme will become upper (not lower as seen on your screenshot). Uhmmb, the only diff. from my attached CLOVER below is I just added on ../rEFIt_UEFI/entry_scan/loader.c (for KDE Neon Linux entry): ... { L"\\EFI\\neon\\grubx64.efi", L"KDE Neon EFI boot menu", L"neon,linux", "KDE Neon" }, #else ... { L"\\EFI\\neon\\grub.efi", L"KDE Neon EFI boot menu", L"neon,linux", "KDE Neon" }, #endif (Screenshot was using 1920x1080 res virtually). r4820-EDK2.zip Link to comment Share on other sites More sharing options...
Slice Posted December 24, 2018 Author Share Posted December 24, 2018 @blackosx look row0width = (EntryWidth + EntryGap) * Num - EntryGap; // without last entrygap row0pos = (UGAWidth - row0width) / 2; So the commit 4785 is right. The issue is somewhere else. 1 Link to comment Share on other sites More sharing options...
Slice Posted December 24, 2018 Author Share Posted December 24, 2018 Why EntriesWidth = GlobalConfig.MainEntriesSize + (16 * row0TileSize) / 144; May be better just EntriesWidth = GlobalConfig.MainEntriesSize; ? 1 Link to comment Share on other sites More sharing options...
Badruzeus Posted December 24, 2018 Share Posted December 24, 2018 (edited) 2 hours ago, Slice said: Why EntriesWidth = GlobalConfig.MainEntriesSize + (16 * row0TileSize) / 144; May be better just EntriesWidth = GlobalConfig.MainEntriesSize; ? Using your option with bigger than 128px for MainEntries, horizontal allignment issue is back and also cropped when item is highlighted (Selection_big). But Clovy looks better (well centered, no longer has 8px gap to left side) Edited December 24, 2018 by Badruzeus 1 Link to comment Share on other sites More sharing options...
luky35 Posted December 24, 2018 Share Posted December 24, 2018 @Badruzeus If you have made Clovy themes 128px, I can test you on my hackintosh computer. Link to comment Share on other sites More sharing options...
Ingwar77 Posted December 24, 2018 Share Posted December 24, 2018 r4822 looks good despite the unexpected loss of the night theme in Clovy 8 PM (GMT+3) 1 Link to comment Share on other sites More sharing options...
blackosx Posted December 24, 2018 Share Posted December 24, 2018 (edited) 10 hours ago, Slice said: @blackosx look row0width = (EntryWidth + EntryGap) * Num - EntryGap; // without last entrygap row0pos = (UGAWidth - row0width) / 2; So the commit 4785 is right. The issue is somewhere else. 8 hours ago, Slice said: Why EntriesWidth = GlobalConfig.MainEntriesSize + (16 * row0TileSize) / 144; May be better just EntriesWidth = GlobalConfig.MainEntriesSize; ? This is great for themes with 128px icons. Settings.c has GlobalConfig.MainEntriesSize = 128; But other themes use different sizes, for example DarkBootX icon sizes are 160px wide and BGM256 icon sizes are 256px wide. I was thinking maybe the easiest solution is to allow designer to define icon width in theme.plist, but there is already a Theme->Layout->MainEntriesSize setting which I'd forgotten about, though it gives different result. https://clover-wiki.zetam.org/Design MainEntriesSize - The size of the main device icons is set internally in the code to 128. Changing this value will instruct Clover to scale the device icons. For example, using a value of 256 on a theme with 128px icons will show the device icons scaled up to 256px. Note: badges will not be affected and will more than likely need repositioning. So needs more attention.. To be looked at after Christmas Edited December 24, 2018 by blackosx Link to comment Share on other sites More sharing options...
blackosx Posted December 24, 2018 Share Posted December 24, 2018 12 hours ago, Badruzeus said: About scrollbar currently: Yes. Even if I fill layer with non-transparent color, but drawn on top transparent background; it'll show weird black color over it. I remember have reported this issue before (on vector theme thread): If Vector theme is used by default, then switched to Raster theme; Raster's Banner positioning would follow vector has. No issue if Raster theme is the default (till it changed to vector, then switched back). Scrollbar fix is to change this line https://sourceforge.net/p/cloverefiboot/code/4822/tree/rEFIt_UEFI/refit/menu.c#l3310 from: Total = egCreateFilledImage(ScrollTotal.Width, ScrollTotal.Height, FALSE, &MenuBackgroundPixel); to: Total = egCreateFilledImage(ScrollTotal.Width, ScrollTotal.Height, TRUE, &MenuBackgroundPixel); 1 Link to comment Share on other sites More sharing options...
Badruzeus Posted December 24, 2018 Share Posted December 24, 2018 2 minutes ago, blackosx said: Absolutely. That works great for themes with 128px icons. Settings.c has GlobalConfig.MainEntriesSize = 128; But other themes use different sizes, for example DarkBootX icon sizes are 160px wide and BGM256 icon sizes are 256px wide. I was thinking maybe the easiest solution is to allow designer to define icon width in theme.plist, but there is already a Theme->Layout->MainEntriesSize setting which I'd forgotten about, though it gives different result. https://clover-wiki.zetam.org/Design MainEntriesSize - The size of the main device icons is set internally in the code to 128. Changing this value will instruct Clover to scale the device icons. For example, using a value of 256 on a theme with 128px icons will show the device icons scaled up to 256px. Note: badges will not be affected and will more than likely need repositioning. So needs more attention.. To be looked at after Christmas Thanks for r4820 commit, could be temporary solution but it just worked. Merry Christmas to you and your family. 1 1 Link to comment Share on other sites More sharing options...
blackosx Posted December 24, 2018 Share Posted December 24, 2018 Merry Christmas to you and your family too 1 1 Link to comment Share on other sites More sharing options...
Recommended Posts