Age | Commit message (Collapse) | Author | Files | Lines |
|
Since version 3.0, GTK+ has support for style variants. At the moment,
themes may provide a dark variant, which can be requested by
applications via GtkSettings. The requested variant is exported to
X11 via the _GTK_THEME_VARIANT property - support this property, in
order to pick up the correct style variant in the future.
https://bugzilla.gnome.org/show_bug.cgi?id=645355
NOTE: Patch is adapted for marco.
upstream commit:
https://gitlab.gnome.org/GNOME/metacity/commit/341d0945
|
|
Just a quick little commit to help clean things up for when we add invisible
borders. Additionally, do a little housekeeping in preview-widget as well.
https://bugzilla.gnome.org/show_bug.cgi?id=644930
NOTE: Patch copied from metacity and adapted for marco.
upstream commit:
https://gitlab.gnome.org/GNOME/metacity/commit/7d519b3f
|
|
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.
|
|
avoid Clang static analyzer warning:
core/window.c:3580:34: warning: The right operand of '+' is a garbage value
new_w = window->rect.width + fgeom.left_width + fgeom.right_width;
^ ~~~~~~~~~~~~~~~~
|
|
This way the xserver never paints the frame background, even if
the client window is destroyed. This allows us to have clean
destroy window animation.
There is no problem with interactive resizing because applications
are using the XSync protocol, so we're not painting unless the
client has redrawn.
https://bugzilla.gnome.org/show_bug.cgi?id=734054
origin commit:
https://gitlab.gnome.org/GNOME/metacity/commit/78c283c
|
|
|
|
Set the NET_WM_STATE_FOCUSED property on windows of type dock or
spashscreen so that they don't get the state GTK_STATE_FLAG_BACKDROP
set by default.
Based on:
https://gitlab.gnome.org/GNOME/metacity/commit/b3ef887
origin xfwm4 commit:
https://git.xfce.org/xfce/xfwm4/commit/?id=0feb29e78bb3
|
|
|
|
Fixes Clang static analyzer warning:
core/screen.c:754:16: warning: Use of memory after it is freed
result = g_list_prepend (result, info);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
Fixes Clang static analyzer warnings:
warning: Call to function 'strcpy' is insecure as it does not provide bounding of the memory buffer. Replace unbounded copy functions with analogous functions that support length arguments such as 'strlcpy'. CWE-119
|
|
Since xinerama already contains information on the monitor and its rectangle, there is no need to go through Gdk to get this information again.
|
|
Alt+Tab and Workspace popups should be sized relative to the monitor size.
This way they look nice and large regardless of the display resolution.
Also, given much larger modern resolutions, icon sizes should be larger by default.
|
|
Fixes https://github.com/mate-desktop/marco/issues/445
|
|
|
|
both functions have the same code
|
|
avoid deprecated:
gdk_error_trap_push
gdk_error_trap_pop_ignored
gdk_error_trap_pop
|
|
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
|
|
This was added only to add support for metacity theme format version 3.2.
Adapted from metacity for marco
origin commit: https://gitlab.gnome.org/GNOME/metacity/commit/d2b13461
|
|
|
|
Adapted from metacity for marco
Origin commit: https://gitlab.gnome.org/GNOME/metacity/commit/aab7b07a
Author: Alberts Muktupāvels <[email protected]>
Date: Fri Oct 3 19:57:08 2014 +0300
|
|
Origin: Ubuntu
Bug: https://bugzilla.gnome.org/show_bug.cgi
Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/metacity/+bug/506944
Author: Didier Roche <[email protected]>
|
|
Add a new frame type META_FRAME_TYPE_ATTACHED which is used for
attached modal dialogs.
The theme format version is bumped to 3.2, and attached windows
can have borders defined in a metacity-theme-3.xml as:
<window version=">= 3.2" type="attached" style_set="[name]"/>
If no style is defined for "attached", drawing will fall back
to the "border" type.
https://bugzilla.gnome.org/show_bug.cgi?id=592382
NOTE: Patch copied from mutter and adapted for metacity.
|
|
Add a preference /apps/mutter/general/attach_modal_dialogs. When
true, instead of having independent titlebars, modal dialogs appear
attached to the titlebar of the parent window and are moved
together with the parent window.
https://bugzilla.gnome.org/show_bug.cgi?id=612726
NOTE: Patch copied from mutter and adapted for metacity.
|
|
NOTE: Patch copied from mutter and adapted for metacity.
|
|
|
|
|
|
switch-panels-backward
|
|
ported from:
https://github.com/GNOME/metacity/commit/4ccb99a50c54f345c4c7d9ac77f1ea76bc6c7c74
|
|
|
|
|
|
|
|
|
|
|
|
|
|
frame
|
|
|
|
|
|
|
|
assignment discards ‘const’ qualifier from pointer target type
|
|
After resizing a tiled window, tile_resized gets set to true. Since it
never got set back to false when fullscreening, it lead to weird
behavior when unfullscreening the window.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Use that flag to retain the correct window size when performing other
operations. Reset when re-tiling.
|
|
Determine whether the user is initiating a resize action on a tiled
window. If the user is trying to grab the window for resizing
horizontally from the edge that's farther away from the screen edge,
allow the resize to occur. Otherwise maintain the current tile geometry.
Also modified the window hints to allow resizing from the window menu.
Fixes #250
|
|
use GtkSeat for > gtk+-3.20
|
|
* Determine focused window when processing synthetic events
When a client is passively grabbing keybindings that it does not need,
it sends them up for other clients to process.
Often in this situation, the event contains the wrong window (either
root, for global keybindings, or the original client itself). This means
that Marco will attempt to process the event for the wrong window.
This is not an issue for global keybindings within Marco, as the focused
window does not matter. However, for shortcuts that operate directly on
specific windows, the event gets lost.
This change addresses this by determining what the currently-focused
window is, regardless of which client forwarded the event.
* Determine window under pointer when processing synthetic events
When a client is passively grabbing mouse clicks that it does not need,
it sends them up for other clients to process.
Often in this situation, the event contains the wrong window (either
root, for global keybindings, or the original client itself). This means
that Marco will attempt to process the event for the wrong window.
This change addresses this by determining what the current window under
the mouse pointer is, regardless of which client forwarded the event.
* Remove unused development data
|