A non-transitory computer readable storage medium storing one or more programs configured for execution by a server system having one or more processors and memory, the one or more programs comprising instructions for:
- receiving a search query from a user device during a time window;
- accessing a repository of streaming media related information to determine one or more streaming media programs available to the user device during the time window;
- identifying a first set of categories associated with the received search query;
- identifying a respective program-specific set of categories associated with each of the respective available streaming media programs;
- comparing the first set of categories to each respective program-specific set of categories to infer that a first streaming media program of the available streaming media programs is being displayed in proximity to the user device;
- modifying the search query based on adding search terms from the streaming media related information corresponding to the first streaming media program;
- identifying search results corresponding to the modified search query;
- and
- returning the search results to the user device.