[tor-bugs] #14429 [Tor Browser]: Automated rounding of content window dimensions

Tor Bug Tracker & Wiki blackhole at torproject.org
Sat Mar 28 22:34:00 UTC 2015


#14429: Automated rounding of content window dimensions
-------------------------+-------------------------------------------------
     Reporter:           |      Owner:  arthuredelstein
  arthuredelstein        |     Status:  needs_revision
         Type:  defect   |  Milestone:
     Priority:  normal   |    Version:
    Component:  Tor      |   Keywords:  tbb-fingerprinting-resolution, tbb-
  Browser                |  torbutton, tbb-4.5-alpha,
   Resolution:           |  TorBrowserTeam201503R, GeorgKoppen201503R
Actual Points:           |  Parent ID:
       Points:           |
-------------------------+-------------------------------------------------

Comment (by arthuredelstein):

 Replying to [comment:46 gk]:
 > Replying to [comment:45 gk]:
 > > When starting or, sometimes, when loading an other site I get tons of:
 > > {{{
 > > [03-28 21:42:07] Torbutton INFO: zoom 1X chromeWin 1000x972 container
 1000x901 gBrowser 1000x900 content 1000x900
 > > [03-28 21:42:07] Torbutton INFO: zoom 1X chromeWin 1000x971 container
 1000x900 gBrowser 1000x900 content 1000x900
 > > }}}
 >
 > And now i seem to be stuck in a loop that already lasts for minutes:
 > {{{
 > [03-28 22:11:20] Torbutton INFO: zoom 1X chromeWin 1000x973 container
 1000x902 gBrowser 1000x900 content 1000x900
 > [03-28 22:11:20] Torbutton INFO: zoom 1X chromeWin 1000x972 container
 1000x901 gBrowser 1000x900 content 1000x900
 >
 > }}}

 This loop should stop as soon as you move your mouse over the browser
 window. In fact you are seeing the "rebuild" function which "jogs" the
 window size.

 The reason for this jog (on linux) is because of the followng scenario:
 1. The user drags the window
 2. The user holds the mouse down, but stops dragging
 3. "shrinkwrap" is called and the browser attempts to resize the window to
 rounded dimensions
 4. The window manager (such as GNOME or KDE) doesn't allow resizing
 because as far as it is concerned, the "dragging" event is continuing
 5. The browser draws the window contents as shrunk to 200i x 100j, but the
 window manager does not. So a large white space appears.

 There is no way for the browser to know about this discrepancy. We can
 easily fix the discrepancy with a single call to rebuild, *unless* the
 user is still holding the mouse down. So we need to keep calling rebuild
 periodically, until we can be sure the user is no longer holding on to the
 drag event. The only way to be sure of this is if a mouseover is detected.
 So we keep calling rebuild every 250 ms until a mouseover happens.

--
Ticket URL: <https://trac.torproject.org/projects/tor/ticket/14429#comment:47>
Tor Bug Tracker & Wiki <https://trac.torproject.org/>
The Tor Project: anonymity online


More information about the tor-bugs mailing list