Re: [compiz] multiscreen
On 13-01-09 05:59 PM, Vojtech Kral wrote: > Hello Brian, Hi Vojtech, > I actually use compiz on multi-screen for development at work. > I solve this problem by moving my web browser window to the other screen > and _make it sticky_. Yeah. I do utilize "sticky" also with my IM/IRC window so that it's on every workspace. I consider that a special case application though and would still like the ability to switch workspaces on multiple screens independently of each other. This is a feature I quite happily give up the ability to move windows from one screen to the other for. I have little use for that. > That way, no matter to what desktop I move, > the browser window stays visible on the other screen. Indeed. Ditto for my IM/IRC application. b. signature.asc Description: OpenPGP digital signature ___ compiz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/compiz
Re: [compiz] multiscreen
On 13-01-09 09:57 AM, Sam Spilsbury wrote: > > very few people use this configuration. Yeah. I don't find that surprising of the mom and pops that are just reading e-mail and browsing the Internet. I am surprised though that this use-case doesn't apply to developers more often. Or even video media watching users -- being able to switch your main desktop while keeping the video media you are playing pinned on the other screen. Do people watching videos on one screen really like that when they switch workspaces on their other screen that their video playing screen switches too? > They should be shared between the two screens. I'll file a bug about > it so I remember to get to it. Is there a way I can manually copy/sync them? Where are the preferences stored? > No problem. Glad to see you are getting the most out of compiz. Sadly, I'm not yet. :-( Still using Metacity. Cheers, b. signature.asc Description: OpenPGP digital signature ___ compiz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/compiz
Re: [compiz] multiscreen
On Wed, Jan 9, 2013 at 10:46 PM, Brian J. Murrell wrote: > On 13-01-09 09:12 AM, Sam Spilsbury wrote: >> Hi Brian > > Hi Sam, > >> Support for one instance managing multiple screens was removed in >> 0.9.0, > > Oh, that's a pity. It introduced too much maintenance overhead. Every plugin had to be aware of the multi-screen case and the APIs functioned around multi-screen, even though very few people use this configuration. > >> but I think you can manage more than one screen by using >> separate instances as you've done. > > Yeah. It does work. Seems less efficient though having two instances > of compiz and decorators running. Also, configuration options are not > shared so you end up having to configure them both individually with the > same settings. > >> I'm not sure what the state of multiscreen settings are. I don't think >> they have been supported for quite some time. In my opinion, we should >> probably just remove that dropdown. I don't think there's a very good >> usecase for having per-screen settings, especially now that we have >> one compiz instance per screen. > > However that's resolved, having to copy configuration from one instance > of the configuration manager to another, especially when you are not > allowed to run one on each screen, side-by-side, is more than just a > little annoying. :-( They should be shared between the two screens. I'll file a bug about it so I remember to get to it. > > Thanks for the info. Appreciate your time. No problem. Glad to see you are getting the most out of compiz. Best. > > Cheers, > b. > > > > ___ > compiz mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/compiz > -- Sam Spilsbury ___ compiz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/compiz
Re: [compiz] multiscreen
On 13-01-09 09:12 AM, Sam Spilsbury wrote: > Hi Brian Hi Sam, > Support for one instance managing multiple screens was removed in > 0.9.0, Oh, that's a pity. > but I think you can manage more than one screen by using > separate instances as you've done. Yeah. It does work. Seems less efficient though having two instances of compiz and decorators running. Also, configuration options are not shared so you end up having to configure them both individually with the same settings. > I'm not sure what the state of multiscreen settings are. I don't think > they have been supported for quite some time. In my opinion, we should > probably just remove that dropdown. I don't think there's a very good > usecase for having per-screen settings, especially now that we have > one compiz instance per screen. However that's resolved, having to copy configuration from one instance of the configuration manager to another, especially when you are not allowed to run one on each screen, side-by-side, is more than just a little annoying. :-( > Multiscreen is hardly a supported usecase anywhere, Really? Personally, I like the utility of having two screens, side-by-side, each with their own multiple workspaces where I can switch the workspace of one screen without switching the other. When a "bigscreen" manager can do that, I'll be happy to jump. > and many > compositing managers have been trying to phase it out. That is sad to hear. Are any of them providing for the use-case I described above though? > I know it is > also not working on other window managers such as Metacity. I am using metacity (2.34.1) here right now and it's managing both screens. > Most of > the big desktop shells also do not support it properly either. Indeed. Due to my hardware configuration (two monitors, one of them rotated 90 degrees) GNOME 3 is actually completely unable to run on this configuration. And I don't mean it's just not ideal, I mean it actually completely refuses to run. > The better thing to do in this instance is to use Xinerama-like > implementations to manage multiple monitors, But as I mentioned, I don't like both monitors switching in-tandem when I want to switch workspaces. I like being able to keep the monitor on the left in workspace 1 while I switch the monitor on the right amongst 3-4 different workspaces. And at the same time, I like to be able to switch the left monitor from workspace 1 to workspace 2 while keeping the right monitor on it's current workspace. I'm sure such a paradigm could be achievable with a "bigscreen" configuration (Xinerama or Nvidia twinview, etc.), I just don't know of any that actually implement it. > or to have multiple > servers running for each head. Bleah (assuming you mean multiple X servers -- something that I don't think is even possible with a single card, dual screen video card). That's even worse than running two window managers. Thanks for the info. Appreciate your time. Cheers, b. signature.asc Description: OpenPGP digital signature ___ compiz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/compiz
Re: [compiz] multiscreen
Hi Brian On Wed, Jan 9, 2013 at 10:02 PM, Brian J. Murrell wrote: > I'm wondering what the status of multiscreen support is supposed to be > in 0.9.7.12. Using Ubuntu Precise, it seems that compiz only manages 1 > screen and if you want compiz on both screens of a dual screen set up > you need to start two compiz sessions as such: > > $ DISPLAY=:0.0 compiz --replace > $ DISPLAY=:0.1 compiz --replace > > What makes this all so strange is that even when one starts only the > first one and leaves the second screen unmanaged my compiz, the compiz > configuration settings manager still shows a pulldown for both screens > in the upper left. Support for one instance managing multiple screens was removed in 0.9.0, but I think you can manage more than one screen by using separate instances as you've done. Compiz should come up on both screens if you start it on both screens separately. I think I saw this not work a few months ago, so perhaps it might be worth looking into? > > What's more, if one does start two compiz managers, the settings changes > made only affects the one screen despite what the screen pulldown in the > upper left says and one has to stop the settings manager on screen 0 and > start it on screen 1 to make any changes there. > I'm not sure what the state of multiscreen settings are. I don't think they have been supported for quite some time. In my opinion, we should probably just remove that dropdown. I don't think there's a very good usecase for having per-screen settings, especially now that we have one compiz instance per screen. > In any case, what I am wondering is if this is the state of compiz in > general or if all of this is nasty Ubuntu hacks. Multiscreen is hardly a supported usecase anywhere, and many compositing managers have been trying to phase it out. I know it is also not working on other window managers such as Metacity. Most of the big desktop shells also do not support it properly either. The better thing to do in this instance is to use Xinerama-like implementations to manage multiple monitors, or to have multiple servers running for each head. Cheers, Sam > > Cheers, > b. > > > ___ > compiz mailing list > [email protected] > http://lists.freedesktop.org/mailman/listinfo/compiz > -- Sam Spilsbury ___ compiz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/compiz
Re: [compiz] Multiscreen patches
On Wed, 2007-04-18 at 03:02 +0200, Kristian Lyngstøl wrote: > On 4/18/07, David Reveman <[EMAIL PROTECTED]> wrote: > > I think that sharing textures and display lists between contexts on > > different screens only work with xgl. I'm not sure what the GLX spec > > says about this but it doesn't matter, lets do what's working with most > > existing servers as basic multi-screen support is all I think makes > > sense to support in compiz. > > > > Please remove the shareList stuff completely. > > Done. > > 0001-Do-not-use-shareList.txt > > Removes shareList and adds the properly formated makeScreenCurrent () > calls necesarry. Perfect. Thanks, - David ___ compiz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/compiz
Re: [compiz] Multiscreen patches
On 4/18/07, David Reveman <[EMAIL PROTECTED]> wrote:
I think that sharing textures and display lists between contexts on
different screens only work with xgl. I'm not sure what the GLX spec
says about this but it doesn't matter, lets do what's working with most
existing servers as basic multi-screen support is all I think makes
sense to support in compiz.
Please remove the shareList stuff completely.
Done.
0001-Do-not-use-shareList.txt
Removes shareList and adds the properly formated makeScreenCurrent ()
calls necesarry.
--
Regards,
Kristian
From 94c67a2909b1e32a28e6b6f58069e7be29e836cd Mon Sep 17 00:00:00 2001
From: Kristian Lyngstol <[EMAIL PROTECTED]>
Date: Wed, 18 Apr 2007 02:58:59 +0200
Subject: [PATCH] Do not use shareList
Do not attempt to share across screens/contexes. Make sure the current
screen's context is current context before modifying textures.
---
src/screen.c |6 +-
src/texture.c |6 ++
2 files changed, 7 insertions(+), 5 deletions(-)
diff --git a/src/screen.c b/src/screen.c
index f80a0a0..6b75c9c 100644
--- a/src/screen.c
+++ b/src/screen.c
@@ -1411,7 +1411,6 @@ addScreen (CompDisplay *display,
GLfloat diffuseLight[] = { 0.9f, 0.9f, 0.9f, 0.9f };
GLfloat light0Position[] = { -0.5f, 0.5f, -9.0f, 1.0f };
CompWindow *w;
-GLXContext shareList = 0;
s = malloc (sizeof (CompScreen));
if (!s)
@@ -1650,14 +1649,11 @@ addScreen (CompDisplay *display,
return FALSE;
}
-if (display->screens)
- shareList = display->screens->ctx;
-
/* try both direct and indirect rendering contexts in case one of them
fail to support GLX_EXT_texture_from_pixmap */
for (i = 0; i < 2; i++)
{
- s->ctx = glXCreateContext (dpy, visinfo, shareList, !indirectRendering);
+ s->ctx = glXCreateContext (dpy, visinfo, NULL, !indirectRendering);
if (!s->ctx)
{
fprintf (stderr, "%s: glXCreateContext failed\n", programName);
diff --git a/src/texture.c b/src/texture.c
index 1571026..976f1b6 100644
--- a/src/texture.c
+++ b/src/texture.c
@@ -60,6 +60,7 @@ finiTexture (CompScreen *screen,
{
if (texture->name)
{
+ makeScreenCurrent (screen);
releasePixmapFromTexture (screen, texture);
glDeleteTextures (1, &texture->name);
}
@@ -113,6 +114,7 @@ imageToTexture (CompScreen *screen,
&image[(height - i - 1) * width * 4],
width * 4);
+makeScreenCurrent (screen);
releasePixmapFromTexture (screen, texture);
if (screen->textureNonPowerOfTwo ||
@@ -247,6 +249,7 @@ bindPixmapToTexture (CompScreen *screen,
return FALSE;
}
+makeScreenCurrent (screen);
texture->pixmap = (*screen->createPixmap) (screen->display->display,
config->fbConfig, pixmap,
attribs);
@@ -338,6 +341,7 @@ releasePixmapFromTexture (CompScreen *screen,
{
if (texture->pixmap)
{
+ makeScreenCurrent (screen);
glEnable (texture->target);
if (!strictBinding)
{
@@ -362,6 +366,7 @@ enableTexture (CompScreen*screen,
CompTexture *texture,
CompTextureFilter filter)
{
+makeScreenCurrent (screen);
glEnable (texture->target);
glBindTexture (texture->target, texture->name);
@@ -443,6 +448,7 @@ void
disableTexture (CompScreen *screen,
CompTexture *texture)
{
+makeScreenCurrent (screen);
if (strictBinding)
{
glBindTexture (texture->target, texture->name);
--
1.4.4.4
___
compiz mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/compiz
Re: [compiz] Multiscreen patches
On Mon, 2007-04-16 at 19:59 +0200, Kristian Lyngstøl wrote: > 0001-Do-not-use-shareList-for-multiple-screens.txt > This is essential to get compiz to control multiple screens. I assume > there's a better way though. We can either remove the shareList > support entirely or we should check if it's supported or not. > Improvements on this patch might be a good idea. In Beryl we chose to > leave this as an option, but that doesn't strike me as the best > approach either. Is sharing display lists across screens meant to be > possible? (If not, we don't need the code that allows it). I think that sharing textures and display lists between contexts on different screens only work with xgl. I'm not sure what the GLX spec says about this but it doesn't matter, lets do what's working with most existing servers as basic multi-screen support is all I think makes sense to support in compiz. Please remove the shareList stuff completely. > > 0002-Change-warpPointer-to-take-a-CompScreen-as-argument.txt > Without this, the pointer will warp to the same screen regardless of > where it was (whichever happens to be d->screens). Plugins not in the > compiz repo will have to adjust. I've applied this one. > > 0003-Use-makeScreenCurrent-is-run-before-dealing-with-textures.txt > This makes sure we're working on the correct context before we try to > modify textures. Without it, textures will get corrupted. Fast. This is a requirement when changing the shareList code. Hence, it makes sense to make this part of the Do-not-use-shareList patch. Please make all calls to makeScreenCurrent function like like this "makeScreenCurrent (screen);" instead of "makeScreenCurrent(screen);" to be consistent with the current coding style. > > This should get things started, and get compiz in a state where > multiscreen is usable. I've got a few other patches lined up (well, > more or less) when you're ready to accept these (or if you want me to > improve anything). OK, thanks. - David ___ compiz mailing list [email protected] http://lists.freedesktop.org/mailman/listinfo/compiz
