require ‘gtk3’
app = Gtk::Application.new(“org.monkey.hobotz”, :flags_none)
app.signal_connect “activate” do |application|
window = Gtk::ApplicationWindow.new application
window.set_default_size(300, 10)
box = Gtk::Box.new :vertical
hidebutton = Gtk::Button.new(label: “Hide”)
hidebutton.signal_connect “clicked” do
puts “Let’s hide!!!”
window.hide
endcallbutton = Gtk::Button.new(label: “Call”)
callbutton.signal_connect “clicked” do
puts “I’m calling you…”
window.hide
system “gnome-calculator”
application.quit
endwindow.add box
box.add hidebutton
box.add callbuttonwindow.show_all
endapp.run
I have this ruby program. Now, when I click hidebutton, the window disappears properly, but after clicking callbutton, it always stays visible after the calculator starts.
For all I know, window.hide happens before the call so it should disappear first and the application calls the other app later.
What am I missing?