summaryrefslogtreecommitdiff
path: root/src/ui/frames.h
Commit message (Collapse)AuthorAgeFilesLines
* let the ui layer (via the core) construct the frame maskAlberts Muktupāvels2015-04-051-6/+5
| | | | | Based on mutter commit: https://git.gnome.org/browse/mutter/commit/?id=c2a9ccb7e2e0f7dc37866099a5e5a4a5727c679b
* frames: Rename layout to text_layoutFlorian Müllner2015-02-191-1/+1
| | | | | | ... to differentiate PangoLayout from MetaFrameLayout. https://bugzilla.gnome.org/show_bug.cgi?id=741917
* theme: Add MetaStyleInfo for wrapping frame style contextFlorian Müllner2015-02-191-2/+2
| | | | | | | | | | | | | | Our current use of style contexts is fairly limited - we don't use them for much more than picking up some color information. We will soon start to make more elaborate use of GTK style information, but a single context will no longer be enough to draw a frame then. To prepare for this, add a simple ref-counted type to wrap style information. https://bugzilla.gnome.org/show_bug.cgi?id=741917 NOTE: Updated for metacity.
* frames: again change meta_frames_applet_shapesAlberts Muktupāvels2015-02-191-1/+0
| | | | | | | | | With compositing manager: 1. Apply only client shape. Without compositing manager: 1. Apply client shape. 2. Apply shape around visible frame.
* frames: apply shapes in different wayAlberts Muktupāvels2015-01-201-0/+1
|
* ui: always set the frame background to NoneGiovanni Campagna2015-01-191-7/+0
| | | | | | | | | | | | 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
* frame: Add "get_corner_radiuses" chainJasper St. Pierre2015-01-191-0/+8
| | | | https://bugzilla.gnome.org/show_bug.cgi?id=628195
* Only shadow ARGB windows with a frame outside the frameOwen W. Taylor2015-01-191-0/+4
| | | | | | | | | | | | | | | | | An ARGB window with a frame is likely something like a transparent terminal. It looks awful (and breaks transparency) to draw a big opaque black shadow under the window, so clip out the region under the terminal from the shadow we draw. Add meta_window_get_frame_bounds() to get a cairo region for the outer bounds of the frame of a window, and modify the frame handling code to notice changes to the frame shape and discard a cached region. meta_frames_apply_shapes() is refactored so we can extract meta_frames_get_frame_bounds() from it. https://bugzilla.gnome.org/show_bug.cgi?id=635268 NOTE: Applied only partially, compositor part is still missing...
* ui-frame: Add support for style variantsFlorian Müllner2014-10-081-0/+3
| | | | | | | | | | | | Rather than sharing a single style context between all frames, use a default style and one style per encountered variant. The value of the _GTK_THEME_VARIANT property should determine which style is attached to a particular frame, though for the time being the default style is used for every frame, as the window property cannot be accessed at the time the style is attached. This will be fixed in a later commit. https://bugzilla.gnome.org/show_bug.cgi?id=645355
* ui: Add meta_ui_update_frame_style()Florian Müllner2014-10-081-0/+3
| | | | | | | This method allows forcing a style update of a particular frame from the core, so that it can pick up style variants. https://bugzilla.gnome.org/show_bug.cgi?id=645355
* add support for app-menu button in themeAlberts Muktupāvels2014-10-071-0/+1
| | | | | | | | | Add app-menu button support in themes. This is done only to support metacity theme format 3.5 version. Metacity will not show this button! Based on mutter commit: https://git.gnome.org/browse/mutter/commit/?id=c2ea650b3c484312c14f69b8b245ab117ef7c6e1
* remove trailing whitespaceAlberts Muktupāvels2014-10-051-5/+5
|
* Replace public MetaFrameGeometry with MetaFrameBordersJasper St. Pierre2014-09-281-4/+3
| | | | | | | | | | | | | | | | | | 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 NOTE: Patch copied from mutter and adapted for metacity.
* Build with gtk+-3.0Alberts Muktupāvels2014-06-031-3/+1
| | | | | | Most changes are copied from mutter 3.4.0. So thanks to mutter developers! They done all hard work. This patch also removes unused functions.
* Updated FSF's addressDaniel Mustieles2014-01-231-3/+1
|
* Remove deprecated GTK symbols. Refs #572332.Thomas James Alexander Thurman2009-03-121-5/+5
| | | | | | | | | | | | | | | | | | | | | * src/include/util.h: * src/tools/metacity-window-demo.c: * src/ui/fixedtip.c: * src/ui/frames.c: * src/ui/frames.h: * src/ui/menu.c: * src/ui/metaaccellabel.c: * src/ui/metaaccellabel.h: * src/ui/preview-widget.c: * src/ui/preview-widget.h: * src/ui/tabpopup.c: * src/ui/theme-viewer.c: * src/ui/themewidget.c: * src/ui/themewidget.h: * test/tokentest/tokentest.c: svn path=/trunk/; revision=4193
* GtkStyle is specific to a particular colormap. Metacity uses differentOwen Taylor2009-01-281-0/+1
| | | | | | | | | | | | | | | | | | | | | | | 2009-01-27 Owen Taylor <otaylor@redhat.com> GtkStyle is specific to a particular colormap. Metacity uses different colormaps for windows with different visuals, so it must specialize the GtkStyle. Closes #568365 and #513944. * src/ui/frames.[ch]: Keep a GtkStyle for each MetaUIFrame, which is obtained by calling gtk_style_attach() on the style for the MetaFrames. When the style of the MetaFrames changes, reattach everything. When we call gtk_style_set_background() pass in the right style. * src/ui/themes.[ch]: Create a _with_style() variant of functions that previously took the style from widget->style passed in, so we can draw with the right style for the colormap. svn path=/trunk/; revision=4092
* sort source files into these directories according to which part of the WMHavoc Pennington2007-12-191-0/+162
2007-12-19 Havoc Pennington <hp@redhat.com> * src/ui, src/core, src/include: sort source files into these directories according to which part of the WM they are supposed to be in. In an eventual plan, we should also create src/compositor/render, src/compositor/fallback and move some of the compositor stuff into that. * autogen.sh: require a newer automake, so we don't have to use a recursive build * src/ui/tabpopup.c: put in a hack to make the build temporarily work, want to commit the large rearrangement before fixing this not to include workspace.h or frame.h * src/core/iconcache.c (meta_read_icons): temporarily break this to get the build to work, want to commit the large rearrangement before fixing this file not to include theme.h svn path=/trunk/; revision=3491