[tor-bugs] #30945 [Applications/Tor Browser]: Port Letterboxing to TB for Android
Tor Bug Tracker & Wiki
blackhole at torproject.org
Sat Jun 22 14:59:10 UTC 2019
#30945: Port Letterboxing to TB for Android
------------------------------------------+----------------------
Reporter: tom | Owner: tbb-team
Type: defect | Status: new
Priority: Medium | Milestone:
Component: Applications/Tor Browser | Version:
Severity: Normal | Keywords:
Actual Points: | Parent ID:
Points: | Reviewer:
Sponsor: |
------------------------------------------+----------------------
I'm not sure what exactly you want to do here; but the following patch
should get you some/most of the way once you figure it out...
{{{
diff --git a/mobile/android/chrome/content/browser.js
b/mobile/android/chrome/content/browser.js
--- a/mobile/android/chrome/content/browser.js
+++ b/mobile/android/chrome/content/browser.js
@@ -6735,16 +6735,21 @@ var Tabs = {
case "pageshow":
// Clear the domain cache whenever a page is loaded into any
browser.
this._domains.clear();
break;
case "TabOpen":
// Use opening a new tab as a trigger to expire the most stale
tab.
this.expireLruTab();
+
+ let tab = aEvent.target;
+ //tab.clientWidth
+ //tab.clientHeight
+ tab.style.margin = "50px";
break;
}
},
// Manage the most-recently-used list of tabs. Each tab has a timestamp
// associated with it that indicates when it was last touched.
expireLruTab: function() {
if (!this._enableTabExpiration) {
}}}
This is waaaaay more simple than Desktop. I'm not sure what cases we are
not handling here; but since there's no resizing that makes it simpler.
Rotating seems to work. It doesn't exempt privileged URLs like
about:config but if we did do that then we would need to handle other
events besides TabOpen and then add/remove the margin... It doesn't affect
the new tab page. Anyway - it needs playing with and testing (as well as
deciding how you want to letterbox) but at least we found the 'where'.
You can fiddle with this code using the Remote Debugging feature. (At
least I can do it with Fennec in esr68.) If you haven't used it before:
Using Nightly (or Dev Edition) go to about:debugging on your desktop FF.
Then in Fennec go to Settings -> Advanced -> Enable Remote Debugging via
USB. Go back to about:debugging on the desktop, and you should be able to
connect to Fennec on the left hand side. Scroll down to main processes
and choose inspect. In the new tab that opens, go to Debugger, Control+P
and find browser/content/browser.js and scroll down to line 6744-ish, and
place your breakpoint. Now when you open a tab you should hit the
breakpoint and can inspect the tab variable in the Console section.
--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/30945>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online
More information about the tor-bugs
mailing list