Ubuntu: how to create custom indicators for small task like window spread?



Question:

I really like window spread functionality in Ubuntu.

is there any way to get it in top-panel like an indicator, for faster access? Better if I can get it next to menu icon in panel corner.

Thanks in advanced! :)


Solution:1

Use Ubuntu's indicator feature.

This is a python example that will perform the function you described. When you run the script, you'll have the clickable indication in the navigation bar.

Save this as myindicator.py. Make it executable and run it.

#!/usr/bin/python    # This code is an example for a tutorial on Ubuntu Unity/Gnome AppIndicators:  # http://candidtim.github.io/appindicator/2014/09/13/ubuntu-appindicator-step-by-step.html  # https://gist.github.com/candidtim/7290a1ad6e465d680b68    import os  import signal  import json  import subprocess    from urllib2 import Request, urlopen # URLError    from gi.repository import Gtk as gtk  from gi.repository import AppIndicator3 as appindicator  from gi.repository import Notify as notify        APPINDICATOR_ID = 'myappindicator'    def main():      indicator = appindicator.Indicator.new(APPINDICATOR_ID, os.path.abspath('sample_icon.svg'), appindicator.IndicatorCategory.SYSTEM_SERVICES)      indicator.set_status(appindicator.IndicatorStatus.ACTIVE)      indicator.set_menu(build_menu())      notify.init(APPINDICATOR_ID)      gtk.main()    def build_menu():      menu = gtk.Menu()        item_windowsspread = gtk.MenuItem('Windows Spread')      item_windowsspread.connect('activate', windowsspread)      menu.append(item_windowsspread)        item_quit1 = gtk.MenuItem('Quit')      item_quit1.connect('activate', quit1)      menu.append(item_quit1)        menu.show_all()      return menu    def fetch_joke():      request = Request('http://api.icndb.com/jokes/random?limitTo=[nerdy]')      response = urlopen(request)      joke = json.loads(response.read())['value']['joke']      return joke    def windowsspread(_):      subprocess.call("xdotool key super+w", shell=True)      return windowsspread    def quit1(_):      notify.uninit()      gtk.main_quit()    if __name__ == "__main__":      signal.signal(signal.SIGINT, signal.SIG_DFL)      main()  

Details for making indicator in Ubuntu can be found at:
Ubuntu ApplicationIndicators wiki


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »