1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-25 20:37:35 +00:00

WindowServer+LibGUI: Add data_type and data fields to drag operations

These fields are intended to carry the real meat of a drag operation,
and the "text" is just for what we show on screen (alongside the cursor
during the actual drag.)

The data field is just a String for now, but in the future we should
make it something more flexible.
This commit is contained in:
Andreas Kling 2019-12-19 20:09:31 +01:00
parent af7cb7ce1b
commit cfcb38dff1
13 changed files with 50 additions and 15 deletions

View file

@ -282,17 +282,23 @@ private:
class GDropEvent final : public GEvent {
public:
GDropEvent(const Point& position, const String& text)
GDropEvent(const Point& position, const String& text, const String& data_type, const String& data)
: GEvent(GEvent::Drop)
, m_position(position)
, m_text(text)
, m_data_type(data_type)
, m_data(data)
{
}
const Point& position() const { return m_position; }
const String& text() const { return m_text; }
const String& data_type() const { return m_data_type; }
const String& data() const { return m_data; }
private:
Point m_position;
String m_text;
String m_data_type;
String m_data;
};