* [yew-devel] [PATCH yew-widget-toolkit v2] widget: dropdown: update picker placement after showing
@ 2024-12-20 10:31 Dominik Csapak
2024-12-20 10:42 ` Dominik Csapak
2024-12-20 15:03 ` [yew-devel] applied: " Thomas Lamprecht
0 siblings, 2 replies; 4+ messages in thread
From: Dominik Csapak @ 2024-12-20 10:31 UTC (permalink / raw)
To: yew-devel
It seems that under certain circumstances (e.g. a dropdown in a dialog)
updating the position of the picker before it's opened (it's a
popover) does not work properly in safari/webkit/epiphany.
When trying to open such a dropdown, it (or some parts of it) would
be rendered with a height of 0px, even though the elements have
a height set explicitly.
To fix this, update the picker placement after opening it. What exactly
is the cause (e.g. if it's a browser bug or our css/aligning) is yet to
be determined.
This fixes an issue on webkit (tested with epiphany) that opening
dropdowns in a dialog did not show the dropdown properly.
Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
---
src/widget/dropdown.rs | 14 ++++++++------
1 file changed, 8 insertions(+), 6 deletions(-)
diff --git a/src/widget/dropdown.rs b/src/widget/dropdown.rs
index f9b49f1..a125bf6 100644
--- a/src/widget/dropdown.rs
+++ b/src/widget/dropdown.rs
@@ -510,12 +510,6 @@ impl Component for PwtDropdown {
}
}
- if let Some(placer) = &self.picker_placer {
- if let Err(err) = placer.update() {
- log::error!("error updating placement: {}", err.to_string());
- }
- }
-
if self.show != self.last_show {
self.last_show = self.show;
if let Some(popover_node) = self.picker_ref.get() {
@@ -533,6 +527,14 @@ impl Component for PwtDropdown {
}
}
}
+
+ // update picker placement after we opened/closed it
+ if let Some(placer) = &self.picker_placer {
+ if let Err(err) = placer.update() {
+ log::error!("error updating placement: {}", err.to_string());
+ }
+ }
+
self.focus_on_field = false;
}
}
--
2.39.5
_______________________________________________
yew-devel mailing list
yew-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [yew-devel] [PATCH yew-widget-toolkit v2] widget: dropdown: update picker placement after showing
2024-12-20 10:31 [yew-devel] [PATCH yew-widget-toolkit v2] widget: dropdown: update picker placement after showing Dominik Csapak
@ 2024-12-20 10:42 ` Dominik Csapak
2024-12-20 10:45 ` Maximiliano Sandoval
2024-12-20 15:03 ` [yew-devel] applied: " Thomas Lamprecht
1 sibling, 1 reply; 4+ messages in thread
From: Dominik Csapak @ 2024-12-20 10:42 UTC (permalink / raw)
To: yew-devel
argh sry, forgot to add the changelog (a trivial one, but still), so here it is:
changes from v1:
* changed commit message to include more details
* add comment to moved code block to make the intent of the position clear
_______________________________________________
yew-devel mailing list
yew-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [yew-devel] [PATCH yew-widget-toolkit v2] widget: dropdown: update picker placement after showing
2024-12-20 10:42 ` Dominik Csapak
@ 2024-12-20 10:45 ` Maximiliano Sandoval
0 siblings, 0 replies; 4+ messages in thread
From: Maximiliano Sandoval @ 2024-12-20 10:45 UTC (permalink / raw)
To: Yew framework devel list at Proxmox
This patch fixes the Theme selector dropdown not being visible in Epiphany 47.2.
Tested-by: Maximiliano Sandoval <m.sandoval@proxmox.com>
Dominik Csapak <d.csapak@proxmox.com> writes:
> argh sry, forgot to add the changelog (a trivial one, but still), so here it is:
>
> changes from v1:
> * changed commit message to include more details
> * add comment to moved code block to make the intent of the position clear
>
>
> _______________________________________________
> yew-devel mailing list
> yew-devel@lists.proxmox.com
> https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel
_______________________________________________
yew-devel mailing list
yew-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
* [yew-devel] applied: [PATCH yew-widget-toolkit v2] widget: dropdown: update picker placement after showing
2024-12-20 10:31 [yew-devel] [PATCH yew-widget-toolkit v2] widget: dropdown: update picker placement after showing Dominik Csapak
2024-12-20 10:42 ` Dominik Csapak
@ 2024-12-20 15:03 ` Thomas Lamprecht
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Lamprecht @ 2024-12-20 15:03 UTC (permalink / raw)
To: Yew framework devel list at Proxmox, Dominik Csapak
On 20/12/2024 11:31, Dominik Csapak wrote:
> It seems that under certain circumstances (e.g. a dropdown in a dialog)
> updating the position of the picker before it's opened (it's a
> popover) does not work properly in safari/webkit/epiphany.
>
> When trying to open such a dropdown, it (or some parts of it) would
> be rendered with a height of 0px, even though the elements have
> a height set explicitly.
>
> To fix this, update the picker placement after opening it. What exactly
> is the cause (e.g. if it's a browser bug or our css/aligning) is yet to
> be determined.
>
> This fixes an issue on webkit (tested with epiphany) that opening
> dropdowns in a dialog did not show the dropdown properly.
>
> Signed-off-by: Dominik Csapak <d.csapak@proxmox.com>
> ---
> src/widget/dropdown.rs | 14 ++++++++------
> 1 file changed, 8 insertions(+), 6 deletions(-)
>
>
applied, with Maximiliano's T-b and also the comment slightly extend for
why this is done, thanks!
_______________________________________________
yew-devel mailing list
yew-devel@lists.proxmox.com
https://lists.proxmox.com/cgi-bin/mailman/listinfo/yew-devel
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2024-12-20 15:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-12-20 10:31 [yew-devel] [PATCH yew-widget-toolkit v2] widget: dropdown: update picker placement after showing Dominik Csapak
2024-12-20 10:42 ` Dominik Csapak
2024-12-20 10:45 ` Maximiliano Sandoval
2024-12-20 15:03 ` [yew-devel] applied: " Thomas Lamprecht
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.
Service provided by Proxmox Server Solutions GmbH | Privacy | Legal