Closed Bug 1204299 Opened 9 years ago Closed 6 years ago

[System] alwaysLowered window steals focus from the main application window

Categories

(Firefox OS Graveyard :: Gaia::System::Window Mgmt, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: azasypkin, Assigned: arcturus)

References

Details

It seems alwaysLowered window steals focus from the originating app and user can't focus anything there anymore.

STR:
* Install application [1], run it and try to focus text input.

Expected result: alwaysLowered window should not affect originating app in any way and input in app [1] should be focusable.

Actual result: once alwaysLowered window is created, user can't focus anything on the page.

[1] https://github.com/nga-crash-tests/always-lowered-window
Hey Francisco,

Could you please take a look or forward to anybody who can help with this?

Thanks!
Flags: needinfo?(francisco)
Is not that the default behavior, focusing on the new window, each time we do a window.open?

Etienne, is this our decision, I couldn't find a standard where it's defined, if so I'll try to take it :)
Flags: needinfo?(francisco) → needinfo?(etienne)
(In reply to Francisco Jordano [:arcturus] [:francisco] from comment #2)
> Is not that the default behavior, focusing on the new window, each time we
> do a window.open?
> 
> Etienne, is this our decision, I couldn't find a standard where it's
> defined, if so I'll try to take it :)

Not sure.
Looks like the part that it's our control is doing the right thing (and not focusing), but worth double checking! You can find the logic here [1].

[1] https://github.com/mozilla-b2g/gaia/blob/94db16e0f12d2eef906aef76e061ee9041259442/apps/system/js/app_transition_controller.js#L291
Flags: needinfo?(etienne)
Taking care of this one :)
Assignee: nobody → francisco
Seems |stayBackground| configuration is working ok, but we are having an error browser_mixin.js in :

E/GeckoConsole(12241): [JavaScript Error: "InvalidNodeTypeError: The supplied node is incorrect or has an incorrect ancestor for this operation." {file: "app://system.gaiamobile.org/js/browser_mixin.js" line: 259}]

_setActive: function bm__setActive(active) {
      if (this.browser && this.browser.element &&
          'setActive' in this.browser.element) {
        this.debug('setActive on browser element:' + active);
        this.browser.element.setActive(active);
      }
    }

this.browser.element.setActivie(active) seems it's creating the problem.

Etienne, I'm not familiar with that code, can you guide me on what are we doing there?
Flags: needinfo?(etienne)
(In reply to Francisco Jordano [:arcturus] [:francisco] from comment #5)
> Seems |stayBackground| configuration is working ok, but we are having an
> error browser_mixin.js in :
> 
> E/GeckoConsole(12241): [JavaScript Error: "InvalidNodeTypeError: The
> supplied node is incorrect or has an incorrect ancestor for this operation."
> {file: "app://system.gaiamobile.org/js/browser_mixin.js" line: 259}]
> 
> _setActive: function bm__setActive(active) {
>       if (this.browser && this.browser.element &&
>           'setActive' in this.browser.element) {
>         this.debug('setActive on browser element:' + active);
>         this.browser.element.setActive(active);
>       }
>     }
> 
> this.browser.element.setActivie(active) seems it's creating the problem.
> 
> Etienne, I'm not familiar with that code, can you guide me on what are we
> doing there?

I'm not sure about the question...
This is where we set the visibility of the iframe as in [1], and as you can see we're being extra careful (checking if the iframe has a setVisible method and all).

Maybe the iframe is not in the dom yet at the time of the call?


[1] https://developer.mozilla.org/en-US/docs/Web/API/HTMLIFrameElement/setVisible
Flags: needinfo?(etienne)
Firefox OS is not being worked on
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.