V4L2: Fix 'show_cursor' setting forcing default
window capture:  Fix defaults overriding values
Fix function typo (obs_data_get_autoselect_bool)
Add .desktop file for obs on linux
Install desktop file and application icon on linux
Update information provided by pulseaudio plugin to pulse.

The plugin now uses the generic name "OBS" to identify itself
to pulseaudio.

Until now the pulseaudio plugin used a placeholder icon for the
mixer to display. Now that we have a real icon installed to the
system we can use that instead.
Merge pull request #224 from fryshorts/linux-shortcut

Add menu entry for obs on linux
Merge pull request #226 from fryshorts/pulse-input

Update information provided by pulseaudio plugin to pulse.
Don't use "type" of source, use "id" of source

The naming here is a poor choice, a source type determines if a source
is either a regular input, a filter, or a transition.  The ID is the
actual unique identifier of a source.
Remove duplicate 'strref_isempty'
(API Change) Rename obs_sceneitem_info structure

Change obs_sceneitem_info structure to obs_transform_info - this
structure will not just be used with scene items in the future.
(API Change) Rename obs_source_get(/release)frame

Renamed functions:
- obs_source_getframe (rename to obs_source_get_frame)
- obs_source_releaseframe (rename to obs_source_release_frame)

For the sake of consistency and helping to get rid of the "squishy
function name" issue
(API Change) Rename 'source_frame' + related

For the sake of naming consistency with the rest of obs.h, prefix this
structure and associated functions with obs_.

Renamed structures:
- struct source_frame (now obs_source_frame)

Renamed functions:
- source_frame_init (now obs_source_frame_init)
- source_frame_free (now obs_source_frame_free)
- source_frame_create (now obs_source_frame_create)
- source_frame_destroy (now obs_source_frame_destroy)

Affected functions:
- obs_source_output_video
- obs_source_get_frame
- obs_source_release_frame
(API Change) Rename order_movement

Prefix with obs_ for the sake of consistency

Renamed enums:
- order_movement (now obs_order_movement)

Affected functions:
- obs_source_filter_setorder
- obs_sceneitem_setorder
(API Change) Rename allow_direct_render enum

For the sake of consistency, changed allow_direct_render to
obs_allow_direct_render
(API Change) Rename filtered_audio structure

Reanmed filtered_audio to obs_audio_data, to improve the naming and
prefix with obs_ for the sake with consistency with the rest of the API
(API Change) Rename source_audio structure

Rename source_audio to obs_source_audio to make it more consistent with
the rest of the API
(API Change) Split obs_source_gettype

Changed:
- obs_source_gettype
To:
- enum obs_source_type obs_source_get_type(obs_source_t source);
- const char *obs_source_get_id(obs_source_t source);

This function was inconsistent for a number of reasons.  First, it
returns both the ID and the type of source (input/transition/filter),
which is inconsistent with the name of "get type".  Secondly, the
'squishy' naming convention which has just turned out to be bad
practice and causes inconsistencies.  So it's now replaced with two
functions that just return the type and the ID.
(API Change) Un-squish obs_sceneitem_*

Renamed:                         To:
-----------------------------------------------------------
obs_sceneitem_getscene           obs_sceneitem_get_scene
obs_sceneitem_getsource          obs_sceneitem_get_source
obs_sceneitem_setpos             obs_sceneitem_set_pos
obs_sceneitem_setrot             obs_sceneitem_set_rot
obs_sceneitem_setscale           obs_sceneitem_set_scale
obs_sceneitem_setalignment       obs_sceneitem_set_alignment
obs_sceneitem_setorder           obs_sceneitem_set_order
obs_sceneitem_getpos             obs_sceneitem_get_pos
obs_sceneitem_getrot             obs_sceneitem_get_rot
obs_sceneitem_getscale           obs_sceneitem_get_scale
obs_sceneitem_getalignment       obs_sceneitem_get_alignment
(API Change) Remove obs_graphics()

API Removed:
- graphics_t obs_graphics();
Replaced With:
- void obs_enter_graphics();
- void obs_leave_graphics();

Description:
  obs_graphics() was somewhat of a pointless function.  The only time
that it was ever necessary was to pass it as a parameter to
gs_entercontext() followed by a subsequent gs_leavecontext() call after
that.  So, I felt that it made a bit more sense just to implement
obs_enter_graphics() and obs_leave_graphics() functions to do the exact
same thing without having to repeat that code.  There's really no need
to ever "hold" the graphics pointer, though I suppose that could change
in the future so having a similar function come back isn't out of the
question.

Still, this at least reduces the amount of unnecessary repeated code for
the time being.