Commit graph

386 commits

Author SHA1 Message Date
Haojian Wu
d342c9a6df Implement 'drop-files' tray event on OS X. 2015-07-20 20:06:15 +08:00
Haojian Wu
2cd6ad1a97 More code style fixing. 2015-07-16 18:42:20 +08:00
Haojian Wu
736fe0c1db Fix OS X build error. 2015-07-16 11:43:42 +08:00
Haojian Wu
ed4c69343f Add 'tray.popContextMenu()' Windows implementation. 2015-07-16 11:42:43 +08:00
Haojian Wu
4421fbf9f3 Implement 'tray.popContextMenu' API on OS X. 2015-07-16 10:50:53 +08:00
Haojian Wu
002eb1a326 Simplify code logic and fix object-c code style. 2015-07-16 10:49:55 +08:00
Haojian Wu
5ad3fff6a0 Implement 'right-clicked' tray event on Windows. 2015-07-15 20:03:05 +08:00
Haojian Wu
cca4f4abd5 Implement 'right-clicked' tray event on OS X. 2015-07-15 19:32:00 +08:00
Haojian Wu
e54fda6b34 Introduce Electron custom statusItem view.
Reimplement tray functions on OS X by using custom statusItem view.
2015-07-15 18:26:39 +08:00
Cheng Zhao
5863ed4c33 win: Also map MESSAGE_BOX_TYPE_QUESTION to TD_INFORMATION_ICON 2015-07-13 21:51:19 -07:00
Cheng Zhao
001b4a3179 Final cleanup 2015-07-08 16:24:39 +08:00
Cheng Zhao
9793473b10 Show custom buttons as links 2015-07-08 15:57:45 +08:00
Cheng Zhao
a89e5592f2 Use stock buttons on Windows when possible 2015-07-08 15:55:53 +08:00
Cheng Zhao
989351a41d Show user's icon when specified 2015-07-08 15:04:34 +08:00
Cheng Zhao
6fb8b2ce4f Show icon according to dialog's type 2015-07-08 14:46:06 +08:00
Cheng Zhao
f0be4025a5 If "detail" is empty then don't make message hilighted 2015-07-08 14:41:19 +08:00
Cheng Zhao
49da74f976 Handle when dialog is cancelled 2015-07-08 14:35:28 +08:00
Cheng Zhao
1146441c2a Implement ShowMessageBox with TaskDialog 2015-07-08 14:12:11 +08:00
Cheng Zhao
fb537d91fc Set default cancelId in JavaScript 2015-07-07 18:39:08 +08:00
Cheng Zhao
b158427271 Add cancelId option for showMessageBox 2015-07-07 18:39:08 +08:00
Cheng Zhao
a2d1ec2c1f Make "title" work 2015-07-07 17:21:30 +08:00
Cheng Zhao
9b25c16980 Allow "detail" to be empty 2015-07-07 17:21:30 +08:00
Cheng Zhao
810f14aecb Simplify the code 2015-07-07 17:21:30 +08:00
Cheng Zhao
e627592eed Reuse ShowMessageBox in ShowErrorBox 2015-07-07 17:21:30 +08:00
Cheng Zhao
3e6394a004 gtk: Map dialog type to message box type 2015-07-07 17:21:30 +08:00
Cheng Zhao
02e28ea758 Fix focusing message box 2015-07-07 17:21:30 +08:00
Cheng Zhao
b98cdf71c4 gtk: Implement message box APIs 2015-07-07 17:21:26 +08:00
Cheng Zhao
8fca1f52d3 Use SetGtkTransientForAura from libgtk2ui 2015-07-07 15:12:08 +08:00
Cheng Zhao
1ff00281f3 Seperate linux's implementation of message box 2015-07-07 15:12:08 +08:00
Haojian Wu
c01a79de6b Fix the wrong reverse pageup and pagedown keys. 2015-07-01 21:24:51 +08:00
Cheng Zhao
03ab9b2686 Merge pull request #1848 from Bitbored/master
Added `bounds` payload to tray `clicked` event on Windows
2015-06-09 10:49:01 +08:00
Seppe Stas
cac97cca0d Initialized rect with zeros
As per @zcbenz 's remark: The rect should be initialized with zeros to prevent random values being passed to the click event handler when `Shell_NotifyIconGetRect` fails.
2015-06-08 19:07:46 +02:00
Seppe Stas
16c08e7e37 Switched to gfx::Rect constructor that takes a RECT
As per @zcbenz's suggestion the rect passed to the click event handler now passes a rect constructed using `gfx::Rect(const RECT& r)`.
2015-06-08 19:04:56 +02:00
Haojian Wu
da83ba6c06 Fix dialog.showSaveDialog doesn't show the non-exist file name on Linux. 2015-06-04 14:16:53 +08:00
Seppe Stas
e5c4e34ac4 Ow 💩, where did that extra space come from? 2015-06-03 07:54:38 +02:00
Seppe Stas
ce8aa073ee Added bounds payload to tray clicked event
Used [Shell_NotifyIconGetRect function](https://msdn.microsoft.com/en-us/library/windows/desktop/dd378426) to get the bounds of the application's tray icon.
Note: only works with Windows 7 and later.

Related to #1159, #1500.
2015-06-02 21:43:37 +02:00
Cheng Zhao
f31bfab127 gtk: Notify the click event 2015-05-21 15:22:52 +08:00
Cheng Zhao
1571c3537d Merge pull request #1601 from hokein/fix-out-of-bound
Fix a potential out-of-bound issue in Accelerator.
2015-05-10 21:04:45 +08:00
Cheng Zhao
ce042d0524 mac: Don't use [NSScreen mainScreen] 2015-05-10 16:51:18 +08:00
Haojian Wu
2b82e523bf Fix a potential out-of-bound issue in Accelerator. 2015-05-07 15:46:38 +08:00
Cheng Zhao
9d54092f41 Merge pull request #1512 from hokein/add-win-key
Add `Super` key support in global-shortcut API.
2015-05-07 10:35:56 +08:00
Haojian Wu
0f67b1866a Add Super key support in global-shortcut API. 2015-05-05 22:49:32 +08:00
Cheng Zhao
f5cf3556b1 Pass bounds in clicked event of tray 2015-05-04 11:43:22 +08:00
Cheng Zhao
a53b1f7edf win: Mouse position is not notify icon's position 2015-05-04 11:37:23 +08:00
deepak1556
6d7d068e49 tray: send tray icon position as payload onclick OSX 2015-05-01 19:30:01 +05:30
Cheng Zhao
c7468278df Change the window class names 2015-04-14 16:18:57 +08:00
Cheng Zhao
5b2c0110dc Fix other compilation errors 2015-03-18 09:57:41 +08:00
Cheng Zhao
819ab5cd0c Fix ui/gfx/geometry headers 2015-03-18 09:57:38 +08:00
Cheng Zhao
443a4b8f2f mac: Use AsNSImage instead of ToNSImage
It can get rid of the empty check.
2015-02-12 12:29:49 +08:00
Cheng Zhao
f0924df68a Add "type" option to change window type 2015-02-11 12:19:39 +08:00
Cheng Zhao
0087f8da27 linux: Fix building for Chrome 40 2015-01-27 17:20:50 -08:00
Cheng Zhao
750db6aed8 base/file_util.h has been moved to base/files/file_util.h 2015-01-27 13:18:30 -08:00
Cheng Zhao
43421aedcf OVERRIDE macro is now removed 2015-01-27 13:18:30 -08:00
Cheng Zhao
33b6876cc1 Add support for Plus as accelerator key, fixes #1050 2015-01-23 15:26:54 -08:00
Cheng Zhao
708e738521 views: Fix showing icon in message dialog 2015-01-05 15:26:35 -08:00
Cheng Zhao
8457090b18 Add "icon" option for message box 2015-01-05 15:08:42 -08:00
Cheng Zhao
bf14f67cb8 win: Fix building 2015-01-02 19:31:19 -08:00
Cheng Zhao
ef7a60807b linux: Fix building 2015-01-02 19:26:17 -08:00
Cheng Zhao
ab83b21fa6 Use gfx::Image instead of gfx::ImageSkia in API
The gfx::Image can use NSImage directly as underlying format, so we
don't have to decode images ourselves on Mac, and we will also be able
to make use of template images.
2015-01-02 18:43:56 -08:00
Cheng Zhao
63e83a7ef8 win: Don't hang when failed to create thread 2014-12-16 12:33:17 -08:00
Cheng Zhao
c20e1e9d82 win: Run async save dialog in new thread 2014-12-16 12:27:26 -08:00
Cheng Zhao
253bacdf1d win: Run async open dialog in new thread 2014-12-16 11:27:38 -08:00
Cheng Zhao
0ab32bfe17 win: Reserve border space for maximized frameless window
Fixes #732.
2014-12-15 16:01:11 -08:00
Cheng Zhao
e3ccb18696 win: Fix calculating window bounds on high DPI display 2014-12-12 09:04:43 -08:00
Cheng Zhao
409f2b4d0f win: Fix compilation errors 2014-12-10 14:17:07 -08:00
Cheng Zhao
1853bef39a views: SizeConstraintsChanged has become required 2014-12-09 16:55:01 -08:00
Cheng Zhao
22c4911b58 linux: GTK+ status icon has come back 2014-12-09 16:55:01 -08:00
Cheng Zhao
9f99209733 win: Add "balloon-show" and "balloon-closed" events 2014-11-28 19:42:57 +08:00
Cheng Zhao
a3327ac53e win: Remove XP code in Tray 2014-11-28 18:59:51 +08:00
Cheng Zhao
210c97f957 win: Add "balloon-clicked" event for Tray 2014-11-28 18:50:31 +08:00
Cheng Zhao
2650e34867 win: Add NotifyIcon::DisplayBalloon 2014-11-28 18:30:43 +08:00
Cheng Zhao
9f0b5a14a4 Remove tray_icon_win.h 2014-11-28 18:21:31 +08:00
Cheng Zhao
a8b4e5faec OVERRIDE => override in notify_icon.h 2014-11-28 18:20:38 +08:00
Cheng Zhao
89de5b6e9a win: Remove NotifyIconHostStateChanger
We don't need the ability it provided, and it is causing crashes on some
machines.

Fixes #850.
2014-11-28 17:47:47 +08:00
Cheng Zhao
588cc3c7ab Make WindowStateWatcher X11 only
On Windows we need to take another way of detecting window state events.
2014-11-25 13:05:04 +08:00
Cheng Zhao
b77e6c369a x11: Implement window state events 2014-11-25 12:43:25 +08:00
Cheng Zhao
06cc27c6b3 views: Add WindowStateWatcher 2014-11-25 11:46:30 +08:00
Cheng Zhao
0e94977d42 Add app.dock.setMenu API 2014-11-16 23:04:31 +08:00
Cheng Zhao
af72842728 cocoa: Enable creating empty menu 2014-11-16 21:06:16 +08:00
Cheng Zhao
49ac363eef cocoa: Enable modifying initialized menu 2014-11-16 20:24:29 +08:00
Cheng Zhao
0398316192 views: Fix "visible" not working in menu bar, closes #825 2014-11-16 16:01:33 +08:00
Cheng Zhao
b428b2eb99 OVERRIDE => override in atom/browser/ui/views 2014-11-16 15:54:40 +08:00
Frank Hale
e1e1c173fe win: Fix default path for native dialogs 2014-11-13 14:33:25 -05:00
Cheng Zhao
7ff0e0214e linux: Use GTK+ for error reporting when GUI is ready 2014-11-05 19:27:43 +08:00
Cheng Zhao
b54caccb22 linux: Print error to console when GUI is not ready 2014-11-05 19:08:00 +08:00
Cheng Zhao
c499dfbb22 mac: Implement dialog.showErrorBox 2014-11-05 17:27:04 +08:00
Cheng Zhao
10e195a444 win: Implement dialog.showErrorBox 2014-11-05 16:05:11 +08:00
Cheng Zhao
490a12d38a Add dialog.showErrorBox API 2014-11-05 16:04:39 +08:00
Kevin Sawicki
b6b6fc3bfd Remove All Rights Reserved after GitHub copyright
Closes #762
2014-10-31 11:17:05 -07:00
patr0nus
915a6196cc Remove the deprecated convertScreenToBase and convertBaseToScreen. 2014-10-25 11:06:39 +08:00
Cheng Zhao
a95679c212 Enable mnemonics in menu, fixes atom/atom#3844 2014-10-16 21:22:22 +08:00
Cheng Zhao
643d1dcdd1 win: Fix building 2014-10-13 22:47:13 +08:00
Cheng Zhao
69a89303d0 Fix building on Linux 2014-10-13 11:03:56 +08:00
Cheng Zhao
32dff999a5 Fix API changes of Chrome 38 2014-10-11 19:11:34 +08:00
Cheng Zhao
1499d44584 gtk: Fix focusing on file dialog
Fixes atom/atom#3626.
2014-10-01 17:02:00 +08:00
Cheng Zhao
039903c6b2 mac: Don't create button without title, fixes #631 2014-10-01 15:51:32 +08:00
Cheng Zhao
67cbecaba0 mac: Add "double-clicked" event for Tray. 2014-09-09 19:45:21 +08:00
Cheng Zhao
ec1db0c7bb mac: Add Tray.setHighlightMode API, fixes #425. 2014-09-09 19:39:39 +08:00
Cheng Zhao
4330d67e0d mac: Add Tray.setTitle API, fixes #560. 2014-09-09 19:36:15 +08:00
Cheng Zhao
f604525b98 mac: Enable setting "Services" menu.
Regarding https://github.com/atom/atom/issues/3204.
2014-09-05 13:07:05 +08:00
Cheng Zhao
ca881c5aaf win: Fix compilation with Chrome 37. 2014-09-03 23:17:00 +08:00
Cheng Zhao
d9d1d03d4d linux: Dont' use native style border. 2014-09-01 20:22:38 +08:00
Cheng Zhao
9546120ce4 linux: Fix API changes of Chrome 37. 2014-09-01 20:10:14 +08:00
Cheng Zhao
400d5cef3f linux: Fix BrowserWindow.setResizable. 2014-08-26 13:37:37 +08:00
Cheng Zhao
6ccec45c61 views: Fix activating lower case accelerators. 2014-08-18 16:05:41 +08:00
Cheng Zhao
1dabd20d99 win: Underline's color tends to be a little lighter. 2014-08-18 15:41:57 +08:00
Cheng Zhao
fedb08899c views: Fix calculating underline's position. 2014-08-18 15:36:29 +08:00
Cheng Zhao
b8bfe8a9ad views: Always hide accelerator when submenu is activated. 2014-08-18 14:58:52 +08:00
Cheng Zhao
a230daa998 views: Pressing "Alt+Key" should bring up the menu bar. 2014-08-18 14:52:44 +08:00
Cheng Zhao
ba41634ad6 views: Show menubar's submenu when "Alt+Key" is pressed. 2014-08-18 14:42:21 +08:00
Cheng Zhao
e9536508a5 views: Show menubar's accelerator when "Alt" is pressed. 2014-08-18 14:12:12 +08:00
Cheng Zhao
965f2b1b6b views: Draw underline in menu bar for accelerators. 2014-08-18 13:36:00 +08:00
Cheng Zhao
e25417ab31 linux: Use "fg" of GtkStyle as text color, fixes #555. 2014-08-18 10:29:21 +08:00
Cheng Zhao
8a9e1824c3 views: Add support for auto-hide menubar. 2014-08-07 13:47:58 +08:00
Cheng Zhao
fe9f94555b win: Implement the filters option. 2014-08-06 21:51:36 +08:00
Cheng Zhao
5ba324ca9a gtk: Implement the filters option. 2014-08-06 14:49:02 +08:00
Cheng Zhao
0721b34847 mac: Implement the filters option. 2014-08-06 13:58:42 +08:00
Cheng Zhao
dc257f1f86 Add "filters" parameter for file dialogs. 2014-08-06 13:58:42 +08:00
Cheng Zhao
009e0790fe linux: Draw menubar text and background with native theme, fixes #540. 2014-08-05 18:05:34 +08:00
Cheng Zhao
5086873f78 mac: Guard against closed window, fixes #536. 2014-07-31 10:33:45 +08:00
Cheng Zhao
1c415b0666 win: No more need to convert to DIP point for context menu. 2014-07-28 20:44:11 +08:00
Cheng Zhao
8dd7f81175 Fix building on Windows. 2014-07-28 20:32:10 +08:00
Cheng Zhao
10c52bd6a6 Fix building on Linux. 2014-07-28 20:28:53 +08:00
Cheng Zhao
7a89a08534 Update to new Chromium APIs. 2014-07-28 20:28:49 +08:00
Yeechan Lu
472a95e433 win: Fix tray context menu in high DPI mode 2014-07-27 15:50:04 +08:00
Cheng Zhao
b9fc5474c5 win: Use system's menu bar color. 2014-07-25 15:20:25 +08:00
Cheng Zhao
92a0a4cf6c views: Filter out the "&" in window menu. 2014-07-25 14:53:19 +08:00
Cheng Zhao
77627c0d2d linux: Use native frame for message box. 2014-07-24 21:06:33 +08:00
Cheng Zhao
c91f0c575c linux: Remove custom frame code. 2014-07-24 21:03:17 +08:00
Cheng Zhao
e4484f0c3e win: Fix parent window of dialogs. 2014-07-21 22:13:46 +08:00
Cheng Zhao
e6998dfd4b linux: Fix compilation error caused by X header. 2014-07-21 13:48:23 +00:00
Cheng Zhao
21949e2f0c views: Don't retain MenuRunner on heap.
Sometimes the MenuHost would crash when the window is closed, the author
didn't recommend using MenuRunner on stack, but since we always run the
menu synchronously, this is no problem.
2014-07-21 21:42:01 +08:00
Cheng Zhao
ffad6fe884 win: Fix compilation error. 2014-07-21 20:45:31 +08:00
Cheng Zhao
365638f1d5 win: Remove dead menu code. 2014-07-21 11:23:01 +08:00
Cheng Zhao
9c9e0d92f4 Fix cpplint warnings. 2014-07-18 09:17:17 +08:00
Cheng Zhao
0f18d63f7f views: Implement the window menu bar. 2014-07-17 14:23:28 +08:00
Cheng Zhao
2ee7caccfe views: Add an empty menu bar. 2014-07-16 22:12:57 +08:00
Cheng Zhao
2a2fc4903d linux: Share code on frameless window with Windows. 2014-07-16 16:00:08 +08:00
Cheng Zhao
8f94d5886d win: Min/max size uses scaled DPI size. 2014-07-16 15:40:22 +08:00
Cheng Zhao
6de595f036 win: Implement frameless window. 2014-07-16 15:33:40 +08:00
Cheng Zhao
00467b53c7 linux: Fix modal message box. 2014-07-14 16:34:22 +08:00
Cheng Zhao
7c8a0ae2a3 win: Fix black ground when closing message box. 2014-07-13 09:50:16 +08:00
Cheng Zhao
add45b564e win: Improve window frames. 2014-07-12 21:03:34 +08:00
Cheng Zhao
643a47cf7d win: Use native frame for browser windows. 2014-07-12 11:36:08 +08:00
Cheng Zhao
b2afe7b3bf win: Fix notify icon and context menu. 2014-07-11 19:42:53 +08:00
Cheng Zhao
8d4211bd3a win: Fix compilation errors for chrome35. 2014-07-11 12:19:01 +08:00
Cheng Zhao
497174bbe4 linux: Avoid using unsigned long directly. 2014-07-11 09:18:06 +08:00
Cheng Zhao
1c62211d99 linux: No need to remember root item in menubar. 2014-07-11 09:09:23 +08:00
Cheng Zhao
7e86e53593 linux: Add support for unity global menubar. 2014-07-11 08:57:19 +08:00
Cheng Zhao
3349b8e6c7 linux: Remove all the X and GTK+ related implementations.
Now we only uses GTK+ for app indicator and status icon, also notice the
in Chrome35 the Gtk2StatusIcon class doesn't exist yet so we shipp
related files under chromium_src, remember to delete them after upgraded
to Chrome36.
2014-07-10 13:06:41 +08:00
Cheng Zhao
4e4227aef8 views: Implement focus and blur event. 2014-07-08 12:55:33 +08:00
Cheng Zhao
3d36a6a793 views: Make resizable frameless window work. 2014-07-07 22:40:26 +08:00
Cheng Zhao
a5e2ea2899 views: Make frameless window work. 2014-07-07 22:40:23 +08:00
Cheng Zhao
e7feafb2cc views: Use our own CustomFrameView implementation. 2014-07-07 15:35:16 +08:00
Cheng Zhao
4609a8d2be linux: Fix setting parent window for file dialogs. 2014-07-05 00:00:54 +08:00
Cheng Zhao
0a38f3321e views: Currently set window's frames. 2014-07-04 12:32:03 +08:00
Cheng Zhao
61db17412c Use views to implement NativeWindow and MessageBox on Linux. 2014-07-04 01:30:36 +08:00
Cheng Zhao
84878c4c77 Initial work for Aura on Linux. 2014-07-02 22:49:45 +08:00
Cheng Zhao
64bf1bcb9f Move all chromium's code under chromium_src. 2014-06-29 06:06:35 +00:00
Cheng Zhao
1f99a97544 gtk: Fix lack of x11_util implementations. 2014-06-29 05:31:11 +00:00
Cheng Zhao
f4b6ca70a9 gtk: Import chromium's ActiveWindowWatcherX. 2014-06-29 04:05:29 +00:00
Cheng Zhao
436deddf68 Fix compilation errors on Linux. 2014-06-29 01:51:02 +00:00
Cheng Zhao
cd4c5d976b Adapt to API changes of Chromium and node. 2014-06-28 22:33:00 +08:00
Cheng Zhao
72d6778894 gtk: Make AppIndicator.SetContextMenu async, fixes #430. 2014-06-26 12:09:07 +08:00
Cheng Zhao
32c881bde9 gtk: Make BrowserWindow::HasModalDialog work.
Fixes atom/atom#2658.
2014-06-24 21:52:06 +08:00
Cheng Zhao
6cac69238c mac: Convert from ImageSkia to NSImage to reserve DPI info. 2014-06-23 12:59:10 +08:00
Kevin Sawicki
edc043c924 Make escape to ui::VKEY_ESCAPE 2014-06-17 14:47:35 -07:00
Cheng Zhao
2cdcb45d16 Support INSERT in accelerator, fixes #398. 2014-06-14 22:25:21 +08:00
Cheng Zhao
53092cfb7c win: Fix context menu clicking in notify icon. 2014-06-03 14:11:12 +08:00
Cheng Zhao
9ef7ecbdaf Win: Implement context menu for tray icon. 2014-06-03 11:52:57 +08:00
Cheng Zhao
1cb135f7f2 win: Implement tray icon API. 2014-06-03 11:25:09 +08:00
Cheng Zhao
540e6ff01b gtk: Implement click event for status icon. 2014-06-02 23:10:36 +08:00
Cheng Zhao
4647efd22f 💄 Fix cpplint warning. 2014-06-02 11:47:37 +08:00
Cheng Zhao
da31588e0d mac: Implement the "click" event of TrayIcon. 2014-06-02 11:28:23 +08:00
Cheng Zhao
cbd9366898 Add "click" event for TrayIcon. 2014-06-02 11:08:29 +08:00
Cheng Zhao
9699dbb71f gtk: Add app indicator support as tray icon. 2014-06-01 10:20:06 +08:00
Cheng Zhao
065185baea gtk: Add TrayIcon implementation for GtkStatusIcon. 2014-05-31 10:27:07 +08:00
Cheng Zhao
6c7fe80ec5 Bind TrayIcon to JS. 2014-05-30 23:57:54 +08:00
Cheng Zhao
6f5184f001 mac: Simple implementation of tray icon. 2014-05-30 14:37:53 +08:00
Cheng Zhao
80fb79daac Add dummy implementations for TrayIcon. 2014-05-30 10:31:27 +08:00
Cheng Zhao
f176b2c58f Switch to use MIT license. 2014-05-04 20:29:08 +08:00
Cheng Zhao
b6ac06c022 Order header files. 2014-03-16 09:37:04 +08:00
Cheng Zhao
2d808d30a2 Bring back build/include_order cpplint. 2014-03-16 09:13:06 +08:00
Cheng Zhao
bbef33a33a Bring back build/header_guard cpplint. 2014-03-16 08:58:59 +08:00
Cheng Zhao
68cb6ee861 Move atom/browser/ui/gtk to chrome/. 2014-03-16 08:39:43 +08:00
Cheng Zhao
516d46444d Move all sources under atom/. 2014-03-16 08:30:26 +08:00