Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Using OnReadyToShow to display the main window in Blazor does not seem to work with Show set to false #361

Closed
Dotneteer opened this issue Jan 4, 2020 · 6 comments
Assignees
Labels
Milestone

Comments

@Dotneteer
Copy link

Dotneteer commented Jan 4, 2020

ElectronNET version: 7.30.2
.NET Core 3.0.1 (produces the same issue with v3.1.0)

(project that reproduces the behavior is attached)

BlazorOnReadyToShowIssue.zip

Create an ElectronNET based Blazor project with the standard steps

  1. mkdir BlazorOnReadyIssue
  2. cd BlazorOnReadyIssue
  3. dotnet new blazorserver --no-https
  4. dotnet add package ElectronNET.API
  5. dotnet new tool-manifest
  6. dotnet tool install ElectronNET.CLI
  7. dotnet electronize init
  8. Set up Program.cs:
// ...
public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureWebHostDefaults(webBuilder =>
        {
             webBuilder
                 .UseStartup<Startup>()
                 .UseElectron(args);  // --- Added this
        });
// ...
  1. Set up Startup.cs:
// --- At the end of Configure
// ...
Task.Run(async () =>
{
    var browserWindow = await Electron.WindowManager.CreateWindowAsync(
        new BrowserWindowOptions
        {
            Title = "OnReadyToShow",
            Width = 1152,
            Height = 864,
            Show = false // --- When set to true, project works properly
        });
    browserWindow.OnReadyToShow += () => browserWindow.Show();
});
  1. Run the project (either with Ctrl+F5 or electronize start)

Expected behavior: The Electron Shell window is displayed with the Blazor App.

Issue: The Electron Shell window does not display.

VsDebugConsole_mpnXKwDexe
Taskmgr_5k2ICKnU0m

Whenever I change the Show property of BrowserWindopOptions to true, the project works fine, but, of course, for a few seconds an empty page is displayed according to the normal behavior.

@Dotneteer Dotneteer added the bug label Jan 4, 2020
@MaximeTasset
Copy link

MaximeTasset commented Jan 31, 2020

I don't understand why is it not possible to hook to the event via the option, it will be simpler to not have raise condition like that. Am I right?

PS: By the way, I Have the same issue even with version 5.30.1

@Dotneteer
Copy link
Author

I'm a bit concerned that the owners of the project are pretty passive since the beginning of December 2019 :-(. This is not what a project with 4.2k stars deserves.

@Charnock
Copy link

Charnock commented Apr 4, 2020

I was experiencing the same problem on version 7.30.2 and got the expected behavior with this.

var window = await Electron.WindowManager.CreateWindowAsync(new BrowserWindowOptions
{
  Show = false
});

window.Show();

@GregorBiswanger GregorBiswanger self-assigned this Apr 17, 2020
@GregorBiswanger
Copy link
Member

@Dotneteer We authors are both fathers at the moment.. and are therefore a bit limited in time.. I will work on a new version for the days.. But you can also support or sponsor us with pull requests :)

I'll take a closer look at your problem.

@GregorBiswanger GregorBiswanger added this to the 8.31.1 milestone Apr 17, 2020
@FQLin
Copy link

FQLin commented Apr 21, 2020

I have the same problem on version 7.30.2,but netcoreapp5.0 priview project.

@GregorBiswanger
Copy link
Member

Fixed in the next Electron.NET Version 8.31.1.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

5 participants