electron/shell/browser/api
Birunthan Mohanathas 5223d1d774 fix: Fix compositor recycling when creating new BrowserView (#21372)
In #20829, we fixed compositor recycling when switching between
BrowserViews, but it turns out that there is one additional case that we
need to handle. When we create a completely new BrowserView instance, it
starts of as visible (even when it hasn't been added to the window),
which means that it will need its own compositor instead of using the
recycled compositor.

To fix this, lets make BrowserViews hidden by default until they're
added to the window. See also #19988. This is a potentially breaking
change given that the initial value of `document.visibilityState` will
now be `hidden`, but given the experimental status of BrowserViews, I
think this is a fine change to make. The old behavior can be restored
with `webPreferences: { show: true }`.

Notes: Fix compositor recycling when creating new BrowserView
2019-12-05 09:37:42 -08:00
..
views chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_app.cc fix: implement 'login' event for WebContents (#20954) 2019-11-11 09:47:01 -08:00
atom_api_app.h fix: implement 'login' event for WebContents (#20954) 2019-11-11 09:47:01 -08:00
atom_api_app_mac.mm chore: remove native_mate (Part 10) (#20696) 2019-10-24 14:47:58 +09:00
atom_api_app_mas.mm chore: remove native_mate (Part 10) (#20696) 2019-10-24 14:47:58 +09:00
atom_api_auto_updater.cc chore: remove native_mate (Part 9) (#20645) 2019-10-21 16:05:40 +09:00
atom_api_auto_updater.h chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_browser_view.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_browser_view.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_browser_window.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_browser_window.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_browser_window_mac.mm chore: bump chromium to 63be48daea281d4f8c834c2e707a7 (master) (#19923) 2019-09-18 15:58:00 -04:00
atom_api_browser_window_views.cc refactor: rename the atom namespace to electron 2019-06-19 17:33:28 -07:00
atom_api_content_tracing.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_cookies.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_cookies.h refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_data_pipe_holder.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_data_pipe_holder.h chore: bump chromium to 63be48daea281d4f8c834c2e707a7 (master) (#19923) 2019-09-18 15:58:00 -04:00
atom_api_debugger.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_debugger.h refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_desktop_capturer.cc chore: bump chromium to f5b345dd470f14eef6e44732ccf23 (master) (#20649) 2019-10-28 15:12:35 -07:00
atom_api_desktop_capturer.h chore: bump chromium to f5b345dd470f14eef6e44732ccf23 (master) (#20649) 2019-10-28 15:12:35 -07:00
atom_api_dialog.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_download_item.cc chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_download_item.h chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_event.cc chore: remove native_mate (Part 12) (#20869) 2019-10-31 16:56:00 +09:00
atom_api_global_shortcut.cc fix: Fix broken globalShortcuts.registerAll() on non-macOS platforms (#20963) 2019-11-05 13:47:23 -08:00
atom_api_global_shortcut.h chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_in_app_purchase.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_in_app_purchase.h refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_menu.cc fix: menu should not be garbage-collected when popuping (#21169) 2019-11-20 20:17:39 +09:00
atom_api_menu.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_menu_mac.h fix: menu should not be garbage-collected when popuping (#21169) 2019-11-20 20:17:39 +09:00
atom_api_menu_mac.mm chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_menu_views.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_menu_views.h fix: menu should not be garbage-collected when popuping (#21169) 2019-11-20 20:17:39 +09:00
atom_api_native_theme.cc chore: remove native_mate (Part 6) (#20391) 2019-10-02 09:30:55 +09:00
atom_api_native_theme.h chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_native_theme_mac.mm fix: don't expose nativeTheme in the renderer process (#20139) 2019-09-16 14:23:13 -07:00
atom_api_net.cc refactor: rewrite the net module to simplify state tracking (#21244) 2019-11-26 17:01:13 -08:00
atom_api_net.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_net_log.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_net_log.h refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_notification.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_notification.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_power_monitor.cc chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_power_monitor.h chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_power_monitor_mac.mm refactor: rename the atom namespace to electron 2019-06-19 17:33:28 -07:00
atom_api_power_monitor_win.cc refactor: rename the atom namespace to electron 2019-06-19 17:33:28 -07:00
atom_api_power_save_blocker.cc refactor: run clang-tidy (#20231) 2019-09-16 18:12:00 -04:00
atom_api_power_save_blocker.h refactor: rename the atom namespace to electron 2019-06-19 17:33:28 -07:00
atom_api_protocol.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_protocol.h chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_screen.cc chore: remove native_mate (Part 9) (#20645) 2019-10-21 16:05:40 +09:00
atom_api_screen.h chore: remove native_mate (Part 11) (#20719) 2019-10-25 22:03:28 +09:00
atom_api_session.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_session.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_system_preferences.cc chore: remove native_mate (Part 12) (#20869) 2019-10-31 16:56:00 +09:00
atom_api_system_preferences.h refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
atom_api_system_preferences_mac.mm feat: add 'screen' to systemPreferences.getMediaAccessStatus() (#20764) 2019-11-13 16:47:51 -05:00
atom_api_system_preferences_win.cc fix: macOS getColor inconsistencies (#20611) 2019-10-21 14:31:03 -07:00
atom_api_top_level_window.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_top_level_window.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_tray.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_tray.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_url_loader.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_url_loader.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_view.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_view.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_web_contents.cc fix: Fix compositor recycling when creating new BrowserView (#21372) 2019-12-05 09:37:42 -08:00
atom_api_web_contents.h fix: deprecate setLayoutZoomLevelLimits (#21296) 2019-12-02 13:27:03 -08:00
atom_api_web_contents_impl.cc refactor: rename the atom namespace to electron 2019-06-19 17:33:28 -07:00
atom_api_web_contents_mac.mm refactor: rename the atom namespace to electron 2019-06-19 17:33:28 -07:00
atom_api_web_contents_view.cc chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_web_contents_view.h chore: remove native_mate (Part 14) (#21365) 2019-12-05 18:46:34 +09:00
atom_api_web_request.cc fix: webRequest should be able to modify CORS headers (#21099) 2019-11-14 14:51:24 +09:00
atom_api_web_request.h fix: webRequest should be able to modify CORS headers (#21099) 2019-11-14 14:51:24 +09:00
atom_api_web_view_manager.cc chore: remove native_mate (Part 12) (#20869) 2019-10-31 16:56:00 +09:00
event.cc chore: remove native_mate (Part 12) (#20869) 2019-10-31 16:56:00 +09:00
event.h chore: remove native_mate (Part 12) (#20869) 2019-10-31 16:56:00 +09:00
frame_subscriber.cc chore: bump chromium to f5b345dd470f14eef6e44732ccf23 (master) (#20649) 2019-10-28 15:12:35 -07:00
frame_subscriber.h chore: bump chromium to f5b345dd470f14eef6e44732ccf23 (master) (#20649) 2019-10-28 15:12:35 -07:00
gpu_info_enumerator.cc refactor: run clang-tidy (#20231) 2019-09-16 18:12:00 -04:00
gpu_info_enumerator.h refactor: rename the atom namespace to electron 2019-06-19 17:33:28 -07:00
gpuinfo_manager.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
gpuinfo_manager.h refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
process_metric.cc feat: add memory to app.getAppMetrics() (#18831) 2019-07-23 13:41:58 -07:00
process_metric.h feat: add memory to app.getAppMetrics() (#18831) 2019-07-23 13:41:58 -07:00
save_page_handler.cc refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00
save_page_handler.h refactor: migrates util::Promise to gin (#20871) 2019-11-01 15:10:32 +09:00