discuss-gnustep
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSPasteboard on X, what to do?


From: Richard Frith-Macdonald
Subject: Re: NSPasteboard on X, what to do?
Date: Wed, 9 Jan 2002 15:22:06 +0000

On Wednesday, January 9, 2002, at 11:27 AM, Wim Oudshoorn wrote:

You wrote:
Well, they are both displaying on the same screen of the same machine.
If I was controlling
the keyboard and mouse of the machine to which the screen was attached,
I'd expect to be
able to select text in the other persons app, cut it to the pasteboard,
move the mouse to
my app, and paste it in.

Ok, I see.  But in my definition I view this as a really big screen.
What I actually meant with screen was the X term Display.
(You see I get really confused.)

So to translate back.  My idea was to group by the X notion of Display.

OK ... that's pretty confusing then ... as the X concept of a Display is
pretty much what it sounded like you were referring to as a 'machine' ...
ie it's someones workstation,  while the X Screen is more like an
individual CRT or LCD device attached-to/part-of the machine.

That rather raises the question of what you were referring to as a machine did you mean some sort of back-end computational engine located at a distance from the users workstation? The OpenStep AppKit is very much designed/used as a workstation tool, so it's rather unusual to use the term machine that
way in this context.

By the way ... I think the X term 'display' can easily be misleading ... in normal english I think it's pretty synonymous with 'screen'. I'd prefer to
use the term 'workstation' for the chunk of equipment that a person sits
in front of and physically interacts with.

I think they should be using the pasteboard server of the *machine* to
which they are displaying.  So you could cut and paste between apps on
any screen attached to that machine.  This model assumes that every
screen
is attached to a machine - I know that that is not 100% the case in X,
where a screen may be a dumb X server, but I'd suggest that in such a
situation it would be beast to designate some real server (where a
pasteboard
server process can run) as the owner of that screen.

I am confused again. Are you saying that you want to associate the
pasteboard with the Display?

I think that's right ... the pasteboard system is designed to be associated
with a particular workstation (and the CX term 'Display' corresponds to a
workstation).  So the pasteboard server that an application should use is
the one for the workstation upon whose screen(s) the app is visible.

I was being stupid because I allowed myself to be trapped into the model
you presented where machines and screens are separate ...  the solution
is trivial if you say that each screen is associated with a machine.

Please no.  A display is NOT associated to one machine!

display == workstation == machine

I don't think anyone would want to associate a pasteboard server on a remote
mainframe, it needs to be associated with a workstation.

Two servers:  A, B
Two XDisplays: S, T  (one user behind S and one user behind T)
S is running two programs P1, P2
T is runnint two programs Q1, Q2

        Server A,         Server B

S          P1                P2
T          Q1                Q2


Now user S, selects something for the find panel, or
for copy/past in P1.  This ends up in the pasteboard of Server A.
Now S selects application P2, and reselects the find panel, or
pastes. NOTHING happens.   (note I am not talking DnD here)

Afterwards user T opens the find panel or does a paste.
Voila, the content of what user S selected appears.

If S is associated with A, then P1 and P2 should both use the
pasteboard server on A ... and cut/paste should work as expected.
The selection for P1 will appear in P2 and not in Q1 or Q2

Why should S be associated with A??? and I assume that you want
to associate T with B.  I really can not imagine how you want
to set up these associations.

How about ... because you didn't say where any other servers were?
The pasteboard servers have to run somewhere, so I assumed that
server A would run the X server software controling X display S,
and it would therefore make sense for the associated pasteboard
server to run on that server also (minimising network traffic).

Seems we just have confusion because your original email said
'screen' rather than 'workstation' and 'machine' rather than
'remote backend computational engine' or some such.  The second
naming problem is understandable - I can't think of a nice short,
clear term to express that concept.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]