How do various apps and DEs handle the primary selection?

Michael Stahl mst at libreoffice.org
Mon Jul 8 10:54:33 UTC 2019


On 08.07.19 12:46, Jan-Marek Glogowski wrote:
> Hi Miklos
> 
> Am 08.07.19 um 09:22 schrieb Miklos Vajna:
>> On Mon, Jul 08, 2019 at 01:07:38AM +0200, Jan-Marek Glogowski <glogow at fbihome.de> wrote:
>>> And Writer clears it when a Shell closes, while Calc (~ScTabView) and Draw
>>> (:~View) clear it when the view is closed. But I'm a bit confused by the terms
>>> Shell and View and then there is even a ViewShell...
>>
>> A "shell" on its own is not clear. An object shell usually refers to an
>> SfxObjectShell sublcass, there is one instance for one opened document.
>> If you go to Window -> New Window, you can have multiple views for the
>> same document. Then you get multiple SfxViewShell subclasses.
> 
> I like the term "usually" in the first sentence ;-)
> 
>> In the Writer case, the subclasses are called SwDocShell and SwView.
> 
> My understanding has been, that a View displays stuff and a Shell manages input
> for the View; kind of. Can there be a Shell without a View? Does that even make
> sense?

iirc it's possible but i forgot what the corner case was...

> And then there is "class SwViewShell : public sw::Ring<SwViewShell>" with no
> SfxShell anywhere I can see it.

it's not related to SfxShell but to SfxViewShell... via SwView being a 
subclass of SfxViewShell and SwView::m_pWrtShell

but note that there can be instances of SwViewShell too that aren't 
subclassed and thus have no SwView, e.g. for the print preview.


More information about the LibreOffice mailing list