mirror of
https://github.com/RGBCube/serenity
synced 2025-07-27 05:17:35 +00:00
WindowServer+LibGUI: Pass the system theme using Core::AnonymousBuffer
This was the last remaining user of shbufs in WindowServer, and so WindowServer no longer pledges "shared_buffer" :^)
This commit is contained in:
parent
9c6c18d9b6
commit
04f95f9160
13 changed files with 51 additions and 56 deletions
|
@ -31,13 +31,13 @@
|
|||
|
||||
namespace Gfx {
|
||||
|
||||
NonnullRefPtr<PaletteImpl> PaletteImpl::create_with_shared_buffer(SharedBuffer& buffer)
|
||||
NonnullRefPtr<PaletteImpl> PaletteImpl::create_with_anonymous_buffer(Core::AnonymousBuffer buffer)
|
||||
{
|
||||
return adopt(*new PaletteImpl(buffer));
|
||||
return adopt(*new PaletteImpl(move(buffer)));
|
||||
}
|
||||
|
||||
PaletteImpl::PaletteImpl(SharedBuffer& buffer)
|
||||
: m_theme_buffer(buffer)
|
||||
PaletteImpl::PaletteImpl(Core::AnonymousBuffer buffer)
|
||||
: m_theme_buffer(move(buffer))
|
||||
{
|
||||
}
|
||||
|
||||
|
@ -52,7 +52,7 @@ Palette::~Palette()
|
|||
|
||||
const SystemTheme& PaletteImpl::theme() const
|
||||
{
|
||||
return *m_theme_buffer->data<SystemTheme>();
|
||||
return *m_theme_buffer.data<SystemTheme>();
|
||||
}
|
||||
|
||||
Color PaletteImpl::color(ColorRole role) const
|
||||
|
@ -75,9 +75,9 @@ String PaletteImpl::path(PathRole role) const
|
|||
|
||||
NonnullRefPtr<PaletteImpl> PaletteImpl::clone() const
|
||||
{
|
||||
auto new_theme_buffer = SharedBuffer::create_with_size(m_theme_buffer->size());
|
||||
memcpy(new_theme_buffer->data<SystemTheme>(), &theme(), m_theme_buffer->size());
|
||||
return adopt(*new PaletteImpl(*new_theme_buffer));
|
||||
auto new_theme_buffer = Core::AnonymousBuffer::create_with_size(m_theme_buffer.size());
|
||||
memcpy(new_theme_buffer.data<SystemTheme>(), &theme(), m_theme_buffer.size());
|
||||
return adopt(*new PaletteImpl(move(new_theme_buffer)));
|
||||
}
|
||||
|
||||
void Palette::set_color(ColorRole role, Color color)
|
||||
|
@ -109,9 +109,9 @@ PaletteImpl::~PaletteImpl()
|
|||
{
|
||||
}
|
||||
|
||||
void PaletteImpl::replace_internal_buffer(Badge<GUI::Application>, SharedBuffer& buffer)
|
||||
void PaletteImpl::replace_internal_buffer(Badge<GUI::Application>, Core::AnonymousBuffer buffer)
|
||||
{
|
||||
m_theme_buffer = buffer;
|
||||
m_theme_buffer = move(buffer);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue