Commit graph

859 commits

Author SHA1 Message Date
Cheng Zhao
2c8dc9e0bd Add View.addChildView API 2018-05-24 15:36:29 +09:00
Milan Burda
2337237d58 Refactoring: use C++11 class member variable initialization 2018-05-22 00:18:38 +02:00
Jeremy Apthorp
156a97b80d
fix: Menu.setApplicationMenu(null) crash on Linux (#12983) 2018-05-18 10:29:28 -07:00
Jeremy Apthorp
da0fd10423 refactor: chromium-style warnings in linux code (#12949) 2018-05-16 14:12:45 -05:00
John Kleinschmidt
9488ef4867
Merge pull request #12496 from mikeykhalil/8952-ignore-tray-double-click-events
8952 option to ignore tray double click events
2018-05-16 10:17:36 -04:00
Jeremy Apthorp
73eb5af2cc
refactor: remove unnecessary std::moves in linux code (#12951)
The compiler was complaining that the move was preventing copy elision.
2018-05-15 14:33:47 -07:00
Jeremy Apthorp
8fa48d1c04 fix: unused variable warnings in linux code (#12950) 2018-05-15 13:49:27 -05:00
Jeremy Apthorp
136105e353 fix: wrong list index type in file_dialog_gtk.cc (#12952) 2018-05-15 13:22:52 -05:00
Cheng Zhao
ea97f43145 check content view in SetMenuBarVisibility 2018-05-15 14:12:47 +09:00
Cheng Zhao
640877ebf8 attach native view after widget is created 2018-05-15 14:03:21 +09:00
Heilig Benedek
eae0674f61 Match chromium's workaround when setting size of unresizable windows 2018-05-12 17:37:31 +02:00
Cheng Zhao
5547df6073 report correct content size in AtomNSWindow
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.
2018-05-04 09:55:09 +09:00
Cheng Zhao
28fc58067b remove usage of FullSizeContentView 2018-05-04 09:55:09 +09:00
Cheng Zhao
a9709a635c display WebContents as views::View on macOS 2018-05-04 09:55:09 +09:00
mikeykhalil
94ffd4bfc0 add getter for ignoreDoubleClickEvents field 2018-05-03 13:49:33 -07:00
mikeykhalil
208374afa4 clean up ignore double click event implementation 2018-05-03 13:49:33 -07:00
mikeykhalil
1f29124d11 updated Tray API to ignore double click events on macOS (#8952) 2018-05-03 13:49:32 -07:00
Jeremy Apthorp
cdc5022305 Fix chromium-style errors (#12802) 2018-05-03 09:04:22 -05:00
Cheng Zhao
c67d1b62e3
refactor: NativeWindowViews should not be a View (#12750) 2018-05-01 13:28:22 +09:00
Cheng Zhao
cf70267871 remove unnecessary overrides 2018-04-26 09:48:12 +09:00
Cheng Zhao
39242c978f fix failed BrowserWindow tests 2018-04-25 15:10:29 +09:00
Cheng Zhao
75a624434c refactor: use views::Widget on macOS 2018-04-25 15:10:29 +09:00
Shelley Vohr
12a57ff1c2 clang-format objc files (#12673) 2018-04-20 11:47:04 -07:00
Cheng Zhao
c44279bb10 Move AtomNSWindow to a new file 2018-04-20 19:26:20 +09:00
Cheng Zhao
569967ac21 Move QLPreviewPanelDataSource to AtomNSWindowDelegate 2018-04-20 19:17:08 +09:00
Cheng Zhao
f6a7e5ea23 Move NSTouchBarDelegate to AtomNSWindowDelegate 2018-04-20 19:15:45 +09:00
Cheng Zhao
ce54fd334d Move AtomNSWindowDelegate to a new file 2018-04-20 19:12:17 +09:00
Cheng Zhao
9bc79f840e mac: Override NativeWidgetMac 2018-04-20 19:10:37 +09:00
Cheng Zhao
37a7df49d6 mac: Provide ViewsDelegate 2018-04-20 19:10:37 +09:00
deepak1556
30f1d0991b enable chromium style checker plugin for electron and brightray targets 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
eb7ccf8afa Bring mac code into conformance with -Wobjc-missing-property-synthesis 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
f3c00e96aa Bring mac code into conformance with -Wunguarded-availability 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
27cee90e5e [chromium-style] move methods out of headers 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
f1587da480 [chromium-style] out-of-line default constructors and destructors 2018-04-19 11:12:58 -07:00
Jeremy Apthorp
e6695cf2ec [chromium-style] override / virtual warnings 2018-04-19 11:12:10 -07:00
Jeremy Apthorp
a635f078c6 [chromium-style] auto variable type must not deduce to a raw pointer type 2018-04-19 11:10:52 -07:00
Shelley Vohr
c6f4bbd143
also format missing .cc files 2018-04-18 20:48:45 -04:00
Shelley Vohr
53bdf22c85
clang-format atom files 2018-04-18 20:48:45 -04:00
Shelley Vohr
d722008367
remove unnecessary ptr_util.h include 2018-04-12 22:34:26 -04:00
Shelley Vohr
b05932310b
replace base::MakeUnique with std::make_unique 2018-04-12 08:48:32 -04:00
Cheng Zhao
97e8800677 Remove web_contents from NativeWindow's constructor 2018-04-11 15:12:53 +09:00
Cheng Zhao
41134f52d9 Fix memory leaks in file_dialog_mac.mm 2018-04-09 16:51:25 +09:00
Yuya Ochiai
2131dc839a Show file filter name for accessory view of file dialog
- Respect filters option of dialog.showOpenDialog() and
  dialog.showSaveDialog(). (#10335)
- Show "All Files" for <input> apart from "accept" attribute. (#11456)
2018-04-09 16:50:21 +09:00
Charles Kerr
f8b8dc1494
Simplify views/menu_bar focus management (#12536)
* Simplify views/menu_bar focus management

* Make the linter happy

* Remove NativeWindowView focus manager listener API

* remove unnecessary change

* MenuBar ctor now takes a views::View
2018-04-05 21:53:08 -05:00
Heilig Benedek
a14ebc80d2 Disable chromium's redraw locking on Windows when DWM is disabled (#12501)
* disable redraw locking on windows

* update libcc ref
2018-04-05 15:55:26 +09:00
Cheng Zhao
c75dd93b92
Move AutofillPopup from NativeWindow to WebContents (#12514) 2018-04-05 09:53:51 +09:00
Cheng Zhao
8fc5c6c862
Refactor NativeWindow (Part 3): Remove is_offscreen_dummy from NativeWindow (#12503)
* 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
2018-04-03 12:19:35 +09:00
Zhuo Lu
c50a460ce6 Do not block main process for async dialog (#12404) 2018-03-22 08:57:33 -04:00
Shelley Vohr
05dc04dacc
don't check darkmode for drawStatusBarBackgroundInRect (#12395) 2018-03-21 19:03:57 -04:00
Charles Kerr
0d7becff87
Use the appname as the tray icon's default tooltip (#12388)
This makes an upstream DCHECK happy in AppIndicatorIcon::SetToolTip.
Empty tooltip strings are discouraged, as discussed in commit log
b6c510aa543193337041517c2d70113840189b06.

Fixes #12386.
2018-03-21 12:15:30 -05:00
deepak1556
e24c0dda5d add features module to detect availability of build time features at runtime 2018-03-20 10:13:17 +03:00
deepak1556
4b39d17e5f move pdf viewer behind feature flag 2018-03-20 10:13:17 +03:00
Shelley Vohr
9599615b23
Fix nil tray title crash (#12352)
* Add check for title_ being nil

* remove print stub
2018-03-19 10:49:39 -05:00
Charles Kerr
558ef7352d
Better GTK+ Menu color support (#12300)
* 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
2018-03-17 06:37:36 +09:00
Cheng Zhao
f7786a9e48
Merge pull request #11230 from electron/upgrade-to-chromium-62
Upgrade to Chromium 62
2018-02-26 14:20:21 +09:00
kaylie
da9f12d1e2 restore old cb 2018-02-25 14:19:40 -08:00
Aleksei Kuzmin
9fa08fdbc0 Merge views::CustomButton into views::Button.
https://chromium-review.googlesource.com/617407
2018-02-23 10:21:24 +09:00
deepak1556
25d966110e FIXME: PDF component IPC should be converted to Mojo.
https://codereview.chromium.org/2455543002
2018-02-23 10:21:23 +09:00
Charles Kerr
56859531cd
fix floating reference glib warning (#11948)
use gtk_widget_destroy() rather than g_object_unref() on the floating temporary menubar widget that we use to calculate colors
2018-02-19 00:12:54 -06:00
John Kleinschmidt
78ccfa0612
Merge pull request #11879 from electron/fix-gtk-deprecations
Fix GTK+ 3 deprecations
2018-02-16 10:01:01 -05:00
Charles Kerr
5e7a5ce3a9 run clang-format on changed sources 2018-02-15 15:20:55 -06:00
Charles Kerr
381ed2e2b2 remove GTK+ 2 specific code 2018-02-15 14:57:45 -06:00
acheronfail
d1d50a4c92 Implement App-Scoped Security scoped bookmarks (#11711)
* implementation of security scoped bookmarks

* option is now only available on mas builds
2018-02-12 13:25:06 -05:00
Samuel Attard
66b57858b8 Fix child touch bar items not updating (#11812)
* 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
2018-02-12 12:53:04 -05:00
Shelley Vohr
36cf548114
change weak ptr ref to strong 2018-02-10 21:04:26 -05:00
Shelley Vohr
3085c78bcf
implement selectFormat selector 2018-02-09 21:38:21 -05:00
Charles Kerr
3710e0e38b make the linter happier 2018-02-09 19:34:37 -06:00
Charles Kerr
4b766d26df make the linter happy 2018-02-09 19:29:32 -06:00
Charles Kerr
3f5ce6d74f fix gtk3 deprecation warnings setting menubar colors 2018-02-09 19:04:59 -06:00
Charles Kerr
b107d3f440 remove icons from messageboxes on gtk
Icons are deprecated in GtkMessageBoxes as of GTK+ 3.12. The GNOME HIG no longer shows icons in example dialogs; see https://developer.gnome.org/hig/stable/dialogs.html.en and https://developer.gnome.org/gtk3/stable/GtkMessageDialog.html
2018-02-09 17:53:02 -06:00
Charles Kerr
ffff400236 fix 'GTK_STOCK_*' deprecation warnings 2018-02-09 17:45:34 -06:00
Charles Kerr
e5eeab6e29 fix 'GTK_STOCK_*' deprecation warnings 2018-02-09 09:57:39 -06:00
Shelley Vohr
0fff336481
add accessory view for format picker 2018-02-09 09:08:04 -05:00
Shelley Vohr
3399480304
first pass at menu event emission 2018-01-27 09:35:58 -05:00
Nitish Sakhawalkar
2b4cc0a525 Fix macos Full Screen Toggle menu item label (#11633) 2018-01-19 09:27:36 -05:00
Heilig Benedek
f36fda3f5d don't dereference tooltip_controller if it's null 2018-01-18 20:35:19 +01:00
Heilig Benedek
8d8b8c590d update calls to use new namespaces 2018-01-18 15:23:38 +01:00
Heilig Benedek
5e198d9dc6 add todo comment 2018-01-18 15:23:38 +01:00
Heilig Benedek
8233890e39 lint fix 2018-01-18 15:23:38 +01:00
Heilig Benedek
c6c618acdb explicitly hide tooltip on window deactivation 2018-01-18 15:23:38 +01:00
shelley vohr
4f0e1826e5
properly check checkbox state on callback (#11658) 2018-01-17 08:51:49 -05:00
Matt Way
5504294a6a Replaces tracking removal with proper mem management 2018-01-10 10:24:37 +09:00
Matt Way
8df4402722 removed unnecessary braces 2018-01-10 10:24:13 +09:00
Matt Way
638d8219c4 Removed tracking area when removing icon to prevent mouse exit race condition crash 2018-01-10 10:24:11 +09:00
Cheng Zhao
1043f07b42 Fix compilation on Windows 2018-01-02 16:37:11 +09:00
deepak1556
0df464e16a address review comments 2018-01-02 16:37:09 +09:00
deepak1556
d29c27dc78 REVIEW: obtain mime type from file path only on IO allowed sequence 2018-01-02 16:37:09 +09:00
deepak1556
e072213923 FIXME: dbus ObjectProxy methods should only be invoked on IO allowed sequence 2018-01-02 16:37:09 +09:00
deepak1556
a1592446da REVIEW: access GetApplicationLocale on sequence that allows IO 2018-01-02 16:37:08 +09:00
Cheng Zhao
c3eadd5b63 mac: Call callback when menu is programmely closed 2018-01-01 16:49:25 +09:00
Cheng Zhao
d7bc127c60 mac: Correctly close popup menu 2018-01-01 15:40:15 +09:00
Cheng Zhao
81527b71ba
Merge pull request #11279 from sethlu/openrecent
Update submenu's title at replacement
2017-12-19 15:28:02 +09:00
Ales Pergl
8357a33d81 Don't leak the taskbar object, reuse it instead 2017-12-01 17:55:21 +01:00
Zhuo Lu
c274312a3a Update submenu's title 2017-11-28 19:38:07 -08:00
Cheng Zhao
0dc094fffc Do not change logic on highlighing 2017-11-28 17:37:58 +09:00
Cheng Zhao
d1ebce0395 Remove unused methods 2017-11-28 17:31:13 +09:00
Cheng Zhao
590578c187 Cache the attributed string 2017-11-28 17:26:09 +09:00
Cheng Zhao
eab3342065 Fix the detection of ANSI code 2017-11-28 16:36:07 +09:00
Cheng Zhao
c9acccaddc Fix memory leak in ANSCI parsing code
We do not have ARC enabled.
2017-11-28 16:36:07 +09:00
Cheng Zhao
4ded79801f Remove unused code in NSColor+Hex.h 2017-11-28 16:10:24 +09:00
Cheng Zhao
08f30e4ca6 Add license for the vendored files
Checked the original files and they were compatible with MIT.
2017-11-28 15:38:42 +09:00
Cheng Zhao
edede7f33f Fix cpplint warning 2017-11-28 15:36:45 +09:00
Sebastien Bramille
a4905b3c95 Lint 2017-11-28 15:34:13 +09:00
Sebastien Bramille
e8b0897ea1 Fix margin 2017-11-28 15:34:13 +09:00
Sebastien Bramille
71cfb7441c Update header file 2017-11-28 15:34:13 +09:00
Sebastien Bramille
9f89bd8d8e Add isHighlighted method 2017-11-28 15:34:13 +09:00
Sebastien Bramille
6a1cfafbd8 Clean 2017-11-28 15:34:13 +09:00
Sebastien Bramille
85f254316c Add logic 2017-11-28 15:34:13 +09:00
Sebastien Bramille
d722d20974 Use NSString+ANSI on the Menu title 2017-11-28 15:34:13 +09:00
Cheng Zhao
b161a4f515
Merge pull request #11166 from sethlu/openrecent
feat: Recent documents menu item
2017-11-28 10:55:14 +09:00
Zhuo Lu
104d307a4a Use base::scoped_nsobject 2017-11-27 17:26:23 +09:00
Zhuo Lu
8fa3e71ce4 Format code 2017-11-27 17:26:22 +09:00
Zhuo Lu
4934685f53 Declare with static 2017-11-27 17:26:22 +09:00
Zhuo Lu
0c4e425872 Do not autorelease global variables 2017-11-27 17:26:22 +09:00
Zhuo Lu
dcdc3621ac Rename roles 2017-11-27 17:26:22 +09:00
Zhuo Lu
1ab4504e94 No need to make visible 2017-11-27 17:26:22 +09:00
Zhuo Lu
cf73fb737f Small optimization 2017-11-27 17:26:22 +09:00
Zhuo Lu
5d44dbaf54 Redesign recent documents role API
- For more flexibility in designing the recent documents menu, now there can be one menu item (known issue: you may specify more but AppKit doens't display more than one) in the submenu list, rather than separating the labels with a tab.
- Also added is the role `clearrecent` that can be given to a menu item that can clear the recent documents.
2017-11-27 17:26:22 +09:00
Zhuo Lu
0b9cea334f Specify "Clear Menu" through label option
Like a bit of a hack right now, conforming to the existing menu item definition
2017-11-27 17:26:22 +09:00
Zhuo Lu
8b720c120d Hide "Open Recent" in xib 2017-11-27 17:26:22 +09:00
Zhuo Lu
4da2eb9366 Introduce openrecent role
- Does not yet accept any options except label--"Clear Menu" can't be modified through exposed node API
- If `openrecent` is present across multiple menu items, the last seen will be visible in the main menu due to that it is designed to behave like a singleton
2017-11-27 17:26:22 +09:00
Zhuo Lu
0ba2fa5cba Use else if 2017-11-27 17:26:22 +09:00
Aleksei Kuzmin
fe9ae41f98 Use gtk_toggle_button_get_active() 2017-11-24 10:58:53 +09:00
Samuel Attard
797a58bee0 Result of RunMenuAt is now void, no need to ignore it 2017-11-24 10:58:17 +09:00
Tomas Rycl
a723e5a4c5 Fixed moved cert x509 function issue on Windows 2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
338604239d Cleanup MenuRunner API
https://codereview.chromium.org/2790773002
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
14eb2af876 Give CustomButton a focus painter.
https://chromium-review.googlesource.com/c/chromium/src/+/516824
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
e0d7b7d0fc Clean up views::Background.
https://chromium-review.googlesource.com/c/chromium/src/+/520702
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
93b3d8cb49 Changed top/bottom & left/right border parameters on BoxLayout to take single gfx::Insets parameter.
https://chromium-review.googlesource.com/c/chromium/src/+/515902
2017-11-24 10:58:17 +09:00
Tony Ganch
513d4fd225 Remove usage of X11AtomCache
See https://codereview.chromium.org/2914103002/
2017-11-24 10:58:17 +09:00
Tony Ganch
d7e4e8d6cc Rename GetPrefferedSize to CalculatePrefferedSize
See https://chromium-review.googlesource.com/c/chromium/src/+/516542
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
7f5fbb04e2 Migrate from ScopedComPtr::CreateInstance() to CoCreateInstance in chrome/...
https://codereview.chromium.org/2894483002
2017-11-24 10:58:17 +09:00
Aleksei Kuzmin
75b41102ef Remove unused includes 2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
1127452429 PlzNavigate: make NavigationResourceHandler a LayeredResourceHandler
https://codereview.chromium.org/2847443002
2017-11-24 10:58:16 +09:00
Aleksei Kuzmin
a72a08bccc Convert iOS to use X509CertificateBytes.
https://codereview.chromium.org/2864133002
2017-11-24 10:58:16 +09:00
Cheng Zhao
3cc8330998 Merge branch 'master' into ahmedmohamedali-master 2017-11-20 11:04:47 +09:00
Cheng Zhao
7e0593950c Code style fixes 2017-11-13 16:13:54 +09:00
Heilig Benedek
26daffea9c use smart pointer for paint_canvas 2017-11-13 15:50:49 +09:00
Heilig Benedek
4b10445c2e lint fix 2017-11-13 15:50:49 +09:00
Heilig Benedek
193beb57c9 fix datalist element popup position when menu is hidden 2017-11-13 15:50:49 +09:00
Heilig Benedek
f8b3009ebf restructure code to use web_preferences if possible 2017-11-13 15:50:49 +09:00
Heilig Benedek
71b36ef54d don't show the dummy window for the rest of the dialogs too on mac 2017-11-13 15:46:46 +09:00
Heilig Benedek
13b86598e8 don't show osr dummy window when dialog is shown on mac 2017-11-13 15:46:46 +09:00
Heilig Benedek
e39aacb30e fix a bug that caused a crash when using an offscreen window with detached devtools, related to autofill popups 2017-11-13 15:46:46 +09:00
Ahmed
9b3960fe90
Merge branch 'master' into master 2017-11-08 18:03:55 +01:00
Samuel Attard
bb997c2ea4 Forward declare the scrubber layout 2017-11-08 16:48:08 +13:00
Armagan Amcalar
edd113548a Make ScrubberItem width dynamic
Depending on whether a ScrubberItem has text or an icon, this changeset
calculates the actual width and sizes the TouchBar items accordingly.
Previously, all ScrubberItems, regardless of their content, had a static
width of 50px.

This commit also fixes #10539.
2017-11-07 00:09:14 +01:00
Ahmed Mohamed Ali
9f3cfa2dbd Fix crash that happens when the PDF viewer is refreshed.
The root cause is the PdfViewerHandler instanceis destroyed but not removed from the list of observer in WebContentsZoomController
2017-10-19 16:27:08 +02:00
Samuel Attard
d350134c4f Ensure that the touchbar's esape item can be set before setting it 2017-10-10 02:24:49 +11:00
Cheng Zhao
bb71b09452 Fix building on Windows 2017-10-05 11:51:41 +09:00