From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 8DA181FF17A for ; Tue, 11 Nov 2025 15:01:59 +0100 (CET) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 069A4C20C; Tue, 11 Nov 2025 15:01:08 +0100 (CET) From: Christoph Heiss To: pve-devel@lists.proxmox.com Date: Tue, 11 Nov 2025 15:00:04 +0100 Message-ID: <20251111140014.1443471-15-c.heiss@proxmox.com> X-Mailer: git-send-email 2.51.0 In-Reply-To: <20251111140014.1443471-1-c.heiss@proxmox.com> References: <20251111140014.1443471-1-c.heiss@proxmox.com> MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1762869599780 X-SPAM-LEVEL: Spam detection results: 0 AWL 0.045 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record Subject: [pve-devel] [PATCH installer v3 14/15] ui: gtk3: allow passing of dialog parent window X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" For GTK to properly z-order the dialog, i.e. so that it gets put on top, the correct parent window must be specified. By default this is the root window, but for some settings we open an additional dialog window, in which these must be used as parent. Signed-off-by: Christoph Heiss --- Changes v2 -> v3: * no changes Changes v1 -> v2: * new patch Proxmox/UI.pm | 12 ++++++------ Proxmox/UI/Gtk3.pm | 12 ++++++------ 2 files changed, 12 insertions(+), 12 deletions(-) diff --git a/Proxmox/UI.pm b/Proxmox/UI.pm index 99988ab..55a78e4 100644 --- a/Proxmox/UI.pm +++ b/Proxmox/UI.pm @@ -48,13 +48,13 @@ my sub get_env { } sub message { - my ($msg) = @_; - get_ui()->message($msg); + my ($msg, $parentwindow) = @_; + get_ui()->message($msg, $parentwindow); } sub error { - my ($msg) = @_; - get_ui()->error($msg); + my ($msg, $parentwindow) = @_; + get_ui()->error($msg, $parentwindow); } sub finished { @@ -63,8 +63,8 @@ sub finished { } sub prompt { - my ($query) = @_; - return get_ui()->prompt($query); + my ($query, $parentwindow) = @_; + return get_ui()->prompt($query, $parentwindow); } sub display_html { diff --git a/Proxmox/UI/Gtk3.pm b/Proxmox/UI/Gtk3.pm index 9af3d6a..82a4623 100644 --- a/Proxmox/UI/Gtk3.pm +++ b/Proxmox/UI/Gtk3.pm @@ -8,18 +8,18 @@ use Gtk3; use base qw(Proxmox::UI::Base); sub message { - my ($self, $msg) = @_; + my ($self, $msg, $parentwindow) = @_; - my $window = $self->{state}->{window}; + my $window = $parentwindow // $self->{state}->{window}; my $dialog = Gtk3::MessageDialog->new($window, 'modal', 'info', 'ok', $msg); $dialog->run(); $dialog->destroy(); } sub error { - my ($self, $msg) = @_; + my ($self, $msg, $parentwindow) = @_; - my $window = $self->{state}->{window}; + my $window = $parentwindow // $self->{state}->{window}; my $dialog = Gtk3::MessageDialog->new($window, 'modal', 'error', 'ok', $msg); $dialog->run(); $dialog->destroy(); @@ -31,9 +31,9 @@ sub finished { } sub prompt { - my ($self, $query) = @_; + my ($self, $query, $parentwindow) = @_; - my $window = $self->{state}->{window}; + my $window = $parentwindow // $self->{state}->{window}; my $dialog = Gtk3::MessageDialog->new($window, 'modal', 'question', 'ok-cancel', $query); my $response = $dialog->run(); $dialog->destroy(); -- 2.51.0 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel