Open Bug 1690082 Opened 2 years ago Updated 2 years ago

Blank Tab after minimize and re-open on e24 DE

Categories

(Core :: Widget: Gtk, defect, P1)

Firefox 84
defect

Tracking

()

UNCONFIRMED

People

(Reporter: ylee, Unassigned)

References

(Blocks 1 open bug)

Details

Attachments

(1 file)

Attached file about.support

User Agent: Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.96 Safari/537.36

Steps to reproduce:

Open firefox with 2 tabs open in the enlightenment 24 desktop and set the settings in customize to not display the title bar. Minimize FF now open FF again. The tab displaying works fine. Switching to the other tab and the content is white.

Actual results:

The content in the hidden tab was not displayed nor did the FF hamburger menu. One can type in the URL bar but the broken tab will not display the results of trying to load a new URL. Easiest to see in a video:

https://drive.google.com/file/d/16sWflyteS1TDNSkm1j9aJiRdzJgc093-/view?usp=sharing

Expected results:

Both tabs should have worked as expected and as they do in other DE's where this functionality works.

Blocks: gtktitlebar
Priority: -- → P1

Can you please try latest nightly if you can reproduce it? How-to is here:
https://fedoraproject.org/wiki/How_to_debug_Firefox_problems?rd=Bug_info_Firefox#Testing_Mozilla_binaries

Also does the content show when you reload the missing page?
Thanks.

Flags: needinfo?(ylee)

Is there any way how I can reproduce it? Which distro / environment I need to install?

The issue persists with FF nightly. And no the content will not show if I reload the web page in the blank tab. It acts like it is reloading (and maybe is) but it is not being displayed. The same thing occurs if I type a new URL in the address bar of the blank tab and load the new web page, it acts like it is loading but there is blank content.

I don't know of many distros that have a recent version of enlightenment (and EFL) packaged or installed. Raster, an e-dev, says arch linux has them in their repos as he packages them. Presumably, you could reproduce this on any distro if you downloaded and compiled EFL and then E. And logged into enlightenment. The VM in the video shows Lubuntu 20.04 with e and efl compiled from enlightenment git. The user that reported this to me was using an ISO I made for Bodhi Linux users, bodhi-enlightenment-6.0.0-64-prealpha.iso. This iso is ubuntu 20.04 with e24 installed, nothing in the way of any Bodhi Linux customizations or patches.

See https://sourceforge.net/projects/bodhidev/files/temp/

From my POV installing that ISO would be the easiest way to reproduce this issue.

Flags: needinfo?(ylee)

Some tech details:

With CSD, when you press iconify/minimize FF assumes it is minimized from that point on UNTIL WM_STATE property on the window changes back to a Normal state. E is refusing to change WM_STATE because E maintains other copies of the FF window in miniature/iconic form throughout It's UI and I've found that various apps and toolkits refuse to do things like keep playing video or rendering updates where this is not actually desired, so E basically refuses or logically iconify to keep the app rendering as usual (if apps just dropped down to like 5fps or so this might be OK, but they tend to just stop entirely). FF actually does just this if it thinks it's iconified. The fact is that E never actually agreed to the request to iconify - it did nothing (but it did visually make the window seem to minimize).

FF assumes that a WM will ALWAYS iconify when requested. This is not correct. A WM can refuse to do this if it chooses and it's assumption that it is iconified the moment you press that minimize button in the CSD is also wrong.

Solution: FF should only think it is iconified when WM_STATE changes to Iconic. Until then it's not. An example when a WM does agree: it may have an animation to iconify. You'd want updates to continue while it shrinks the FF window down or scrunches it into a ball of paper and throws it into some trash can etc. and the WM will change WM_STATE to Iconic at the end of this animation, not the start.

Suggestion: Iconic state probably should not totally cease rendering but maybe drop to e.g. 5fps. It's save a lot of power but also still allow updates for miniatures e.g. in task panels etc. :) Yes. It'd be nice to have 2 kinds of Iconified. "Live" and "Still" but no such standard exists. I'm happy to discuss some kind of way to achieve this. :)

FYI any distribution that ships with Enlightenment 0.24. Arch Linux does (I am now beginning to maintain the EFL/E etc. packages for it). I have for now put a temporary workaround by forcing WM_STATE to change in git but this leads to the "no updates while iconified" problem.

You need to log in before you can comment on or make changes to this bug.