Commit graph

94 commits

Author SHA1 Message Date
Adam Roben
a6ecd039e2 Fix typos 2013-11-17 18:16:41 -05:00
Adam Roben
991133b8e9 Fix cpplint errors in browser_context.h 2013-11-17 18:15:10 -05:00
Adam Roben
74661c342f Fix cpplint errors in browser_client.h 2013-11-17 18:13:10 -05:00
Adam Roben
80dab9d862 Fix cpplint errors in web_ui_controller_factory.cc 2013-11-17 18:12:05 -05:00
Adam Roben
57ae05b636 Fix cpplint errors in url_request_context_getter.cc 2013-11-17 18:11:47 -05:00
Adam Roben
843b21a3e8 Fix cpplint errors in network_delegate.cc 2013-11-17 18:09:21 -05:00
Adam Roben
784e270a4f Fix cpplint errors in inspectable_web_contents_impl.cc 2013-11-17 18:08:34 -05:00
Adam Roben
c97a22ef8d Fix cpplint errors in inspectable_web_contents.cc 2013-11-17 17:54:14 -05:00
Adam Roben
ef5992b0eb Fix cpplint errors in devtools_ui.cc 2013-11-17 17:53:38 -05:00
Adam Roben
dfb8a809ee Fix cpplint errors in default_web_contents_delegate.cc 2013-11-17 17:52:24 -05:00
Adam Roben
a35a57c3c4 Fix cpplint errors in browser_main_parts.cc 2013-11-17 17:51:19 -05:00
Adam Roben
cc4aeb995b Fix cpplint errors in browser_context.cc 2013-11-17 17:42:56 -05:00
Adam Roben
101a7bfa21 Fix cpplint errors in browser_client.cc 2013-11-17 17:39:01 -05:00
Patrick Reynolds
a18842de1a give member variables trailing _
- also, reorder member variables to come after methods
2013-11-15 22:22:25 -06:00
Patrick Reynolds
282639a79a implement dev tools 2013-11-15 14:23:52 -06:00
Patrick Reynolds
6053911bd2 Merge branch 'master' into linux 2013-11-08 20:53:43 -06:00
Patrick Reynolds
c6ce51863a implement GetNativeView 2013-11-07 23:42:15 -06:00
Patrick Reynolds
90e619a6d9 fix typo 2013-11-07 17:25:51 -06:00
Patrick Reynolds
04b9bd21f8 WIP: builds (but displys nothing) on Linux 2013-11-07 14:02:35 -06:00
Adam Roben
ae1e26bddd Fix a hang on quit when application cache is used
If you navigated to a page that used the HTML Application Cache, you'd see a
hang on quit with a backtrace like so:

+     2825 content::ContentMain(int, char const**, content::ContentMainDelegate*)  (in libchromiumcontent.dylib) + 64  [0xb33190]
+       2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0x96b261  [0xb34261]
+         2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0x96a409  [0xb33409]
+           2825 content::BrowserMain(content::MainFunctionParams const&)  (in libchromiumcontent.dylib) + 200  [0x14290b8]
+             2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0x1265426  [0x142e426]
+               2825 content::BrowserMainLoop::~BrowserMainLoop()  (in libchromiumcontent.dylib) + 17  [0x14294a1]
+                 2825 content::BrowserMainLoop::~BrowserMainLoop()  (in libchromiumcontent.dylib) + 357  [0x1429625]
+                     2825 brightray::BrowserMainParts::~BrowserMainParts()  (in ) + 70  [0x68df6]
+                       2825 scoped_ptr<brightray::BrowserContext, base::DefaultDeleter<brightray::BrowserContext> >::~scoped_ptr()  (in ) + 23  [0x68ff7]
+                         2825 scoped_ptr<brightray::BrowserContext, base::DefaultDeleter<brightray::BrowserContext> >::~scoped_ptr()  (in ) + 23  [0x69297]
+                           2825 base::internal::scoped_ptr_impl<brightray::BrowserContext, base::DefaultDeleter<brightray::BrowserContext> >::~scoped_ptr_impl()  (in ) + 23  [0x692b7]
+                             2825 base::internal::scoped_ptr_impl<brightray::BrowserContext, base::DefaultDeleter<brightray::BrowserContext> >::~scoped_ptr_impl()  (in ) + 50  [0x692f2]
+                               2825 base::DefaultDeleter<brightray::BrowserContext>::operator()(brightray::BrowserContext*) const  (in ) + 46  [0x6916e]
+                                   2825 brightray::BrowserContext::~BrowserContext()  (in ) + 127  [0x672bf]
+                                     2825 base::SupportsUserData::~SupportsUserData()  (in libchromiumcontent.dylib) + 57  [0xccc019]
+                                       2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0xb03230  [0xccc230]
+                                         2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0xb0324e  [0xccc24e]
+                                           2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0x14c4239  [0x168d239]
+                                             2825 content::StoragePartitionImpl::~StoragePartitionImpl()  (in libchromiumcontent.dylib) + 17  [0x16899a1]
+                                               2825 content::StoragePartitionImpl::~StoragePartitionImpl()  (in libchromiumcontent.dylib) + 491  [0x1689bab]
+                                                 2825 content::ChromeAppCacheService::DeleteOnCorrectThread() const  (in libchromiumcontent.dylib) + 66  [0x1424f32]
+                                                   2825 content::ChromeAppCacheService::~ChromeAppCacheService()  (in libchromiumcontent.dylib) + 50  [0x1424e32]
+                                                     2825 appcache::AppCacheService::~AppCacheService()  (in libchromiumcontent.dylib) + 301  [0x2b8ad2d]
+                                                       2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0x29c9b81  [0x2b92b81]
+                                                         2825 ???  (in libchromiumcontent.dylib)  load address 0x1c9000 + 0x29c9da4  [0x2b92da4]
+                                                           2825 appcache::AppCacheDiskCache::~AppCacheDiskCache()  (in libchromiumcontent.dylib) + 17  [0x2b78c71]
+                                                             2825 appcache::AppCacheDiskCache::~AppCacheDiskCache()  (in libchromiumcontent.dylib) + 135  [0x2b78d17]
+                                                               2825 disk_cache::BackendImpl::~BackendImpl()  (in libchromiumcontent.dylib) + 17  [0x25979a1]
+                                                                 2825 disk_cache::BackendImpl::~BackendImpl()  (in libchromiumcontent.dylib) + 305  [0x2597af1]
+                                                                   2825 base::WaitableEvent::Wait()  (in libchromiumcontent.dylib) + 50  [0xccd942]
+                                                                     2825 base::WaitableEvent::TimedWait(base::TimeDelta const&)  (in libchromiumcontent.dylib) + 347  [0xccdb3b]
+                                                                       2825 base::ConditionVariable::Wait()  (in libchromiumcontent.dylib) + 35  [0xcccbb3]
+                                                                         2825 pthread_cond_wait$UNIX2003  (in libsystem_c.dylib) + 71  [0x964d3089]
+                                                                           2825 _pthread_cond_wait  (in libsystem_c.dylib) + 833  [0x9644d280]
+                                                                             2825 __psynch_cvwait  (in libsystem_kernel.dylib) + 10  [0x94b8e8e2]

BackendImpl was waiting on BrowserThread::CACHE, but that thread had already
been stopped. The solution is to destroy the BrowserContext before threads have
been stopped. We now do this in BrowserMainParts::PostMainMessageLoopRun, which
matches content_shell.
2013-10-23 12:16:25 -04:00
Cheng Zhao
f623ddf7fc Cleanup unused headers, data members and functions. 2013-10-11 07:17:53 -04:00
Cheng Zhao
2cd6dd791e Setup devtools in the correct phase.
* RegisterDevToolsClientHostFor should be called right after the agent_host and
  the frontend host are created.
* SetupDevToolsFrontendClient should be called before the devtools window is
  going to start navigation.
2013-10-11 07:17:03 -04:00
Cheng Zhao
9d29c8eb7c Use the "chrome-devtools://" scheme to open devtools. 2013-10-10 16:56:52 -04:00
Adam Roben
6b9e61c65d Fix flashing in WebContents we create
If the embedding app creates them it's up to them to fix this.
2013-10-10 16:24:22 -04:00
Adam Roben
8ae459e9fa Work around http://crbug.com/279472 for devtools views 2013-10-10 14:17:30 -04:00
Adam Roben
1f1f93465b Make MediaStreamDevicesController::Accept/Deny public again
Clients rely on this.
2013-10-07 17:04:40 -04:00
Adam Roben
9165424348 Update ResourceContext for Chrome 30
See http://src.chromium.org/viewvc/chrome?view=revision&revision=215991.
2013-10-07 16:31:58 -04:00
Adam Roben
4d6ee2c416 URLRequestContextStorage::set_http_server_properties takes a scoped_ptr in Chrome 30
See http://src.chromium.org/viewvc/chrome?view=revision&revision=212466.
2013-10-07 16:31:58 -04:00
Adam Roben
d1623535e8 Update browser/media/* for Chrome 30
I took the latest versions of these files from chrome/browser/media,
then pared them down to remove all Chrome-isms and uses of UI to prompt
the user about allowing access to devices.
2013-10-07 16:31:58 -04:00
Adam Roben
aa4f991659 Add DevToolsFrontendHostDelegate indexing methods from Chrome 30
See http://src.chromium.org/viewvc/chrome?view=revision&revision=215622.
2013-10-07 16:31:57 -04:00
Adam Roben
4d59060657 BrowserContext::RequestMIDISysExPermission was added in Chrome 30
See http://src.chromium.org/viewvc/chrome?view=revision&revision=211437.
2013-10-07 16:31:57 -04:00
Adam Roben
c1c4344879 BrowserContext::GetSpeechRecognitionPreferences is gone in Chrome 30
See http://src.chromium.org/viewvc/chrome?view=revision&revision=210616.
2013-10-07 16:31:57 -04:00
Adam Roben
eb446fc707 content::BrowserContext::GetPath is a const member function in Chrome 30
See http://src.chromium.org/viewvc/chrome?view=revision&revision=211931.
2013-10-07 16:31:57 -04:00
Adam Roben
64a5ce6e15 Update for move of scoped_nsobject header and namespace
See http://src.chromium.org/viewvc/chrome?view=revision&revision=207616.
2013-10-07 16:31:57 -04:00
Adam Roben
1e99ec9aed Update #includes for moves of string-related headers
See http://src.chromium.org/viewvc/chrome?view=revision&revision=205050.
2013-10-07 16:31:57 -04:00
Adam Roben
7d3f371b51 Update for move of MessageLoop into base namespace 2013-08-23 16:56:41 -04:00
Adam Roben
4946ec9081 Update for utf_string_conversions.h move in Chrome 29 2013-08-23 16:56:30 -04:00
Adam Roben
710d0fc6c5 Make overriding BrowserContext::RegisterPrefs actually work
We were calling it before derived classes' vtables were set up. Now we wait to
call it until the BrowserContext is fully constructed.
2013-08-15 16:07:14 -04:00
Adam Roben
9638e3956f Don't use base::DIR_APP_DATA on Linux
It doesn't exist. Instead, match content_shell by putting
application-specific data in $XDG_CONFIG_HOME or ~/.config.
2013-08-14 08:14:54 -04:00
Adam Roben
c2623d2bdc Fix typos 2013-07-31 11:52:21 -07:00
Adam Roben
2595335045 Enable navigator.webkitGetUserMedia()
The code came from chrome/browser/media, but was simplified to remove
dependencies on other parts of chrome/ and to always allow the media stream
request.
2013-07-31 11:08:45 -07:00
Adam Roben
56b904947b Avoid a crash when starting a download by disallowing downloads
Chromium crashes when starting a download if a content::DownloadManagerDelegate
is not provided. We now provide a default implementation of
content::DownloadManagerDelegate which disallows all downloads.
2013-07-24 07:56:55 -04:00
Adam Roben
33b574b434 Allow clients to supply their own NetworkDelegate implementation 2013-07-17 10:21:33 -04:00
Adam Roben
496b246405 Give BrowserContext subclasses access to GetPath() 2013-06-06 18:50:37 -04:00
Adam Roben
9ad77c4a38 Implement undocked dev tools on Windows
DevToolsWindow represents a vanilla top-level window that shows the dev tools.
It uses ui::WindowImpl to implement window functionality, which requires a
newer libchromiumcontent which contains the necessary headers for using that
class, and requires some modifications to brightray.gypi to make WTL's  headers
available.

* vendor/libchromiumcontent 2f53a96...fc02d93 (4):
  > Export third_party/wtl/include headers
  > Export test_support_base.pdb and test_support_content.pdb
  > Fix linker errors with test_support_base on Windows
  > Fix linker errors with base_prefs_test_support on Windows
2013-06-04 14:33:29 -04:00
Adam Roben
4c9870e753 Fix debug assertion about performing IO on the UI thread
We were querying the application's FILEVERSIONINFO every time we needed to
figure out the path for storing BrowserContext data. Now we cache the path the
first time we need it, which is during application initialization and before IO
prohibitions begin.
2013-06-04 14:17:16 -04:00
Cheng Zhao
27d55031f4 Set file and data protocol handler. 2013-06-02 00:25:04 +08:00
Adam Roben
3d12cb2c64 Don't crash when HTML notifications are used on Windows
Eventually we'll implement real support for this, but for now not crashing is
more important.
2013-05-31 08:05:14 -04:00
Adam Roben
2582e8561c Update to Chromium r202921
* vendor/libchromiumcontent 0d02a8d...2f53a96 (1):
  > Merge pull request #14 from brightray/latest-chromium
2013-05-30 15:07:32 -04:00
Adam Roben
cf14f09228 Stub out InspectableWebContentsViewWin
This class doesn't implement any devtools behavior yet. Right now it's just a
glorified wrapper around a content::WebContents. But it's enough to show web
content on screen on Windows!
2013-05-22 16:57:32 -04:00