Line
Link Here
|
0 |
-- brackets-shell/appshell/appshell_extensions_gtk.cpp |
0 |
++ brackets-shell/appshell/appshell_extensions_gtk.cpp |
Lines 39-44
Link Here
|
39 |
#include <X11/Xlib.h> |
39 |
#include <X11/Xlib.h> |
40 |
|
40 |
|
41 |
GtkWidget* _menuWidget; |
41 |
GtkWidget* _menuWidget; |
|
|
42 |
|
43 |
// The global ClientHandler reference. |
44 |
extern CefRefPtr<ClientHandler> g_handler; |
42 |
|
45 |
|
43 |
// Supported browsers (order matters): |
46 |
// Supported browsers (order matters): |
44 |
// - google-chorme |
47 |
// - google-chorme |
Lines 532-552
Link Here
|
532 |
|
535 |
|
533 |
void CloseWindow(CefRefPtr<CefBrowser> browser) |
536 |
void CloseWindow(CefRefPtr<CefBrowser> browser) |
534 |
{ |
537 |
{ |
|
|
538 |
if (browser.get()) { |
539 |
isReallyClosing = true; |
540 |
browser->GetHost()->CloseBrowser(true); |
541 |
|
542 |
// //# Hack because CEF's CloseBrowser() is bad. Should emit delete_event instead of directly destroying widget |
543 |
//GtkWidget* hwnd = gtk_widget_get_toplevel (browser->GetHost()->GetWindowHandle() ); |
544 |
//GtkWindow* hwnd = GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(g_handler->GetMainHwnd()))); |
545 |
// if(gtk_widget_is_toplevel (hwnd)) |
546 |
//g_message("Called destroy"); |
547 |
//gtk_widget_destroy(gtk_widget_get_toplevel(GTK_WIDGET(g_handler->GetMainHwnd()))); |
548 |
//gtk_signal_emit_by_name(GTK_OBJECT(hwnd), "delete_event"); |
549 |
// else |
550 |
|
551 |
// pass this message onto the window |
552 |
if (g_handler && g_handler->GetMainHwnd()) { |
553 |
GtkWidget* hwnd = gtk_widget_get_toplevel(GTK_WIDGET(g_handler->GetMainHwnd())); |
554 |
if(gtk_widget_is_toplevel (hwnd)) |
555 |
gtk_signal_emit_by_name(GTK_OBJECT(hwnd), "delete_event"); |
556 |
} |
557 |
} |
558 |
} |
559 |
|
560 |
void BringBrowserWindowToFront(CefRefPtr<CefBrowser> browser) |
561 |
{ |
535 |
if (browser.get()) { |
562 |
if (browser.get()) { |
536 |
isReallyClosing = true; |
563 |
GtkWindow* hwnd = GTK_WINDOW(gtk_widget_get_toplevel(GTK_WIDGET(g_handler->GetMainHwnd()))); |
537 |
// //# Hack because CEF's CloseBrowser() is bad. Should emit delete_event instead of directly destroying widget |
|
|
538 |
// GtkWidget* hwnd = gtk_widget_get_toplevel (browser->GetHost()->GetWindowHandle() ); |
539 |
// if(gtk_widget_is_toplevel (hwnd)) |
540 |
// gtk_signal_emit_by_name(GTK_OBJECT(hwnd), "delete_event"); |
541 |
// else |
542 |
browser->GetHost()->CloseBrowser(true); |
543 |
} |
544 |
} |
545 |
|
546 |
void BringBrowserWindowToFront(CefRefPtr<CefBrowser> browser) |
547 |
{ |
548 |
if (browser.get()) { |
549 |
GtkWindow* hwnd = GTK_WINDOW(browser->GetHost()->GetWindowHandle()); |
550 |
if (hwnd) |
564 |
if (hwnd) |
551 |
gtk_window_present(hwnd); |
565 |
gtk_window_present(hwnd); |
552 |
} |
566 |
} |
Lines 833-835
Link Here
|
833 |
// TODO |
847 |
// TODO |
834 |
} |
848 |
} |
835 |
|
849 |
|
|
|
850 |
|