Implement pop widget 🎉

This commit is contained in:
Héctor Ramón Jiménez 2025-01-26 04:21:44 +01:00
parent 3428a3d2af
commit e90ff41edb
No known key found for this signature in database
GPG key ID: 7CC46565708259A7
4 changed files with 264 additions and 1 deletions

View file

@ -24,7 +24,7 @@ use crate::text_input::{self, TextInput};
use crate::toggler::{self, Toggler};
use crate::tooltip::{self, Tooltip};
use crate::vertical_slider::{self, VerticalSlider};
use crate::{Column, MouseArea, Pin, Row, Space, Stack, Themer};
use crate::{Column, MouseArea, Pin, Pop, Row, Space, Stack, Themer};
use std::borrow::Borrow;
use std::ops::RangeInclusive;
@ -970,6 +970,20 @@ where
})
}
/// Creates a new [`Pop`] widget.
///
/// A [`Pop`] widget can generate messages when it pops in and out of view.
/// It can even notify you with anticipation at a given distance!
pub fn pop<'a, Message, Theme, Renderer>(
content: impl Into<Element<'a, Message, Theme, Renderer>>,
) -> Pop<'a, Message, Theme, Renderer>
where
Renderer: core::Renderer,
Message: Clone,
{
Pop::new(content)
}
/// Creates a new [`Scrollable`] with the provided content.
///
/// Scrollables let users navigate an endless amount of content with a scrollbar.