summaryrefslogtreecommitdiff
path: root/gtk/window-decorator
AgeCommit message (Collapse)AuthorFilesLines
2011-02-22Merge branch 'master' of git://git.compiz.org/compiz/coreHEADmasterSam Spilsbury20-814/+1928
Conflicts: gtk/window-decorator/decorator.c
2011-02-21Fix down-left shift and wrong offsets for default decorations.Sam Spilsbury5-55/+54
Initialize settings before creating decoration frames
2011-02-21Fix memory leaksSam Spilsbury7-20/+83
- Use gtk_main_quit (); - Don't create gconf clients where we don't need to
2011-02-21Remove dead codeSam Spilsbury3-16/+0
2011-02-21Update copyright infoSam Spilsbury18-2/+412
2011-02-21Fix title scales not updating on theme changeSam Spilsbury2-0/+9
2011-02-21Also store correct pointer type and unref on exitSam Spilsbury1-13/+17
2011-02-21Prevent spurious frame creation and deletionSam Spilsbury1-0/+8
Bare, default and switcher decorations never change and they need to come and go, so keep references to them
2011-02-19Update TODOSam Spilsbury1-1/+13
2011-02-19Cleanup init_settings some more, move the switcher stuff out into theSam Spilsbury2-24/+9
frame ctor and move USE_GCONF into one big ifdef
2011-02-19Store settings data in its own structSam Spilsbury9-139/+149
Prevents namespace issues and makes it more clear where to access this data.
2011-02-18Cleanup.Sam Spilsbury3-149/+143
Move things to where they should be, remove dead code
2011-02-18Add memory management to framesSam Spilsbury9-324/+624
We don't need to keep all the frame definitions around in memory all the time, so refcount them and only add them if we actually need them.
2011-02-17Add frame types system, allocate to hash table and use them to manageSam Spilsbury4-138/+207
frames
2011-02-17Add frames refcounting systemSam Spilsbury9-24/+74
2011-02-17Cleanup meta_update_border_extents functionSam Spilsbury1-23/+16
Don't need to retrieve the frame all the time, just get it once
2011-02-17CleanupSam Spilsbury5-64/+34
decor_frame_type is available in decor_t now, so no need to get that manually
2011-02-17Added simple frames management system.Sam Spilsbury11-62/+61
Right now this just keeps the frames in a private area and returns a pre-allocated frame, but it will be expanded to allow reference counting on frames and allocation on-demand
2011-02-17Generalize shadow_only decoration into window decorations listSam Spilsbury4-38/+65
Remove debug message
2011-02-16Remove more dead codeSam Spilsbury1-2/+0
2011-02-16Generalize switcher into another decoration frame typeSam Spilsbury5-201/+273
2011-02-16Move _default_decoration into another decor_frame_t in decor_framesSam Spilsbury5-74/+18
No need to have another structure lying around for this ...
2011-02-16Fix shadows of non-default frame windowsSam Spilsbury2-17/+37
Include frame information when drawing the shadow outline and also get the metacity frame type from this information rather than the WnckWindow
2011-02-16Fix cairo modeSam Spilsbury3-62/+58
* Make sure we set the theme fptrs for get_title_scale on startup * Use the frame reference in the decor_t since that works for default decorations too
2011-02-15Fix crash when changing themeSam Spilsbury4-18/+19
Connect up the signal handler for the style change correctly.
2011-02-15Make the switcher a decoration frame.Sam Spilsbury8-85/+27
It is still separate to the normal "window type" decoration, but at least now it has access to everything it needs
2011-02-15Allow different font types in frames.Sam Spilsbury11-145/+253
Currently we used a single PangoContext and PangoFontDescription for everything ... this resulted in custom frames having the same titlebar size which wasn't any good. This commit changes a lot, namely: * Frame is now linked to the decoration object itself * Moved style windows into the frame * Moved font context and font description into the frame * Added API for getting the titlebar font size: obviously with the cairo decorations there isn't supposed to be any kind of visual difference here but with the metacity decorations we need to get that directly from libmetacity. It should be noted that these commits are in need of a cleanup ... which is coming in the next few commits.
2011-02-14Add frame management systemSam Spilsbury8-304/+432
There are different types of frames that we will need to support - like the GIMP's utility toolbox windows - we need to have stored separate frames in order to support them
2011-02-14Add definitions for different border typesSam Spilsbury1-1/+22
2011-02-14Add support for drawing with different metacity theme typesSam Spilsbury2-18/+36
2011-02-11Merge branch 'master' of git://git.compiz.org/compiz/coreSam Spilsbury6-36/+132
Conflicts: gtk/window-decorator/decorator.c
2011-02-10Make the switcher window being override redirect.Sam Spilsbury7-51/+131
Previously the switcher window was a normal managed window (which the switcher plugin actually lied about, see SwitchWindow::managed), such that the decorators could pick it up and draw the switcher decoration. However now with reparenting, this means that whenever we actually manage and unmanage the switcher window (eg with map and unmap) it means we must also reparent the window, which floods the server with requests and makes the switcher slow. Since we don't interact with the switcher window, it makes no sense to manage it like this, so make it override redirect
2011-02-03Explicitly include <gdk/gdk.h> to avoid offset problems on amd64Sam Spilsbury1-0/+1
2011-02-01Merge branch 'master' of ../../../coreSam Spilsbury3-2/+7
Conflicts: include/core/core.h src/window.cpp
2011-02-01Allow semantic difference between frame window geometry and frame size.Sam Spilsbury3-2/+7
Rationale: some window decorators or themes might want to specify a border input area that is slightly larger than the visible borders on screen (eg for enhanced resize handles, a11y purposes, etc) or the theme might want to specify some additional decoration which should affect placement but should not be interacted with. In this case we have a priv->border and priv->input window property. priv->border specifies the actual semantic size of the window decoration that should affect placement and priv->input specifies the extents of the frame window past the client. Fixes LP: #710271
2010-12-03Add some documentation for decorator.cSam Spilsbury1-2/+219
2010-11-01Fix cairo decoration offsetsSam Spilsbury1-6/+4
2010-11-01Fix decoration offsets in metacity 2D mode (hopefully for real this time)Sam Spilsbury1-2/+3
2010-11-01Don't create window with shadow size in 2D ModeSam Spilsbury5-21/+113
2010-10-24Don't attempt to re-use buffer pixmaps.Sam Spilsbury1-17/+0
It's not safe to re-use these pixmaps, because there isn't any guaruntee that they haven't been nuked by compiz
2010-10-24Don't reparent so overzealously.Sam Spilsbury4-7/+11
Also tweak offset code to handle shadow offsets. Unfortunately this breaks some themes. However, the standard ones such as Clearlooks and friends should continue to work
2010-09-28Do not use deprecated gdk_display macro.Dominique Leuenberger2-2/+2
2010-09-29Do not use gdk_display, it's deprecated (one more place it was missed).Dominique Leuenberger1-1/+1
2010-09-27Don't use deprecated gdk_display symbolSam Spilsbury1-4/+4
2010-09-06[PATCH] Replace old gdk_draw_drawable method calls with cairo equivalents.Danny Baumann6-57/+37
2010-08-29Fix property handling.Danny Baumann1-32/+38
2010-08-28Check property size before readingSam Spilsbury1-1/+1
2010-08-21Merge branch 'master' of git+ssh://git.compiz.org/git/compiz/coreSam Spilsbury4-303/+99
2010-08-21Don't declare metacity funcs if we aren't using itSam Spilsbury1-3/+3
2010-08-20Fix warnings.Scott Moreau2-3/+5