GNOME Bugzilla – Bug 728143
Location bar is cleared when overview finishes loading
Last modified: 2014-05-12 13:26:47 UTC
In Epiphany 3.12.0, press Ctrl+T to create a new tab, then quickly start typing in the location bar. There will be a small delay between opening the new tab and the appearance of the grid with webpage thumbnails. As soon as the pages appear, everything typed into the location bar is deleted. On my computer, the delay is significant enough (0.5-2.5 seconds) to be annoying.
Yes. We also need to improve that delay, though that's a different issue.
Created attachment 275868 [details] [review] Proposed patch Do not clear user-entered text from the locationbar while loading the overview.
I wonder if we should stop an ongoing load when user starts typing in the url bar. This problem is not specific to the overview, I guess.
Review of attachment 275868 [details] [review]: ::: embed/ephy-web-view.c @@ +818,3 @@ + if (ephy_web_view_is_loading (view) && priv->typed_address != NULL + && !strcmp (address, "about:overview")) This is not the right fix. This bug is unrelated to it being the overview. @@ -819,1 @@ ephy_web_view_set_typed_address (view, NULL); The problem is actually that this is assuming that if there is a typed address when the webview is in loading state, then this text was typed for the previous contents of the view. In reality, there is a very brief moment in which, upon creation of the webview, the user can already type something in the address bar before the webview starts its load. So, IMO, the right fix would be to remove this from here and handle it somewhere else, possibly in the calling methods that relate to this.
Created attachment 276379 [details] [review] ephy-web-view: do not clear typed address on first load Previously, the first page loaded in a webview would be done with before the user had any chance to type an address, so it was safe to assume that any typed address could be cleared during page loads, as they would always come from previously loaded pages. Now that the process of creating a webview is different and involves spawning a web process that needs to be ready before the initial page can be loaded, it might be possible for users to type an address before this is ready. This breaks the previous assumption and needs to be dealt with, in order to avoid cleaning up typed text during the initial page load. Additionally, it makes sense to make set_address() a no-op if the given address is the same as the currently loaded.
Review of attachment 276379 [details] [review]: Ok, it sounds reasonbale, let's try this way. Thanks!
Attachment 276379 [details] pushed as 0c3938f - ephy-web-view: do not clear typed address on first load