<feed xmlns='http://www.w3.org/2005/Atom'>
<title>marco/src/ui/theme.h, branch focus-modal-dialogs</title>
<subtitle>MATE default window manager</subtitle>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/'/>
<entry>
<title>theme: Include shadow and resize borders</title>
<updated>2025-11-01T18:55:54+00:00</updated>
<author>
<name>Victor Kareh</name>
<email>vkareh@redhat.com</email>
</author>
<published>2025-09-09T14:34:49+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=3261bbdce6cc0fa494c257849cb69c640f1aeade'/>
<id>3261bbdce6cc0fa494c257849cb69c640f1aeade</id>
<content type='text'>
Extend MetaFrameBorders to include shadow and resize borders to
calculate invisible border size. Also added border caching to prevent
recalculating borders on every frame operation.

This is a backport of the following commits from Metacity:
- https://gitlab.gnome.org/GNOME/metacity/-/commit/21e664af
- https://gitlab.gnome.org/GNOME/metacity/-/commit/3c6e269b
- https://gitlab.gnome.org/GNOME/metacity/-/commit/700e87ea
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Extend MetaFrameBorders to include shadow and resize borders to
calculate invisible border size. Also added border caching to prevent
recalculating borders on every frame operation.

This is a backport of the following commits from Metacity:
- https://gitlab.gnome.org/GNOME/metacity/-/commit/21e664af
- https://gitlab.gnome.org/GNOME/metacity/-/commit/3c6e269b
- https://gitlab.gnome.org/GNOME/metacity/-/commit/700e87ea
</pre>
</div>
</content>
</entry>
<entry>
<title>Remove multiple empty lines</title>
<updated>2020-08-04T14:39:25+00:00</updated>
<author>
<name>rbuj</name>
<email>robert.buj@gmail.com</email>
</author>
<published>2020-08-04T13:53:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=37e4d38ca3a61eb843d80732a26f29668352433d'/>
<id>37e4d38ca3a61eb843d80732a26f29668352433d</id>
<content type='text'>
find . \( -name '*.h' -o -name '*.c' \) -exec sed -i 'N;/^\n$/D;P;D;' {} \;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
find . \( -name '*.h' -o -name '*.c' \) -exec sed -i 'N;/^\n$/D;P;D;' {} \;
</pre>
</div>
</content>
</entry>
<entry>
<title>theme: Render window control buttons and icons as surfaces</title>
<updated>2019-10-07T10:40:38+00:00</updated>
<author>
<name>Victor Kareh</name>
<email>vkareh@redhat.com</email>
</author>
<published>2019-10-06T02:52:11+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=87cf621d7dd53987b095323dde27677302c32052'/>
<id>87cf621d7dd53987b095323dde27677302c32052</id>
<content type='text'>
When loading window control buttons and icon as pixbufs, we just set
them as the source for the cairo context used to paint them. Instead, we
now convert them to cairo surfaces and scale them to the correct display
density before painting them.

This allows us to load higher resolution assets (i.e. at twice the size)
and by explicitly setting the intended size in the theme draw_ops, we
can then scale them down to fit lower resolution displays, or render
them at full density for HiDPI displays.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
When loading window control buttons and icon as pixbufs, we just set
them as the source for the cairo context used to paint them. Instead, we
now convert them to cairo surfaces and scale them to the correct display
density before painting them.

This allows us to load higher resolution assets (i.e. at twice the size)
and by explicitly setting the intended size in the theme draw_ops, we
can then scale them down to fit lower resolution displays, or render
them at full density for HiDPI displays.
</pre>
</div>
</content>
</entry>
<entry>
<title>ui: Replace inline borders in MetaFrameGeometry with MetaFrameBorder</title>
<updated>2019-06-05T14:49:37+00:00</updated>
<author>
<name>Victor Kareh</name>
<email>vkareh@redhat.com</email>
</author>
<published>2019-05-22T16:23:16+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=ca53c82e4cb44eb5ca69130acfe2867fe6405365'/>
<id>ca53c82e4cb44eb5ca69130acfe2867fe6405365</id>
<content type='text'>
... and start compensating for invisible borders in all of the math.

https://bugzilla.gnome.org/show_bug.cgi?id=644930

NOTE: Updated for marco...

upstream commit:
https://gitlab.gnome.org/GNOME/metacity/commit/daf6bc08
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
... and start compensating for invisible borders in all of the math.

https://bugzilla.gnome.org/show_bug.cgi?id=644930

NOTE: Updated for marco...

upstream commit:
https://gitlab.gnome.org/GNOME/metacity/commit/daf6bc08
</pre>
</div>
</content>
</entry>
<entry>
<title>theme: Make meta_frame_draw_theme take a GtkStyleContext instead of a widget</title>
<updated>2019-06-05T14:49:37+00:00</updated>
<author>
<name>Victor Kareh</name>
<email>vkareh@redhat.com</email>
</author>
<published>2019-05-21T19:09:36+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=7bcd852276e8d7e941144760c836e9eefffb1107'/>
<id>7bcd852276e8d7e941144760c836e9eefffb1107</id>
<content type='text'>
The style context of the widget is rarely what we want. We won't
fix this to be a MetaFrames style context yet; this just changes
the internal API.

https://bugzilla.gnome.org/show_bug.cgi?id=690317

upstream commit:
https://gitlab.gnome.org/GNOME/metacity/commit/76aa0704
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
The style context of the widget is rarely what we want. We won't
fix this to be a MetaFrames style context yet; this just changes
the internal API.

https://bugzilla.gnome.org/show_bug.cgi?id=690317

upstream commit:
https://gitlab.gnome.org/GNOME/metacity/commit/76aa0704
</pre>
</div>
</content>
</entry>
<entry>
<title>Replace public MetaFrameGeometry with MetaFrameBorders</title>
<updated>2019-06-05T14:49:37+00:00</updated>
<author>
<name>Victor Kareh</name>
<email>vkareh@redhat.com</email>
</author>
<published>2019-04-12T11:58:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=c66b32666e48996b97e691ed002f86b6ff18dec5'/>
<id>c66b32666e48996b97e691ed002f86b6ff18dec5</id>
<content type='text'>
There were actually *two* MetaFrameGeometry structs: one in theme-private.h,
one in frame.h. The latter public struct was populated by a mix of (void*)
casting and int pointers, usually pulling directly from the data in the private
struct.

Remove the public struct, replace it with MetaFrameBorders and scrap all
the pointer hacks to populate it, instead relying on both structs being used
in common code.

This commit should be relatively straightforward, and it should not do any
tricky logic at all, just a sophisticated find and replace.

https://bugzilla.gnome.org/show_bug.cgi?id=644930

upstream commit: https://gitlab.gnome.org/GNOME/metacity/commit/72224a165
NOTE: Patch copied from metacity and adapted for marco.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
There were actually *two* MetaFrameGeometry structs: one in theme-private.h,
one in frame.h. The latter public struct was populated by a mix of (void*)
casting and int pointers, usually pulling directly from the data in the private
struct.

Remove the public struct, replace it with MetaFrameBorders and scrap all
the pointer hacks to populate it, instead relying on both structs being used
in common code.

This commit should be relatively straightforward, and it should not do any
tricky logic at all, just a sophisticated find and replace.

https://bugzilla.gnome.org/show_bug.cgi?id=644930

upstream commit: https://gitlab.gnome.org/GNOME/metacity/commit/72224a165
NOTE: Patch copied from metacity and adapted for marco.
</pre>
</div>
</content>
</entry>
<entry>
<title>libmetacity: use cairo to render gradient</title>
<updated>2019-06-01T12:49:43+00:00</updated>
<author>
<name>Victor Kareh</name>
<email>vkareh@redhat.com</email>
</author>
<published>2019-05-31T11:17:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=06628329fc769efb2bcd83d9bd3a2dc742d94220'/>
<id>06628329fc769efb2bcd83d9bd3a2dc742d94220</id>
<content type='text'>
upstream commits:
https://gitlab.gnome.org/GNOME/metacity/commit/71d5decc
https://gitlab.gnome.org/GNOME/metacity/commit/127638ca
https://gitlab.gnome.org/GNOME/metacity/commit/fc1a21ea
https://gitlab.gnome.org/GNOME/metacity/commit/431e0418
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
upstream commits:
https://gitlab.gnome.org/GNOME/metacity/commit/71d5decc
https://gitlab.gnome.org/GNOME/metacity/commit/127638ca
https://gitlab.gnome.org/GNOME/metacity/commit/fc1a21ea
https://gitlab.gnome.org/GNOME/metacity/commit/431e0418
</pre>
</div>
</content>
</entry>
<entry>
<title>theme: add invisible_border to metacity theme</title>
<updated>2018-08-28T23:15:05+00:00</updated>
<author>
<name>Alberts Muktupāvels</name>
<email>alberts.muktupavels@gmail.com</email>
</author>
<published>2015-01-18T14:07:48+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=93b5dd1cf945b59a1ec605e66c2ceda49ba9e397'/>
<id>93b5dd1cf945b59a1ec605e66c2ceda49ba9e397</id>
<content type='text'>
This adds 'invisible_border' to metacity theme. This invisible
border will be used for resize cursor area.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This adds 'invisible_border' to metacity theme. This invisible
border will be used for resize cursor area.
</pre>
</div>
</content>
</entry>
<entry>
<title>add support for app-menu button in theme</title>
<updated>2018-08-28T22:53:42+00:00</updated>
<author>
<name>Alberts Muktupāvels</name>
<email>alberts.muktupavels@gmail.com</email>
</author>
<published>2014-10-07T02:37:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=c49f361a93752ffb53d99fd55fa7e8db2ac660c5'/>
<id>c49f361a93752ffb53d99fd55fa7e8db2ac660c5</id>
<content type='text'>
Add app-menu button support in themes. This is done only to support
metacity theme format 3.5 version. Marco will not show this
button!

Based on metacity commit:
https://gitlab.gnome.org/GNOME/metacity/commit/6a2cc159
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add app-menu button support in themes. This is done only to support
metacity theme format 3.5 version. Marco will not show this
button!

Based on metacity commit:
https://gitlab.gnome.org/GNOME/metacity/commit/6a2cc159
</pre>
</div>
</content>
</entry>
<entry>
<title>theme: Allow using custom colors from the GTK+ theme</title>
<updated>2018-08-28T13:38:37+00:00</updated>
<author>
<name>Florian Müllner</name>
<email>fmuellner@gnome.org</email>
</author>
<published>2014-09-27T15:25:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.mate-desktop.org/marco/commit/?id=18bfff32531e13d18c53f9a990fdf48a2cd52673'/>
<id>18bfff32531e13d18c53f9a990fdf48a2cd52673</id>
<content type='text'>
Add an additional color type to pick up colors defined with
@define-color in the GTK+ theme's CSS:

  gtk:custom(name,fallback)

(where "name" refers to the name defined in GTK+'s CSS, and fallback
refers to an alternative color spec which is used when the color
referenced by "name" is not found)

The main intent of the change is to allow designers to improve
Adwaita's dark theme variant without having to compromise on colors
which work in the light variant as well.

https://bugzilla.gnome.org/show_bug.cgi?id=648709

NOTE: Patch copied from mutter and adapted for metacity.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Add an additional color type to pick up colors defined with
@define-color in the GTK+ theme's CSS:

  gtk:custom(name,fallback)

(where "name" refers to the name defined in GTK+'s CSS, and fallback
refers to an alternative color spec which is used when the color
referenced by "name" is not found)

The main intent of the change is to allow designers to improve
Adwaita's dark theme variant without having to compromise on colors
which work in the light variant as well.

https://bugzilla.gnome.org/show_bug.cgi?id=648709

NOTE: Patch copied from mutter and adapted for metacity.
</pre>
</div>
</content>
</entry>
</feed>
