Projects/Focus: Difference between revisions

    From KDE TechBase
     
    (24 intermediate revisions by the same user not shown)
    Line 1: Line 1:
    = Focus =
    <big>'''Focus''' enables you to work and study more productively by removing distractions on the desktop and Internet.</big>


    Focus enables you to work and study more productively by removing distractions on the desktop and Internet.
    == Preface ==
     
    == Preamble ==
    A few notes before getting started.
    A few notes before getting started.
    === Plasma Activities ===
    === Plasma Activities ===
    ''Disclaimer: '' A similar function (activity management) is being developed in Plasma. While the feature sets are not distinct, the basic rationale is.  
    ''Disclaimer: '' A similar function (activity management) is being developed in Plasma. While the feature sets of Focus and Plasma Activities are not distinct, the basic rationale is.  


    Focus is fundamentally designed to be a distraction eliminator. Whereas, Plasma Activities provide a means to associate a set of windows, plasmoids, documents with a particular activity.
    Focus is fundamentally designed to be a distraction eliminator. Whereas, Plasma Activities provide a means to associate a set of windows, plasmoids, documents with a particular activity.


    There is overlap in these visions, and ideally the two can come together to offer a complete activity and distraction management solution for the KDE desktop.  
    There is overlap in these visions, and ideally the two can come together to offer a complete activity and distraction management solution for the KDE desktop.


    === Document's Purpose ===
    === Document's Purpose ===
    Line 22: Line 20:


    === Basic Rationale ===
    === Basic Rationale ===
    The Desktop and the Internet while streamlining our workflows and increasing our productivity, have introduced near an infinite number of new means to distract ourselves and consequently decrease our productivity.
    The desktop and the Internet while providing new tools and methods for increasing our productivity, have introduced near an infinite number of new means to distract ourselves which results in a net decrease in productivity.


    People can focus on their task-at-hand better when potential distractions are removed. Better focus leads to more work done, and hence, greater productivity.
    People can focus on their task-at-hand better when potential distractions are removed. Better focus leads to more work done, and hence, greater productivity.
    Line 35: Line 33:
    |  Un-Concentrators  
    |  Un-Concentrators  
    |  Many people have problems concentrating on demand (such as ADHD sufferers), and unintentionally waste their time on irrelevant tasks (surfing, watching videos, etc.). Focus makes it more difficult for them to accidentally waste time by removing distractions and leaving the user with little else to do but his task.
    |  Many people have problems concentrating on demand (such as ADHD sufferers), and unintentionally waste their time on irrelevant tasks (surfing, watching videos, etc.). Focus makes it more difficult for them to accidentally waste time by removing distractions and leaving the user with little else to do but his task.
    <small>''Note:''  Focus is not claiming it can "cure" the focus symptoms ADHD tend to exhibit, rather it should be considered an aid to forcing concentration (if possible).</small>
    <small>''Note:''  Focus is not claiming it can "cure" the focus symptoms ADHD sufferers tend to exhibit, rather it should be considered an aid to forcing concentration (if possible).</small>
    |-
    |-
    |  The Overworked
    |  The Overworked
    |  These people have an impossibly long todo list, they must manage their time down to the minute each day in order to complete their tasks. Focus provides an easy means of time tracking and distraction elimination to maximize productivity.
    |  These people have an impossibly long todo list, they must manage their time down to the minute each day in order to complete their tasks. Focus provides an easy means of time tracking and distraction elimination to maximize productivity.
    |}
    |}
    === Sample Stakeholder Profiles ===
    ==== Eric - 22 - The Procrastinator ====
    Eric is a pretty typical college student at a major US university. By the time Eric reached college, he was already an expert at avoiding the inevitable. "Oh, I'll get to it," he says, and most of the time he does. He gets it done, but not without a constant and looming pressure that builds until, the night before. He crams, sometimes all night long, in order to finish on time. The result is seldom his best work. "Was it worth it?", he asks himself. "Not a chance." What does he say when the next project comes around? "Oh, I'll get to it."
    The majority of Eric's assignments and projects must be done on his personal laptop. Whether it be a paper for his Psychology 101 class; a one page reading response for Literature 215; or an online quiz for Linear Algebra, they all require him to use his computer.
    ==== Olivia - 30 -  The Un-Concentrator ====
    Olivia is the founding editor for a very successful online weblog. She has won many distinguished awards from her work both online as a blogger, and offline as an author. She is considered the foremost independent voice on the technology efforts of many web titans. Her writing has appeared in the many leading publications such as Stanford Business Study, Wireless, Computer World and Macintosh magazines. A popular and in-demand public speaker, Olivia has given many feature presentations and keynote speeches at first-tier events such as Technology 2.0 Expo. A reputable company awarded her "Most Influential Women in Technology".
    === Problem Scenarios ===
    ==== Eric ====
    Toward the beginning of his third semester Eric has to write a medium length paper for his Psychology class. The professor is requiring them to make use of several online resources. Before he can begin writing the paper, he must research his assigned prompt using the online resources. Eric begins with pure intentions. He's queued up a playlist of lyric-less music that helps him concentrate, he's turned off his cell phone, and even exited out of non-study related websites (Facebook, digg.com, etc). He works well for about 15 minutes when, suddenly, a notification pops up on his screen. It is a new email message -- Eric forgot to turn off his email client, because it runs in the background -- from a friend with a link to a funny YouTube video. He looks at the time, considers how much work he's done then tells himself, "I've done quite a bit, I could use a break." He clicks on the link and begins watching the video, he loves it and realizes one of his other friends would likely enjoy it too. He opens Facebook and shares it with the friend, and sees he has 8 unread notifications...
    ==== Olivia ====
    Olivia sits down to write a new article for her weblog. Suddenly something she had been thinking of earlier pops into her head, "I wonder if anyone at Ask Metafilter knows good software for making screencasts." A few clicks later she exclaims, "Oh look, someone's had a traumatic breakup!" Several hours later, an article has yet to be written and she is feeling pretty guilty.
    == Activity Design  ==
    Activity above refers to the design phase where basic concepts and services of the system are reasoned out, with the end goal of specifying system functionality.
    === Entities  ===
    ==== Activity  ====
    An <tt>Activity</tt> is simply a set of <tt>Actions</tt> that are performed upon activity activation.
    An <tt>Activity</tt> will consist of the following data:
    *Name
    *Icon (optional)
    *List of <tt>Actions</tt>
    *Default focus time (minutes)
    ==== Action  ====
    An <tt>Action</tt> is an abstract type that encapsulates a single state to be instituted on the user's computer. <tt>Action</tt>s are distinct and will typically execute some sort of command.
    An <tt>Action</tt> will consist of the following data:
    *Name
    *Description
    *Activation Effect - state entered upon focus operation start (optional)
    *Focusing Effect - state maintained throughout focus operation (optional)
    *Deactivation Effect - state entered upon focus operation end (optional)
    Note: At least one type of effect is required.
    === Tasks  ===
    ==== List Activities  ====
    '''Type:''' Primary Screen
    The MainWindow of the application. Consists of a simple list of previously created <tt>Activities</tt> and some <tt>Action</tt>s.
    '''Elements:'''
    *List of created Activities
    **Name
    **Action Count
    **Icon
    **Focus Action
    '''Actions:'''
    *[[#Create_Activity]] - creates a new activity
    *[[#Edit_Activity]] - changes existing activity (requires selected activity)
    *Delete Activity - remove an activity (requires selected activity)
    *[[#Focus_on_Activity]] - start focusing on an activity (requires selected activity)
    ==== Create Activity  ====
    '''Type:''' Secondary Screen Activation: "Create New Activity" from [[#List_Activities]]
    The primary member of an <tt>Activity</tt> is the list of <tt>Action</tt>s, therefore creating this list of actions should be the main focus of this task.
    '''Elements:'''
    *Field for setting the name
    *Icon view
    *A list of possible actions and their descriptions
    *A list of actions currently assigned to this Activity
    '''Actions:'''
    *Setting Icon - opens a dialog to set the activity's icon
    *Assigning an Action - add an action to the assigned actions list
    *Editing assigned action's properties
    *Removing assigned actions
    ==== Edit Activity  ====
    Type: Secondary Screen Activation: "Edit Activity" from [[#List_Activities]]
    This task is very similar to the Create Activity task, however the elements will be populated with the selected <tt>Activity</tt>'s data.
    See [[#Create_Activity]]
    ==== Focus on Activity  ====
    '''Type:''' Secondary Screen Activation: "Focus" from [[#List_Activities]]
    The visual representation of this task will be the selected <tt>Activity</tt>'s name and Icon, as well as a countdown timer and a slider to change the Focus time.
    '''Elements:'''
    *Activity Name
    *Icon
    *Countdown Timer
    *Slider
    '''Actions:'''
    *Done Focusing - end focus operation, return to [[#List_Activities]]
    *Slide Focus length - change the length of the focus operation
    === Actions  ===
    <tt>[[#Action]]</tt>s are the most fundamental components in Focus, and have the potential to do anything. Here are some descriptions of possible actions.
    ==== Launch Applications  ====
    '''Name:''' Launch Applications <br> '''Description:'''Launch any applications needed to complete the activity
    '''Elements:'''
    * List of applications to open
    ** Focus if already running (CheckBox)
    ** Send to virtual desktop #
    * After launching: Hide all others, Quit all others, Nothing (ComboBox)
    '''Actions:'''
    *Add Application
    *Remove Application
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Runs every application in the list, and performs the "After launching" option
    | None
    | None
    |}
    ==== Quit Applications  ====
    '''Name:''' Quit Applications<br> '''Description:''' Quit applications if they are running.
    '''Elements:'''
    *List of applications to quit
    *Launch application when done focusing (CheckBox)
    *Block application from being started (CheckBox)
    '''Actions:'''
    *Add Application
    *Remove Application
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Quits every application in the list if it is running.
    | Prevents applications from being started in the list that have "Block from being started" enabled
    | Launches applications in the list that have "Launch when done" enabled
    |}
    ==== Open Document or Folder  ====
    '''Name:''' Open Document or Folder<br> '''Description:''' Opens the supplied document or folder
    '''Elements:'''
    *File Chooser
    *Icon view
    *Current file name
    '''Actions:'''
    *Choose file/folder
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Open the document/folder
    | None
    | None
    |}
    ==== Open Websites  ====
    '''Name:''' Open Websites <br />
    '''Description:''' Opens the supplied websites
    '''Elements:'''
    * List of websites
    * Open with <Browser list> (combobox)
    * Open in tabs (checkbox)
    '''Actions:'''
    * Add website
    * Remove website
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Opens the specified websites (in tabs if specified)
    | None
    | None
    |}
    ==== Block Websites  ====
    '''Name:''' Block Websites <br />
    '''Description:''' Blocks the specified websites
    '''Elements:'''
    * List of domains
    * Open with <Browser list> (combobox)
    * Open in tabs (checkbox)
    '''Actions:'''
    * Add individual website
    * Add website group
    * Remove website
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Closes the specified websites if they are open.
    | Blocks the domains from being accessed
    | None
    |}
    ==== Run Script  ====
    '''Name:''' Run Script <br />
    '''Description:''' Runs the supplied script
    '''Elements:'''
    * Text area
    * Script interpreter (combobox)
    * On Focus (checkbox)
    * On Done Focusing (checkbox)
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Runs the script if "On Focus" is checked
    | None
    | Runs the script if "On Done Focusing" is checked
    |}
    ==== Change IM Status  ====
    '''Name:''' Change IM Status <br />
    '''Description:''' Change your status message in your IM Client
    '''Elements:'''
    * IM Application (combobox)
    * On Focus
    ** Set Status (combobox)
    ** Set Message (text field)
    * On Done Focusing
    ** Set Status (combobox)
    ** Set Message (text field)
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Set IM status and message
    | None
    | Set IM status and message
    |}
    ==== Play Music (Amarok) ====
    '''Name:''' Play Music <br />
    '''Description:'''  Start playing a songs or a playlist in Amarok
    '''Elements:'''
    * What to play: Artist, Album, Playlist (combobox)
    * List of the above (with checkboxes)
    * Send Amarok to the sys tray (checkbox)
    * Repeat selection automatically (checkbox)
    * Stop when Focusing ends (checkbox
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Start playing the selected tracks/playlist, minimize amarok if checked
    | Repeat if enabled.
    | Stop if enabled.
    |}
    ==== Switch to Virtual Desktop  ====
    '''Name:''' Switch to Virtual Desktop<br />
    '''Description:'''  Switches to the specified virtual Desktop
    '''Elements:'''
    * Switch to desktop (combobox)
    * On Focus (checkbox)
    * On Focus done (checkbox)
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Switches to the selected desktop, if on focus is enabled
    | None
    | Switches to the selected desktop, if on focus done is enabled
    |}
    ==== Activate Plasma Activity  ====
    '''Name:''' Activate Plasma Activity <br />
    '''Description:'''  Activate the specified Plasma Activity
    '''Elements:'''
    * Activate activity (combobox)
    * On Focus (checkbox)
    * On Focus done (checkbox)
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | Activate the selected Activity, if on focus enabled
    | None
    | Activate the selected Activity, if on focus done enabled
    |}
    ==== Action  ====
    '''Name:''' <br />
    '''Description:''' 
    '''Elements:'''
    *
    '''Actions:'''
    *
    '''Effects:'''
    {| cellspacing="3" cellpadding="2"
    |-
    ! scope="col" | Activation <br>
    ! scope="col" | Focusing <br>
    ! scope="col" | Deactivation<br>
    |-
    | None
    | None
    | None
    |}
    == Roadmap ==
    === Milestone: Proof of Concept  ===
    '''Date:''' TBA
    '''Goals:'''
    * Implement [[#List Activities]] Task
    * Implement [[#Create Activity]] Task
    * Implement [[#Edit Activity]] Task
    * Implement [[#Focus on Activity]] Task
    * Implement Basic [[#Actions]]
    **[[#Launch Applications]]
    **[[#Quit Applications]]
    **[[#Open Websites]]
    **[[#Block Websites]]
    === Milestone: More Actions ===
    '''Date:''' TBA
    '''Goals:'''
    * [[#Open Document or Folder]]
    * [[#Run Script]]
    * [[#Switch to Virtual Desktop]]
    * [[#Change IM Status]]
    * [[#Play Music (Amarok)]
    * [[#Activate Plasma Activity]]
    === Milestone: Scriptable Plugins ===
    '''Date:''' TBA
    '''Goals:'''
    * Plugin architecture for scriptable [[#Actions]]
    * [[Development/Tutorials/Introduction_to_Get_Hot_New_Stuff|GHNS]] integration

    Latest revision as of 00:53, 6 February 2010

    Focus enables you to work and study more productively by removing distractions on the desktop and Internet.

    Preface

    A few notes before getting started.

    Plasma Activities

    Disclaimer: A similar function (activity management) is being developed in Plasma. While the feature sets of Focus and Plasma Activities are not distinct, the basic rationale is.

    Focus is fundamentally designed to be a distraction eliminator. Whereas, Plasma Activities provide a means to associate a set of windows, plasmoids, documents with a particular activity.

    There is overlap in these visions, and ideally the two can come together to offer a complete activity and distraction management solution for the KDE desktop.

    Document's Purpose

    This document's function is two fold:

    • Design and Planning Document
    • Brain Dump - assist the author in organizing his thoughts regarding activity/distraction management

    Requirements Analysis

    Root Concept

    Increase productivity by eliminating distractions from the desktop.

    Basic Rationale

    The desktop and the Internet while providing new tools and methods for increasing our productivity, have introduced near an infinite number of new means to distract ourselves which results in a net decrease in productivity.

    People can focus on their task-at-hand better when potential distractions are removed. Better focus leads to more work done, and hence, greater productivity.

    Stakeholder group

    Procrastinators The procrastinator is adept at finding ways to put off his work. Focus creates an environment where finding things to do on the computer outside the defined activity is difficult to do.
    Un-Concentrators Many people have problems concentrating on demand (such as ADHD sufferers), and unintentionally waste their time on irrelevant tasks (surfing, watching videos, etc.). Focus makes it more difficult for them to accidentally waste time by removing distractions and leaving the user with little else to do but his task.

    Note: Focus is not claiming it can "cure" the focus symptoms ADHD sufferers tend to exhibit, rather it should be considered an aid to forcing concentration (if possible).

    The Overworked These people have an impossibly long todo list, they must manage their time down to the minute each day in order to complete their tasks. Focus provides an easy means of time tracking and distraction elimination to maximize productivity.

    Sample Stakeholder Profiles

    Eric - 22 - The Procrastinator

    Eric is a pretty typical college student at a major US university. By the time Eric reached college, he was already an expert at avoiding the inevitable. "Oh, I'll get to it," he says, and most of the time he does. He gets it done, but not without a constant and looming pressure that builds until, the night before. He crams, sometimes all night long, in order to finish on time. The result is seldom his best work. "Was it worth it?", he asks himself. "Not a chance." What does he say when the next project comes around? "Oh, I'll get to it."

    The majority of Eric's assignments and projects must be done on his personal laptop. Whether it be a paper for his Psychology 101 class; a one page reading response for Literature 215; or an online quiz for Linear Algebra, they all require him to use his computer.

    Olivia - 30 - The Un-Concentrator

    Olivia is the founding editor for a very successful online weblog. She has won many distinguished awards from her work both online as a blogger, and offline as an author. She is considered the foremost independent voice on the technology efforts of many web titans. Her writing has appeared in the many leading publications such as Stanford Business Study, Wireless, Computer World and Macintosh magazines. A popular and in-demand public speaker, Olivia has given many feature presentations and keynote speeches at first-tier events such as Technology 2.0 Expo. A reputable company awarded her "Most Influential Women in Technology".

    Problem Scenarios

    Eric

    Toward the beginning of his third semester Eric has to write a medium length paper for his Psychology class. The professor is requiring them to make use of several online resources. Before he can begin writing the paper, he must research his assigned prompt using the online resources. Eric begins with pure intentions. He's queued up a playlist of lyric-less music that helps him concentrate, he's turned off his cell phone, and even exited out of non-study related websites (Facebook, digg.com, etc). He works well for about 15 minutes when, suddenly, a notification pops up on his screen. It is a new email message -- Eric forgot to turn off his email client, because it runs in the background -- from a friend with a link to a funny YouTube video. He looks at the time, considers how much work he's done then tells himself, "I've done quite a bit, I could use a break." He clicks on the link and begins watching the video, he loves it and realizes one of his other friends would likely enjoy it too. He opens Facebook and shares it with the friend, and sees he has 8 unread notifications...

    Olivia

    Olivia sits down to write a new article for her weblog. Suddenly something she had been thinking of earlier pops into her head, "I wonder if anyone at Ask Metafilter knows good software for making screencasts." A few clicks later she exclaims, "Oh look, someone's had a traumatic breakup!" Several hours later, an article has yet to be written and she is feeling pretty guilty.

    Activity Design

    Activity above refers to the design phase where basic concepts and services of the system are reasoned out, with the end goal of specifying system functionality.

    Entities

    Activity

    An Activity is simply a set of Actions that are performed upon activity activation.

    An Activity will consist of the following data:

    • Name
    • Icon (optional)
    • List of Actions
    • Default focus time (minutes)

    Action

    An Action is an abstract type that encapsulates a single state to be instituted on the user's computer. Actions are distinct and will typically execute some sort of command.

    An Action will consist of the following data:

    • Name
    • Description
    • Activation Effect - state entered upon focus operation start (optional)
    • Focusing Effect - state maintained throughout focus operation (optional)
    • Deactivation Effect - state entered upon focus operation end (optional)

    Note: At least one type of effect is required.

    Tasks

    List Activities

    Type: Primary Screen

    The MainWindow of the application. Consists of a simple list of previously created Activities and some Actions.

    Elements:

    • List of created Activities
      • Name
      • Action Count
      • Icon
      • Focus Action

    Actions:

    • #Create_Activity - creates a new activity
    • #Edit_Activity - changes existing activity (requires selected activity)
    • Delete Activity - remove an activity (requires selected activity)
    • #Focus_on_Activity - start focusing on an activity (requires selected activity)

    Create Activity

    Type: Secondary Screen Activation: "Create New Activity" from #List_Activities

    The primary member of an Activity is the list of Actions, therefore creating this list of actions should be the main focus of this task.

    Elements:

    • Field for setting the name
    • Icon view
    • A list of possible actions and their descriptions
    • A list of actions currently assigned to this Activity

    Actions:

    • Setting Icon - opens a dialog to set the activity's icon
    • Assigning an Action - add an action to the assigned actions list
    • Editing assigned action's properties
    • Removing assigned actions

    Edit Activity

    Type: Secondary Screen Activation: "Edit Activity" from #List_Activities

    This task is very similar to the Create Activity task, however the elements will be populated with the selected Activity's data.

    See #Create_Activity

    Focus on Activity

    Type: Secondary Screen Activation: "Focus" from #List_Activities

    The visual representation of this task will be the selected Activity's name and Icon, as well as a countdown timer and a slider to change the Focus time.

    Elements:

    • Activity Name
    • Icon
    • Countdown Timer
    • Slider

    Actions:

    • Done Focusing - end focus operation, return to #List_Activities
    • Slide Focus length - change the length of the focus operation

    Actions

    #Actions are the most fundamental components in Focus, and have the potential to do anything. Here are some descriptions of possible actions.

    Launch Applications

    Name: Launch Applications
    Description:Launch any applications needed to complete the activity

    Elements:

    • List of applications to open
      • Focus if already running (CheckBox)
      • Send to virtual desktop #
    • After launching: Hide all others, Quit all others, Nothing (ComboBox)


    Actions:

    • Add Application
    • Remove Application

    Effects:

    Activation
    Focusing
    Deactivation
    Runs every application in the list, and performs the "After launching" option None None

    Quit Applications

    Name: Quit Applications
    Description: Quit applications if they are running.

    Elements:

    • List of applications to quit
    • Launch application when done focusing (CheckBox)
    • Block application from being started (CheckBox)

    Actions:

    • Add Application
    • Remove Application

    Effects:

    Activation
    Focusing
    Deactivation
    Quits every application in the list if it is running. Prevents applications from being started in the list that have "Block from being started" enabled Launches applications in the list that have "Launch when done" enabled

    Open Document or Folder

    Name: Open Document or Folder
    Description: Opens the supplied document or folder

    Elements:

    • File Chooser
    • Icon view
    • Current file name

    Actions:

    • Choose file/folder

    Effects:

    Activation
    Focusing
    Deactivation
    Open the document/folder None None

    Open Websites

    Name: Open Websites
    Description: Opens the supplied websites

    Elements:

    • List of websites
    • Open with <Browser list> (combobox)
    • Open in tabs (checkbox)

    Actions:

    • Add website
    • Remove website

    Effects:

    Activation
    Focusing
    Deactivation
    Opens the specified websites (in tabs if specified) None None

    Block Websites

    Name: Block Websites
    Description: Blocks the specified websites

    Elements:

    • List of domains
    • Open with <Browser list> (combobox)
    • Open in tabs (checkbox)

    Actions:

    • Add individual website
    • Add website group
    • Remove website

    Effects:

    Activation
    Focusing
    Deactivation
    Closes the specified websites if they are open. Blocks the domains from being accessed None

    Run Script

    Name: Run Script
    Description: Runs the supplied script

    Elements:

    • Text area
    • Script interpreter (combobox)
    • On Focus (checkbox)
    • On Done Focusing (checkbox)

    Effects:

    Activation
    Focusing
    Deactivation
    Runs the script if "On Focus" is checked None Runs the script if "On Done Focusing" is checked

    Change IM Status

    Name: Change IM Status
    Description: Change your status message in your IM Client

    Elements:

    • IM Application (combobox)
    • On Focus
      • Set Status (combobox)
      • Set Message (text field)
    • On Done Focusing
      • Set Status (combobox)
      • Set Message (text field)

    Effects:

    Activation
    Focusing
    Deactivation
    Set IM status and message None Set IM status and message

    Play Music (Amarok)

    Name: Play Music
    Description: Start playing a songs or a playlist in Amarok

    Elements:

    • What to play: Artist, Album, Playlist (combobox)
    • List of the above (with checkboxes)
    • Send Amarok to the sys tray (checkbox)
    • Repeat selection automatically (checkbox)
    • Stop when Focusing ends (checkbox

    Effects:

    Activation
    Focusing
    Deactivation
    Start playing the selected tracks/playlist, minimize amarok if checked Repeat if enabled. Stop if enabled.

    Switch to Virtual Desktop

    Name: Switch to Virtual Desktop
    Description: Switches to the specified virtual Desktop

    Elements:

    • Switch to desktop (combobox)
    • On Focus (checkbox)
    • On Focus done (checkbox)

    Effects:

    Activation
    Focusing
    Deactivation
    Switches to the selected desktop, if on focus is enabled None Switches to the selected desktop, if on focus done is enabled

    Activate Plasma Activity

    Name: Activate Plasma Activity
    Description: Activate the specified Plasma Activity

    Elements:

    • Activate activity (combobox)
    • On Focus (checkbox)
    • On Focus done (checkbox)

    Effects:

    Activation
    Focusing
    Deactivation
    Activate the selected Activity, if on focus enabled None Activate the selected Activity, if on focus done enabled


    Action

    Name:
    Description:

    Elements:

    Actions:

    Effects:

    Activation
    Focusing
    Deactivation
    None None None

    Roadmap

    Milestone: Proof of Concept

    Date: TBA

    Goals:

    Milestone: More Actions

    Date: TBA

    Goals:

    Milestone: Scriptable Plugins

    Date: TBA

    Goals:

    • Plugin architecture for scriptable #Actions
    • GHNS integration