Граф коммитов

62 Коммитов

Автор SHA1 Сообщение Дата
Tim Huang 3b43737132 Bug 1330882 - Part 4: Making the window.open() can only open rounded windows and the inner window will be automatically rounded after setting size through innerWidth/Height and outerWidth/Height when fingerprinting resistance is enabled. r=smaug
This patch makes the size of inner windows will be automatically rounded for
either window.open() with window features or setting window size through
innerWidth/Height and outerWidth/Height when fingerprinting resistance is
enabled. If the given value is greater the maximum available rounded size, then
it will be set to the maximum value. Otherwise, the size will be set to the
nearest upper 200x100.

This patch also adds one helper function in nsContentUtils for calculating the
rounded window dimensions.

MozReview-Commit-ID: J2r3951vuNN

--HG--
extra : rebase_source : a44b19bdf2ce7e90fc831ddc2b85a86d594cb0c3
2017-03-29 15:43:56 +08:00
Tim Huang c9c5bbc22e Bug 1330882 - Part 1: Making new windows to be rounded size when fingerprinting resistance is enabled (adopt from Tor #19459). r=arthuredelstein,smaug
MozReview-Commit-ID: 1qBNQhfdIYP

--HG--
extra : rebase_source : c46b4a936960ff165f950a59c1d31c1c5849645f
2017-03-29 15:43:54 +08:00
Kartikaya Gupta cf091ea0eb Bug 1328066 - Don't broadcast the live-resize events to all browser windows unnecessarily. r=mstange
The machinery for suppressing the displayport during live resizes
was using the Observer service. However, in the case of multiple
browser windows, this meant that all the open browser windows would
have their displayport suppressed if *any* of the browser windows
was being resized. This was mostly ok, as the displayport suppression
would be turned off once the resize ended. However, the code to
kick off a repaint with the unsuppressed displayport would only get
triggered on one of the windows (whichever happened to process the
unsuppress message last).

This patch stops using the Observer service for the implementation
machinery, and instead locates the active TabParent of the relevant
nsWindow, and invokes the displayport suppression directly on that.
This fixes the repainting bug and also avoids unnecessarily
broadcasting the suppression/unsuppression notification to windows
that don't neccessarily need it.

MozReview-Commit-ID: LBHOgOW9KUp
2017-02-01 10:38:16 -05:00
Nicholas Nethercote a28c8f38b2 Bug 1299335 (part 7) - Streamline nsIWidget::{Move,Resize}. r=mstange.
This patch changes them from |NS_IMETHOD| to |virtual void| because every
implementation of these functions always returns |NS_OK|.

--HG--
extra : rebase_source : 6207df5a46aeb6b8aaa0f697447a51bc6a6dc366
2016-12-19 20:54:03 +11:00
Gijs Kruitbosch a64e4f1b0e Bug 1322414 - part 1 - remove GetContentShellById and id passing, r=bz
MozReview-Commit-ID: FggtlNAP6ax

--HG--
extra : rebase_source : 3e20f36001d5b19e334941c2638573ba838d2df7
extra : histedit_source : 3f47eea51d257f23b0a5ba655911aab4d43ba8d1
2016-12-08 11:12:36 -10:00
Boris Zbarsky e0e53c48ae Bug 1310796 part 3. Remove the aTargetable argument of contentShellAdded. r=mystor 2016-12-08 16:41:45 -10:00
Boris Zbarsky 55f0730a5b Bug 1310796 part 2. Get rid of the now-unused nsXULWindow::mTargetableShells. r=mystor 2016-12-08 16:41:45 -10:00
Boris Zbarsky 846587070f Bug 1310796 part 1. Get rid of GetTargetableShellCount in favor of a more explicit GetTabCount. r=mystor,gijs 2016-12-08 16:41:45 -10:00
Andrea Marchesini 1ed1649bb7 Bug 1322440 - Get rid of contextFlags in nsIWindowCreator2, r=smaug 2016-12-07 16:20:08 -10:00
Michael Layzell f9eea2d135 Bug 1303196 - Part 2: Connect the DocGroup and TabGroup objects to nsGlobalWindow and nsDocument, ensuring that Opener is set early enough that it is correct, r=smaug
MozReview-Commit-ID: 3rZfLw3dXkF
2016-10-27 15:53:35 -04:00
Nicholas Nethercote 67af4817e9 Bug 1293596 (part 2) - Rework nsIWidget bounds getters. r=mstange.
This patch makes GetBounds(), GetScreenBounds() and GetClientBounds() more
obviously infallible, like existing functions such as GetNaturalBounds() and
GetClientSize(). This results in clearer behaviour in nsCocoaWindow.mm if
Objective C exceptions occur. Along the way, the patch removes some useless
failure checks for these functions.

The patch also removes the NS_IMETHOD from GetRestoredBounds and makes that
function MOZ_MUST_USE.
2016-08-19 09:03:04 +10:00
Igor 175543fda8 Bug 1293384 - Part 2: Rename Snprintf.h header to Sprintf.h. r=froydnj 2016-08-14 23:43:21 -07:00
Igor a57972337d Bug 1293384 - Part 1: Rename snprintf_literal to SprintfLiteral. r=froydnj 2016-08-14 23:44:00 -07:00
Igor 4efade90d4 Bug 1197331 - remove PR_snprintf calls in miscellaneous directories. r=nfroyd
--HG--
extra : rebase_source : a19f77db06e68bd3d69faf56b8bbdc1825f13249
2016-08-04 16:41:00 +02:00
Mike Conley 276c6f9b96 Bug 1261842 - Add methods to nsIDocShellTreeOwner for sizing the primary content. r=smaug
MozReview-Commit-ID: CqiRTVd444n

--HG--
extra : rebase_source : 629e52028e556298145597d6efff02b7973727c4
extra : source : 711951be3db684d594704ddf4df44fffcc514794
2016-07-14 16:31:41 -04:00
Mike Conley 710391213a Bug 1261842 - Make initial browser remote sooner if we're defaulting to using remote tabs. r=Felipe
MozReview-Commit-ID: 9KVzuOkJFpW

--HG--
extra : rebase_source : 6eb1a975378873af1b68f5efdb708b499457aea7
extra : source : a94e6a85c93170ef6b40065bb1834167547acd03
2016-06-08 17:03:42 -04:00
Mike Conley 6ed8718e96 Bug 1275261 - Only fire xul-window-destroyed for nsXULWindows that successfully registered. r=smaug
MozReview-Commit-ID: DPgPYfz3gSo

--HG--
extra : rebase_source : fb5546a3c074ade9de43ba51a7ba86965ba8926b
2016-06-02 10:28:28 -07:00
Mats Palmgren 4e63c1e0cf Bug 881832 - Make inner document reflow asynchronous. r=tnikkel 2016-05-12 12:07:45 +12:00
Phil Ringnalda 6bb0bc4494 Back out 6 changesets (bug 881832) for failures in test_Debugger.Source.prototype.element.html
CLOSED TREE

Backed out changeset fac50ce10b07 (bug 881832)
Backed out changeset 32e01c144cd4 (bug 881832)
Backed out changeset 779f5336b81e (bug 881832)
Backed out changeset 95efd250e29f (bug 881832)
Backed out changeset 7fe79f07189f (bug 881832)
Backed out changeset 8ee1824f2a57 (bug 881832)
2016-05-23 18:34:49 -07:00
Mats Palmgren fdb3066641 Bug 881832 - Make inner document reflow asynchronous. r=tnikkel 2016-05-12 12:07:45 +12:00
Phil Ringnalda c6417cc01e Back out 5 changesets (bug 881832) for failures in browser_html_tooltip-02.js
Backed out changeset 117e8e24d714 (bug 881832)
Backed out changeset 8a0d5df41cfb (bug 881832)
Backed out changeset 6b3c5e185b04 (bug 881832)
Backed out changeset 11106afdcbe7 (bug 881832)
Backed out changeset d711b7c19a43 (bug 881832)
2016-05-11 21:08:08 -07:00
Mats Palmgren e04a74ec14 Bug 881832 - Make inner document reflow asynchronous. r=tnikkel
--HG--
extra : rebase_source : 9987e19e3318d5bc58ac8214496893041bc1775c
2016-05-12 12:07:45 +12:00
Gabor Krizsanits 2585c3f697 Bug 1255138 - Window resize support from JS for e10s. r=mconley 2016-05-11 11:44:57 +02:00
Jonathan Kew dfa53d5003 Bug 1259492 - Ensure window position is constrained to the screen after it has been sized properly in nsXULWindow::OnChromeLoaded. r=emk 2016-03-24 17:08:19 +00:00
Ehsan Akhgari 3482a3267c Bug 1229220 - Update the scrollbar visibility prefs when initializing a TabChild; r=smaug
This will make sure that window.scrollbars correctly reflects the respective
chrome flags in e10s mode.

We also update nsXULWindow::SetContentScrollbarVisibility() to the new
nsContentUtils helper.  That code is responsible for doing this work in the
single process case.
2016-03-18 11:13:20 -04:00
Jonathan Kew 5d8fc249d5 Bug 1255645 - Ensure nsXULWindow constrains the window to the bounds of its screen after applying intrinsic sizing (if appropriate), by re-doing positioning after the window has been sized properly. r=emk 2016-03-15 14:29:44 +00:00
Carsten "Tomcat" Book 37b1553b75 Backed out changeset 21e9dd187ca8 (bug 1255645) 2016-03-16 10:33:38 +01:00
Jonathan Kew 40e671dab2 Bug 1255645 - Ensure nsXULWindow constrains the window to the bounds of its screen after applying intrinsic sizing (if appropriate), by re-doing positioning after the window has been sized properly. r=emk 2016-03-15 14:29:44 +00:00
Sebastian Hengst 9526b58457 Backed out changeset 66fdeb1acce5 (bug 1229220) for M-e10s failure in test_fullscreen-api.html. r=backout on a CLOSED TREE 2016-03-14 23:03:37 +01:00
Ehsan Akhgari ce1ef38b75 Bug 1229220 - Update the scrollbar visibility prefs when initializing a TabChild; r=smaug
This will make sure that window.scrollbars correctly reflects the respective
chrome flags in e10s mode.

We also update nsXULWindow::SetContentScrollbarVisibility() to the new
nsContentUtils helper.  That code is responsible for doing this work in the
single process case.
2016-03-14 16:03:21 -04:00
Jonathan Kew 3ed6ed7760 Bug 1242449 - Fix confusion among CSS, desktop and device pixel units in nsXULWindow position/size and window staggering so as to work consistently across mixed resolution displays. r=emk 2016-03-01 21:05:10 +00:00
Andrea Marchesini 8c313db5c7 Bug 1252839 - Remove some if stmt after allocation with 'new' - patch 2, r=bz 2016-03-02 18:51:33 +01:00
Jonathan Kew c31d3ec45b Bug 1247335 - patch 2 - Use desktop pixel coordinates when loading a nsXULWindow position. r=emk 2016-02-18 10:47:14 +00:00
Jonathan Kew cb99502b79 Bug 1247335 - patch 1 - Provide a desktop-pixel variant of SetPosition on nsIBaseWindow and its implementations. r=emk 2016-02-18 10:46:16 +00:00
Kyle Huey 91efc5a86c Bug 1241764: Replace nsPIDOMWindow with nsPIDOMWindowInner/Outer. r=mrbkap,smaug 2016-01-30 09:05:36 -08:00
David Rajchenbach-Teller 583ca7286d Bug 1224374 - Profiler labels for the top 26-100 chrome hangs;r=BenWa
--HG--
extra : rebase_source : 39e94507c0288863e495322a6899ff009840870d
2016-01-15 11:38:03 +01:00
Sebastian Hengst d8d4a2d1a5 Backed out 2 changesets (bug 1224374) for Windows bustage. r=bustage on a CLOSED TREE
Backed out changeset 5f458e6e4997 (bug 1224374)
Backed out changeset 0dc02cb0b604 (bug 1224374)
2016-01-19 21:30:41 +01:00
David Rajchenbach-Teller 2d53758d08 Bug 1224374 - Profiler labels for the top 26-100 chrome hangs;r=BenWa
--HG--
extra : rebase_source : 51d39d6f88bf58ccb29f5897c3dbbe71007ee842
2016-01-15 11:38:03 +01:00
Jonathan Kew 46b5136c09 Bug 890156 - patch 6 - Update window placement code to work with desktop pixels, for per-monitor DPI support on Windows. r=emk 2015-12-03 13:19:50 +00:00
Jonathan Kew 45d2ab27ce Bug 890156 - patch 2 - Expose DevicePixelsPerDesktopPixel through nsIBaseWindow and its implementations. r=emk 2015-11-25 19:12:07 +00:00
Nicholas Nethercote e2fe66176b Bug 1224403 (part 4) - Make {Get,Set}NonClientMargins() return/take a LayoutDeviceIntMargin. r=kats.
This required adding {To,From}UnknownMargin().

--HG--
extra : rebase_source : de7e8f56604825bcc1babe5e05a8f8623a402cad
2015-11-11 23:05:04 -08:00
Nicholas Nethercote ad0dd8414a Bug 1223310 (part 2) - Use LayoutDeviceIntRect for bounds-related functions in nsIWidget. r=kats.
The patch renames the existing functions (GetBounds(), GetClientBounds(), etc)
by adding an |Untyped| suffix. It then adds typed equivalents, and uses those
typed equivalents in all the call sites where it's easy to do so. The trickier
remaining call sites are converted to use the Untyped-suffix version.

--HG--
extra : rebase_source : 6bfb15bfc4698e2eba7d4db55497299d3dffcd51
2015-11-09 21:37:32 -08:00
Kyle Huey c7d3c4e21a Bug 1216401: Eviscerate nsIDOMWindow, move still needed methods to nsPIDOMWindow. r=bz 2015-10-26 14:37:32 -07:00
Julian Seward ffb720e63d Bug 1216945 - Uninitialised value use in nsXULWindow::SizeShellTo. r=bzbarsky.
--HG--
extra : rebase_source : 5a38e4e3674f54c81dac8a859b78f63d3b625c30
2015-10-26 18:27:42 +01:00
Xidorn Quan 19f7f9e9e4 Bug 1137009 - Do not persist xul window attributes when in fullscreen. r=enndeakin
--HG--
extra : rebase_source : 38400b63c4f9d6be3f2ff9ba963546f72f77a65f
extra : source : 78f7f5498016232d889579add8f9ec7d0f4a86e6
2015-10-22 11:08:35 +11:00
Nathan Froyd 01583602a9 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi

--HG--
rename : mfbt/nsRefPtr.h => mfbt/RefPtr.h
2015-10-18 01:24:48 -04:00
Wes Kocher a195766b70 Backed out 2 changesets (bug 1137009)
Backed out changeset 2c77e4edc2a5 (bug 1137009)
Backed out changeset 7a5322e5fa07 (bug 1137009)
2015-10-13 18:33:51 -07:00
Wes Kocher c335f06a80 Backed out changeset e28dde22ac26 (bug 1211344) 2015-10-13 18:33:27 -07:00
Xidorn Quan ab5826685c Bug 1211344 - Stop setting various window attributes when they are not in 'persist' attribute. r=enndeakin
--HG--
extra : source : 775831c88c8fdd6f3ff4f65447b0f825347109f5
2015-10-09 11:35:09 +11:00
Olli Pettay 73e3069a93 Bug 1209621 - Add a way to get the TabParent for the content-primary tab, r=mconley
--HG--
extra : rebase_source : 2755b86bf3b247cbb2931eda3cc9433d2878125e
2015-10-01 20:06:51 +03:00