#10571: Tabs not showing properly in macOS full (and split) screen
Stephan Witt
st.witt at gmx.net
Sun Aug 2 16:10:40 UTC 2020
Am 02.08.2020 um 13:25 schrieb Daniel <xracoonx at gmx.de>:
>
> On 2020-08-02 10:55, Stephan Witt wrote:
>> Am 01.08.2020 um 16:51 schrieb Stephan Witt <st.witt at gmx.net>:
>>>
>>> Am 01.08.2020 um 09:35 schrieb Daniel <xracoonx at gmx.de>:
>>>>
>>>> On 2020-08-01 09:32, Stephan Witt wrote:
>>>>> Am 31.07.2020 um 07:13 schrieb Daniel <xracoonx at gmx.de>:
>>>>>>
>>>>>> On 2020-07-30 21:21, Stephan Witt wrote:
>>>>>>> Am 29.07.2020 um 22:59 schrieb Daniel <xracoonx at gmx.de>:
>>>>>>>>
>>>>>>>> On 2020-07-29 21:03, Stephan Witt wrote:
>>>>>>>>> Am 29.07.2020 um 10:15 schrieb LyX Ticket Tracker <trac at lyx.org>:
>>>>>>>>>>
>>>>>>>>>> #10571: Tabs not showing properly in macOS full (and split) screen
>>>>>>>>>> -----------------------+-------------------------
>>>>>>>>>> Reporter: racoon | Owner: lasgouttes
>>>>>>>>>> Type: defect | Status: new
>>>>>>>>>> Priority: normal | Milestone:
>>>>>>>>>> Component: general | Version: 2.2.2
>>>>>>>>>> Severity: normal | Resolution:
>>>>>>>>>> Keywords: os=macosx |
>>>>>>>>>> -----------------------+-------------------------
>>>>>>>>>>
>>>>>>>>>> Comment (by racoon):
…
>>>>>> Okay, tested again. It happens under a special condition: when the LyX window is previously maximized (not in fullscreen but maximized by double clicking the title bar). So:
>>>>>>
>>>>>> 1. Double click the title bar (maximizes the window)
>>>>>
>>>>> This one is configurable. Alternatively the double click sends it to the dock (minimize it).
>>>>>
>>>>>> 2. Click on View > Fullscreen (enters fullscreen)
>>>>>> 3. Click on View > Fullscreen (exits fullscreen)
>>>>>
>>>>> I don’t understand what’s not working. It looks like maximizing the window is not full-screen.
>>>>
>>>> What I see here (Catalina) is that after existing the fullscreen via
>>>> LyX's dedicated function (Step 3), the fullscreen is immediately
>>>> re-activated. The only way to get out of it is using the WM's fullscreen
>>>> button.
>>>
>>> I see. This isn’t the case with my latests (not published) patch anymore (hopefully).
>> Here is the current state of my patch to improve switch to/from full-screen.
>> It contains additional code to detect switch to/from window maximize state.
>> This is actually not used yet. On Mac it could be a possibility to implement
>> the switch to/from the state you’ve called „focus mode“. That’s why I left it
>> as is ATM. The final patch will be without it and the maximize state can be done
>> later. For now I’d like to ask Pavel how this is different and/or managed on Linux.
>> Perhaps it doesn’t work the same way as on Mac.
>> Does it work as expected for you and on Linux? Can anyone test it on Windows, please?
>
> Very nice!
>
> You haven't asked explicitly for macOS feedback but I guess that is welcome as well.
Yes, thank you.
> Seems to work almost perfectly on macOS now. There is one small exception: when doing the last three steps mentioned above, the window gets out of the maximized state. But it's really small. And maybe it's just a Qt bug.
There is a difference between maximized and full-screen state.
To be sure I understand your recipe:
1. Maximize window (alt green dot)
2. Switch to full-screen (Command-Control-f)
3. Switch back from full-screen (Command-Control-f)
With these steps I can reproduce that LyX doesn’t return to maximized state. This is correct - „code wise“,
but the WM remembers the previous maximized state. So the behavior is different when using the green dot to
switch to and from full-screen. With the latter LyX returns to maximized state.
The effect of the really small window I cannot reproduce. But it’s reported already as ticket 11909 here:
https://www.lyx.org/trac/ticket/11909 (IMO).
I tried it inside my almost virgin Catalina virtual machine…
> (While reading the fullscreen code, I also noticed a little strangeness, but I guess it is not relevant here:
>
> void GuiWorkArea::setFullScreen(bool full_screen)
> {
> d->buffer_view_->setFullScreen(full_screen);
> setFrameStyle(QFrame::NoFrame);
> if (full_screen) {
> setFrameStyle(QFrame::NoFrame);
> if (lyxrc.full_screen_scrollbar)
> setVerticalScrollBarPolicy(Qt::ScrollBarAlwaysOff);
> } else
> setVerticalScrollBarPolicy(Qt::ScrollBarAsNeeded);
> }
>
> Isn't the frame style applied independent of full_screen?
Yes, these setFrameStyle calls are completely redundant and can be removed.
Stephan
More information about the lyx-devel
mailing list