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

1171 Коммитов

Автор SHA1 Сообщение Дата
Ehsan Akhgari 9a46d83e97 Bug 819202 - Part 1: Implement the "non-private" window.open feature; r=bzbarsky
This patch adds support for a "non-private" window flag which can be
used to open new chrome windows in non-private mode in per-window
private browsing builds.  It also tests to make sure that the flag is
not accessible from content.
2012-12-10 00:06:06 -05:00
Josh Matthews 65ba845ae9 Bug 814275 - When the global service matters, force all new windows to conform to the global private browsing state. r=bz 2012-11-22 10:48:13 -05:00
Justin Lebar a9e6d9a0c8 Bug 802366 - The main event: Let a browser process inherit its app's id. r=bz,cjones
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".

There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id.  This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.

I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process.  I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.
2012-11-10 10:32:37 -08:00
Ryan VanderMeulen 3eff16d324 Backed out 12 changesets (bug 806127, bug 802366, bug 806168) for Windows build bustage.
--HG--
rename : dom/indexedDB/test/webapp_clearBrowserData.js => dom/indexedDB/test/test_webapp_clearBrowserData.html
2012-11-09 20:14:40 -05:00
Justin Lebar 785d3c9b2f Bug 802366 - The main event: Let a browser process inherit its app's id. r=bz,cjones
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".

There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id.  This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.

I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process.  I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.
2012-11-09 16:37:39 -08:00
Ehsan Akhgari f4956f5734 Bug 800193 - Print a warning when setting nsILoadContext.usePrivateBrowsing in per-window private browsing builds; r=bzbarsky 2012-10-31 00:15:24 -04:00
Justin Lebar 22489f7920 Backed out changeset a6a847452dbf (bug 802366) 2012-10-30 21:36:29 -04:00
Justin Lebar 7b38d49f83 Bug 802366 - The main event: Let a browser process inherit its app's id. r=bz,cjones DONTBUILD
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".

There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id. This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.

I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process. I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.

(Re-landing changeset a6a847452dbf, backed out in 5091aa6083c4, because it was originally landed with the incorrect bug number.)
2012-10-30 16:13:21 -04:00
Justin Lebar 818638f210 Backed out changeset a6a847452dbf due to incorrect bug number (should be bug 802366, but was bug 802367). DONTBUILD 2012-10-30 16:13:20 -04:00
Justin Lebar af7297481d Bug 802367 - The main event: Let a browser process inherit its app's id. r=bz,cjones
The main bug fixed here is that in half of our interfaces, we use "is browser frame/element" to mean "browser or app", and in the other half, we use it to mean "is browser not app".

There's a related, functional bug also fixed here, which is that a browser process doesn't inherit its parent's app-id.  This causes problems e.g. for IndexedDB: If a browser inside an app uses IndexedDB, the DB should have the app's app-id.

I also modified Tab{Parent,Child} and nsFrameLoader to call "app" "ownOrContainingApp", to emphasize that we might have inherited the app from a parent process.  I left nsIDocShell::appId alone, because changing that would have necessitated changing nsILoadGroup and therefore a /lot/ of users in Necko; it's also not clear it would have clarified anything in those cases.

--HG--
extra : rebase_source : f3ef9475e21204da10bf39c6cca506bc08096949
2012-10-30 15:55:05 -04:00
Andrew Quartey 5d03f6af91 Bug 792581 - part 22: Replace LL_ZERO and LL_Zero() macros with 0. r=ehsan 2012-10-25 19:25:59 -04:00
Nick Hurley 3b308213ec Bug 536324 part 3 - Change consumers of nsIChannel. r=sworkman 2012-10-22 10:51:07 -07:00
Bobby Holley 66fe81e49a Bug 789224 - Remove miscellaneous UniversalXPConnect checks sprinkled throughout gecko. r=mrbkap 2012-10-22 08:29:55 +02:00
Jesse Ruderman ad70dfb070 Remove stray newline from assertion message. (No bug, DONTBUILD) 2012-10-19 07:13:14 -07:00
Jesse Ruderman 706dbfd44c Remove trailing whitespace. (No bug, DONTBUILD) 2012-10-19 07:13:14 -07:00
Peter Van der Beken f52e02e082 Fix for bug 799464 (Make Element.getElementsBy* return HTMLCollection). r=bz.
--HG--
extra : rebase_source : fe059b8ad3b98df9e611899832584cc866db0479
2012-09-26 16:17:47 +02:00
Neil Deakin adc5037779 Bug 621944, find and replace doesn't wrap in mail compose, use the correct focused frame, r=neil 2012-10-18 09:18:30 -04:00
Ehsan Akhgari 94987da6ad Bug 722983 - Fix the back-end handling of permanent private browsing mode through the per-window private browsing APIs; r=jdm
--HG--
extra : rebase_source : 31358b29c5b3c5f6921598ea3246aede62ca78db
2012-10-16 18:06:38 -04:00
Jonathan Kew b6844877ae bug 794038 pt 1.1 - update nsWindowWatcher::SizeOpenedDocShellItem to use global display pixels for window manipulation. r=roc 2012-10-16 20:41:19 +01:00
Trevor Saunders 000b6e89a1 bug 798595 - remove useless prmem.h includes r=ehsan 2012-10-04 02:14:06 -04:00
Ehsan Akhgari 4e49b86a4a Merge mozilla-central into mozilla-inbound 2012-10-10 20:21:13 -04:00
Olli Pettay 76ea6cb8e7 Bug 733305, add a way to hide XBL, r=bz, a=abillings
--HG--
extra : rebase_source : df18273ecdbf013138e8e6f1f4ef8082ac4f410c
2012-10-10 22:04:42 +03:00
Ehsan Akhgari 5c3d6544e2 Bug 798508 - Part 1: Implement the "private" window.open feature; r=bzbarsky
This patch adds support for a "private" window flag which can be used to
open new chrome windows in private browsing mode.  It also tests to make
sure that the flag is not accessible from content.  A test in the next
part makes sure that the flag is accessible from chrome.
2012-10-07 15:04:39 -04:00
Josh Matthews a932f16330 Bug 795556 - Part 2: Move privacy status propagation for new windows into the platform. r=bz 2012-10-10 11:28:42 -04:00
Boris Zbarsky 35a0e7fdc1 Bug 749964. Don't try to save if what we have is not a real document object. r=khuey 2012-10-05 22:39:46 -04:00
Josh Matthews a9c2289382 Bug 794602 - Make nsWebBrowserPersist::SaveURIInternal use channels with valid privacy statuses. r=bz,mfinkle,smaug,ehsan,jwalker,roc,unfocused 2012-10-04 15:07:51 -04:00
Ryan VanderMeulen 44a8d6faa6 Backout e5269e137290, (bug 794606), e94dbc151121 (bug 794602), and 0ea0cfc7f6f4 (bug 792821) due to mochitest-other orange on a CLOSED TREE. 2012-10-04 19:34:19 -04:00
Josh Matthews 13630d0f8f Bug 794602 - Make nsWebBrowserPersist::SaveURIInternal use channels with valid privacy statuses. r=bz,mfinkle,smaug,ehsan,jwalker,roc,unfocused 2012-10-04 15:07:51 -04:00
Jacek Caban 70b1fe1aae Bug 797316 - Fix -Werror=conversion-null errors in Windows-only code (embedding/components/printingui part) r=ehsan
--HG--
extra : rebase_source : c68328d354d498c5d51ce85d79964eeaa88b18bd
2012-10-04 10:30:25 +02:00
Isaac Aggrey 481e7dfb0b Bug 791906: Replace NSPR integer limit constants with stdint ones; r=ehsan 2012-09-28 01:57:33 -05:00
Ehsan Akhgari 8cc30b88b2 Bug 792502 - Kill the FunctionTimer code; r=vlad 2012-09-19 16:59:38 -04:00
Andrew Quartey 1eac480bd4 Bug 788741 - Truncate file extension if too long r=bz 2012-09-18 16:45:51 -04:00
Aryeh Gregor 291bfa222b Bug 783523 - Fix platform-specific nsresult misuse; r=ehsan,tbsaunde,smaug 2012-08-16 14:58:11 +03:00
Makoto Kato 1356f06137 Bug 784912 - nsIStreamListener.onDataAvailable should handle 64-bit offset. r=honza 2012-09-06 11:41:02 +09:00
Bobby Holley f6e4f704dd Bug 774633 - Remove "is chrome window" condition for inner window reuse. r=jst
WouldReuseInnerWindow also returns true if the new window is same-origin with
the old one about:blank document.

This condition exists in order to handle some sloppiness with respect to the
principals on initial about:blank documents. Chrome callers sometimes parent
chrome windows (with XUL document) to content windows. But this parenting causes
us to push the cx of the content window during window creation, meaning that
the subsequent load of chrome://foo.xul blows away the old inner window and any
expandos on it. We can handle this case more precisely by skipping the cx push
for type="chrome" windows.

Furthermore, this was also necessary to prevent the inner window from being
blown away in the call to SetOpenerScriptPrincipal once nsWindowWatcher gets
the window back from the window creator (and after it's already told consumers
about the window via "domwindowcreated"). But we fixed this nastiness in the
previous patches.

So we can remove this case. By doing so, we can prevent inner windows from ever
changing origins, which is very important for compartment security invariants.
2012-09-05 11:32:06 -07:00
Bobby Holley bf0b5bba7c Bug 774633 - Move the call to SetInitialPrincipalToSubject into nsAppShellService::RegisterTopLevelWindow. r=jst
This means that we get the correct principal on the window before sending notifying
any consumers about the window's creation.
2012-09-05 11:32:06 -07:00
Bobby Holley e864c2fca6 Bug 774633 - Wean SetInitialPrincipalToSubject off some parameters and clean it up. r=jst
We can remove the fallback to the principal of aParent because we already push the
cx for aParent (callerContextGuard) whenever we're concerned about using its principal.
2012-09-05 11:32:06 -07:00
Bobby Holley 9a637e122b Bug 774633 - Factor nsWindowWatcher call to SetOpenerScriptPrincipal into a method on nsGlobalWindow. r=jst
This doesn't change any functionality in the code. Note that the name is currently
a bit of a misnomer, but we change that in the next patch when we rip out the
arguments.
2012-09-05 11:32:06 -07:00
Aryeh Gregor 5d6d9b8dea Bug 782594 - Don't try returning nsresult in place of uint32_t; r=bz 2012-08-14 12:10:42 +03:00
Randell Jesup 65539ef89c Bug 773151: Convert nsCAutoString->nsAutoCString CLOSED TREE r=bsmedberg 2012-09-01 22:35:17 -04:00
Matt Brubeck cdd4612f38 Back out 670c8a2695b3 (bug 771354), 134557d57e6e 4ad52e488977 (bug 774607), and...
036eb8c2a08a d4d36e3b948f 35334e820632 6bd07fd5147d d49e7c0d762c 407f19deb14c d84551808abb (bug 774633)
on a CLOSED TREE
2012-08-23 21:34:27 -07:00
Bobby Holley 38274fd965 Bug 774633 - Remove "is chrome window" condition for inner window reuse. r=jst
WouldReuseInnerWindow also returns true if the new window is same-origin with
the old one about:blank document.

This condition exists in order to handle some sloppiness with respect to the
principals on initial about:blank documents. Chrome callers sometimes parent
chrome windows (with XUL document) to content windows. But this parenting causes
us to push the cx of the content window during window creation, meaning that
the subsequent load of chrome://foo.xul blows away the old inner window and any
expandos on it. We can handle this case more precisely by skipping the cx push
for type="chrome" windows.

Furthermore, this was also necessary to prevent the inner window from being
blown away in the call to SetOpenerScriptPrincipal once nsWindowWatcher gets
the window back from the window creator (and after it's already told consumers
about the window via "domwindowcreated"). But we fixed this nastiness in the
previous patches.

So we can remove this case. By doing so, we can prevent inner windows from ever
changing origins, which is very important for compartment security invariants.
2012-08-23 16:44:53 -07:00
Bobby Holley bf36b7f605 Bug 774633 - Move the call to SetInitialPrincipalToSubject into nsAppShellService::RegisterTopLevelWindow. r=jst
This means that we get the correct principal on the window before sending notifying
any consumers about the window's creation.
2012-08-23 16:44:52 -07:00
Bobby Holley 133acda80d Bug 774633 - Wean SetInitialPrincipalToSubject off some parameters and clean it up. r=jst
We can remove the fallback to the principal of aParent because we already push the
cx for aParent (callerContextGuard) whenever we're concerned about using its principal.
2012-08-23 16:44:52 -07:00
Bobby Holley 3bd2492b71 Bug 774633 - Factor nsWindowWatcher call to SetOpenerScriptPrincipal into a method on nsGlobalWindow. r=jst
This doesn't change any functionality in the code. Note that the name is currently
a bit of a misnomer, but we change that in the next patch when we rip out the
arguments.
2012-08-23 16:44:52 -07:00
Ehsan Akhgari e368dc9c85 Bug 579517 - Part 1: Automated conversion of NSPR numeric types to stdint types in Gecko; r=bsmedberg
This patch was generated by a script.  Here's the source of the script for
future reference:

function convert() {
echo "Converting $1 to $2..."
find . ! -wholename "*nsprpub*" \
       ! -wholename "*security/nss*" \
       ! -wholename "*/.hg*" \
       ! -wholename "obj-ff-dbg*" \
       ! -name nsXPCOMCID.h \
       ! -name prtypes.h \
         -type f \
      \( -iname "*.cpp" \
         -o -iname "*.h" \
         -o -iname "*.c" \
         -o -iname "*.cc" \
         -o -iname "*.idl" \
         -o -iname "*.ipdl" \
         -o -iname "*.ipdlh" \
         -o -iname "*.mm" \) | \
    xargs -n 1 sed -i -e "s/\b$1\b/$2/g"
}

convert PRInt8 int8_t
convert PRUint8 uint8_t
convert PRInt16 int16_t
convert PRUint16 uint16_t
convert PRInt32 int32_t
convert PRUint32 uint32_t
convert PRInt64 int64_t
convert PRUint64 uint64_t

convert PRIntn int
convert PRUintn unsigned

convert PRSize size_t

convert PROffset32 int32_t
convert PROffset64 int64_t

convert PRPtrdiff ptrdiff_t

convert PRFloat64 double
2012-08-22 11:56:38 -04:00
Ian Melven 4f3defdd1a Bug 341604 - Implement HTML5 sandbox attribute for IFRAMEs r=smaug r=jst 2012-08-20 11:34:32 -07:00
Justin Lebar ba3252b24e Bug 783644 - Part 2: If we're inside <iframe mozbrowser>, ignore the dialog=1 feature in window.open. r=smaug 2012-08-20 09:30:08 -07:00
Aryeh Gregor 719dcb2097 Bug 782252 - Change named constants to correct types; r=ehsan 2012-08-07 18:11:35 +03:00
Aryeh Gregor ff57e540e2 Bug 782252 - Convert declared types to nsresult; r=ehsan 2012-08-06 15:02:31 +03:00