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

[GTK] Incrementing ProgressBar one-by-one maxes out at 28. #2542

Open
nvella opened this issue Aug 10, 2023 · 0 comments
Open

[GTK] Incrementing ProgressBar one-by-one maxes out at 28. #2542

nvella opened this issue Aug 10, 2023 · 0 comments

Comments

@nvella
Copy link

nvella commented Aug 10, 2023

Expected Behavior

Progress bar value can be set arbitrarily.

Actual Behavior

On the GTK platform, incrementing progress bar Value, one-by-one, maxes out at 28. When incrementing Value by 2, it is able to make it to 100 successfully.

I was not able to reproduce via this method on the Mac64 platform, however I have observed similar behaviour with a Property binding. I think this could be down to an unrelated threading issue however.

image

Code that Demonstrates the Problem

using System;
using Eto;
using Eto.Forms;
using Eto.Drawing;

namespace EtoTest
{
    public partial class MainForm : Form
    {
        public MainForm()
        {
            Title = "My Eto Form";
            MinimumSize = new Size(200, 200);

            var progressBar = new ProgressBar();
            var button = new Button((_, _) =>
            {
                progressBar.Value += 1;
                Console.WriteLine($"{progressBar.Value} {progressBar.MinValue} {progressBar.MaxValue}");
            }) { Text = "Increment" };

            Content = new TableLayout(
                progressBar,
                button,
                null);

            var quitCommand = new Command { MenuText = "Quit", Shortcut = Application.Instance.CommonModifier | Keys.Q };
            quitCommand.Executed += (sender, e) => Application.Instance.Quit();

            var aboutCommand = new Command { MenuText = "About..." };
            aboutCommand.Executed += (sender, e) => new AboutDialog().ShowDialog(this);
        }
    }
}

Specifications

  • Version: Eto.Forms 2.7.5 on .NET 6
  • Platform(s): Gtk (gtk+3 via Homebrew version 3.24.38)
  • Operating System(s): macOS 14 Public Beta 2
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant