subdavis / Tusk

🐘 🔒 KeePass-compatible browser extension for filling passwords.
https://subdavis.com/Tusk
Other
483 stars 74 forks source link

Can't add Drive database in Vivaldi browser #130

Closed tonyrulez closed 2 months ago

tonyrulez commented 6 years ago

This issue is a

Please describe the current behavior, and explain why it's bad.

I recently switched to Vivaldi, but the Google Drive database access doesn't work. Reproduction:

In freshly installed Tusk, when I turn on Google Drive database, it asks for a permission. After I gave it the permission, it still says disabled, however the switch is turned on. switch Tried restarting both the browser and the computer, but it never works.

System informations

Vivaldi | 1.14.1077.60 (Stable channel) (32 bit) KeePass Tusk | 2018.2.25 OS | Windows 10.0.16299 build 16299 (64 bit)

subdavis commented 6 years ago

Vivaldi is an unsupported browser. That being said, I'll be happy to take a look and see if it's an easy fix.

Thanks for the report.

subdavis commented 6 years ago

Found the obvious culprit:

chrome.identity.getAuthToken({
                interactive : true
            }, function(token) {console.log(token)});

The above function is "implemented" in vivaldi but actually does nothing. It tricks Tusk into believing that we are on Chrome, but then cannot answer when the function is actually called.

As Vivaldi is based on Chrome, it is virtually undetectable from code. I will need to fall back to using WebAuthFlow for google drive in vivaldi, but the code has no way of detecting a difference.

As far as I can tell, the only way would be to add an isVivaldi checkbox in the advanced settings page.

subdavis commented 6 years ago

Im not sure why this issue was closed.

zmilonas commented 6 years ago

Accidentally because of merging #164, i added a keyword in the Pull Request. Sorry my bad.

zmilonas commented 6 years ago

The above function is "implemented" in vivaldi but actually does nothing. It tricks Tusk into believing that we are on Chrome, but then cannot answer when the function is actually called. As Vivaldi is based on Chrome, it is virtually undetectable from code. I will need to fall back to using WebAuthFlow for google drive in vivaldi, but the code has no way of detecting a difference.

Because of that I would mark the issue as wontfix, vivaldi developers are not making it easy for extensions to be cross-compatible. I'd even go as far out as to say it's more of a browser bug.

And since we have limited developer capacity I think supporting such browser fork with miniscule userbase is not our top priority. We're happy to accept contributions though :)

Mosdatlan-falusi commented 6 years ago

Okay, maybe this is not quite belong here, but i found a temporary solution to the problem. The basic authentication didn't work, but, if you chose the "use another account" and fill the fields (again) you can login: [https://i.imgur.com/RQv2vOe.png]

subdavis commented 6 years ago

Could you elaborate?

Beginning with the manage databases screen, you click the "enable" switch and what happens? How do you get to a page that let's you "use another account"?

carstengrimm commented 6 years ago

Would also be interested to know. Latest Vivaldi Update still no fix.

tani commented 5 years ago

And since we have limited developer capacity I think supporting such browser fork with miniscule userbase is not our top priority. We're happy to accept contributions though :)

I open a new pull request for this issue. Please check it 😆