Age | Commit message (Collapse) | Author | Files | Lines |
|
Conflicts:
gtk/window-decorator/decorator.c
|
|
|
|
Initialize settings before creating decoration frames
|
|
|
|
- Use gtk_main_quit ();
- Don't create gconf clients where we don't need to
|
|
|
|
|
|
|
|
|
|
Bare, default and switcher decorations never change and they need to
come and go, so keep references to them
|
|
Don't refresh shadow info (and check windows in paint list) if
compositing is not active and set the border and max border properties
for the default window type decoration (Without these properties,
CompWindow::input () would return 0,0,0,0 and an output frame wouldn't
be created)
|
|
|
|
string being empty always returning true and thus the CMAKE_BUILD_TYPE
being set to something the user didn't want
|
|
This provides information about the current state of the decoration
extents in core, rather than our own information about the window
decoration itself.
Reverts part of 4ae95852e53075caed15586620127f0c1405fe474
Fixes unresponsive decorations in kde4-window-decorator and decorations
initially "not responding" when you click on them (b.c.o #20)
|
|
There is a race where vpSize won't be updated to its "true value"
until we reach core's option change callback or we read the value
from the configuration plugin. Since we load all the plugins at once
on screenInitPlugins on the command line, some plugins require that this value
be set to *something* (It can be changed later) before they are initialized.
Fixes incorrect vertex settings with cube, causing it to zoom out infinitely
when switching viewports when loaded when compiz starts
|
|
Turns out that XUngrabServer is not a synchronous call, so there is a
race condition with the new startup order where the ungrab server request
will sit in the output buffer waiting to be processed and the server won't
actually be ungrabbed when we start loading plugins. This can have all
kinds of side effects, for example when initializing GConf with GDBus,
there will be a call to dbus-launch --autostart to try and get the
session bus ID which will fail if there is still a server grab
that hasn't been released (since it attempts to read X11 properties)
Fixes LP: #691561
|
|
|
|
|
|
frame ctor and move USE_GCONF into one big ifdef
|
|
Prevents namespace issues and makes it more clear where to access this
data.
|
|
Move things to where they should be, remove dead code
|
|
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.
|
|
frames
|
|
|
|
Don't need to retrieve the frame all the time, just get it once
|
|
decor_frame_type is available in decor_t now, so no need to get that
manually
|
|
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
|
|
Remove debug message
|
|
|
|
|
|
No need to have another structure lying around for this ...
|
|
Include frame information when drawing the shadow outline and also get
the metacity frame type from this information rather than the WnckWindow
|
|
* 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
|
|
Connect up the signal handler for the style change correctly.
|
|
It is still separate to the normal "window type" decoration, but at
least now it has access to everything it needs
|
|
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.
|
|
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
|
|
|
|
|
|
DecorWindow::update might call updateWindowOutputExtents which calls
::resizeNotify ... since this loops over all windows it is not safe to
have this function called.
|
|
|
|
only where it makes sense to.
|
|
Intersect the clip region already computed by core with the output
region of the window so that we don't display parts of the window that
might be occluded
|
|
|
|
Conflicts:
gtk/window-decorator/decorator.c
|
|
git+ssh://git.compiz.org/git/users/dbo/compiz-with-glib-mainloop
|
|
|
|
Also skip ignored modifier if it is also in the cleared ignored bits
|
|
Fixes LP: #709461
|
|
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
|