* chore: fix cpplint 'include_what_you_use' warnings
Typically by including <memory>, <utility> etc.
* chore: fix 'static/global string constant' warning
Use C style strings instead of std::string.
Style guide forbids non-trivial static / global variables. https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables
/home/charles/electron/electron-gn/src/electron/script/cpplint.js
* refactor: remove global string variables.
Fix 'global string variables are not permitted' linter warnings
by using the base::NoDestructor<> wrapper to make it explicit that
these variables are never destroyed.
The style guide's take on globals with nontrivial destructors:
https://google.github.io/styleguide/cppguide.html#Static_and_Global_Variables
* fix: initializer error introduced in last commit
* fix: remove WIP file that was included by accident
* fix: include order
* fix: include order
* fix: include order
* fix: include order, again
* add new native_mate converters for base::Value
* fix converter swapping
* remove createDeepCopy from browser/api
* replace missing ListValue converter
* convert bulk of remaining createDeepCopy instances
* convert last remaining instances of createDeepCopy
* incremental progress and helper methods for value conversion
* convert Get and add template function for GetString
* final DictionaryValue method conversions
* remove usage of base::DictionaryValue in web_contents_preferences
* use IsEnabled helper where possible
* Update atom_api_web_view_manager.cc
The new `will-resize` event can be used to prevent the resize from
happening before the native window is actually resized. This is in
contrast to the existing the `resize` event, which is sent *after* the
native window has already been resized. For apps with e.g. custom window
snapping logic, the `resize` event is not sufficient because it will
result in flickering between the dragged size and the snapped size.
`will-resize` is only emitted on macOS and Windows.
The views framework relies on NSWindow to return content size of window,
since we don't use the borderless window, the original result would
include titlebar. We have to override the function to return correct
result for frameless window.
- Respect filters option of dialog.showOpenDialog() and
dialog.showSaveDialog(). (#10335)
- Show "All Files" for <input> apart from "accept" attribute. (#11456)
* Don't use is_offscreen_dummy in MessageBox
* Don't use is_offscreen_dummy in DownloadManagerDelegate
* Don't use is_offscreen_dummy in CommonWebContentsDelegate
* Remove is_offscreen_dummy from NativeWindow
This makes an upstream DCHECK happy in AppIndicatorIcon::SetToolTip.
Empty tooltip strings are discouraged, as discussed in commit log
b6c510aa543193337041517c2d70113840189b06.
Fixes#12386.
* Better GTK+ Menu color support
* Fix 'invisible menu' issue (#12275)
* Now updates menu text color when focus changes!
* Better caching of colors when system theme changes
* Removed all GTK+ deprecation warnings from menubar
* Don't highlight menu text on mouseover in GTK+
* Fix textColor declaration scope error
* Simplify FocusManager connection management a bit
* Make the linter happy
* Decouple MenuBar view recoloring from rebuilding
This way we don't need to rebuild the subview each time a recolor
is needed, e.g. when window focus changes or the system theme changes
* Don't iterate child views if we don't need to
* Move variable declaration outside of a loop
* More efficient iteration of MenuBar children
* Cleaner MenuButton bounds testing
* Fix oops
* Add a nullptr check in MenuBar::GetItemCount()
* Simplify iteration in MenuBar::RebuildChildren()
* Make the linter happy
* Fix signed-unsigned comparison
* Remove declarations of nonexistent methods
* Make SubmenuButton accessor const
* Cleaner accelerator iteration
* Windows fixes
* Fix child touch bar items not updating
Deep children of a TouchBar didn't cause the top level touch bar to update, now they do
Fixes#11761.
* Remove unused newValue property in TB setter