- Add previous monitor geometry to smart data structure.
- When we set the crtc, also set the monitor current geometry.
- Add function to return the previous monitor geometry.
- On a mouse up, check for monitor location difference versus previous
geometry, if nothing changed then we have no 'move' to do.
- When we start a resize, record the previous geometry and raise the
monitor.
- When a monitor is moved/resized we call the position_update function
which already loops all monitors, so no need to loop them twice.
- Fix position_update function to allow some Snapping Fuzziness so
that on a move/resize any adjoining monitors (within tolerance) will
more reliably snap to each other.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
smart data's list of modes. This will get freed when the dialog closes.
Fix some formatting for 80 columns.
NB: Should fix etrunko crash ;)
Signed-off-by: Chris Michael <devilhorns@comcast.net>
outputs to zero, and free any allocated outputs before trying to apply
settings.
Also, check for valid mode (not 0) before trying to fetch mode_info.
Signed-off-by: Chris Michael <cp.michael@samsung.com>
NB: If you have more than one output, XRandR has the option/support to
set a specific monitor as the primary output. These changes allow some
distinction in the dialog between which output is primary (a faint
glow around the monitor). This is just the "display" portion of
Primary Output support ... next is a method to Change that.
Signed-off-by: Chris Michael <devilhorns@comcast.net>
If a monitor gets re-enabled and no current mode is set (which is
typically the case), then find a mode based on size.
Signed-off-by: Chris Michael <devilhorns@comcast.net>
When we call "grid_set" (as a result of the grid object moving or
resizing), we should update the monitor position text.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
Some people have reported that resizing is difficult, or that they
could not get to the max resolution of their monitor(s). Skipping the
refresh rate check during resolution finding fixes that ... With a big
fat Gotcha !!! because now after changing resolutions, the refresh
rate May not match what was previously selected....
So, as a word of CAUTION: After you set a resolution you should now
Verify your Refresh Rate before Applying, else you may be getting an
undesirable rate :/
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
geometry.
Add a geometry_get function for monitor.
Fix up cloning code to work properly with different size
parents/children.
Add a monitor_clone_parent_get function.
When applying changes, also use crtc_clone_set function.
Add smart callback for monitor_moved to tell randr widget it may need
to shuffle things around.
Use output mouse position, not canvas position.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84228
Reduce position text set calls and just do it on smart_move.
Add a changes_apply function.
Add code to record changes to a monitor.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84217
orient of each will match (NB: This is required by XRandR in order for
cloning to be successful).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84212
Add some comments.
Update position and resolution text when we unclone.
Repack the monitor into the grid when we unclone.
Set virtual thumb size correctly.
Emit disabled signal (if needed) when we unclone.
Also record x/y coordinates when doing move/resize/rotate.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84210
Tie in code for indicator toggle (enable/disable).
Add function to return a monitor's crtc id (used in randr widget).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84207
Add function for setting current geometry.
If a monitor is disabled, do not allow rotate, resize, move events.
Fix resize start/stop functions to use current geometry.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84196
comparison to old values.
Fix move, resize, rotate code to use "current" values.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84191
Fix up coordinate functions to not need doubles.
Update monitor position text when moving.
Fix up rotation code to allow rotating when mouse is outside the frame
(thank you Daniel) ;)
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84190
for changes.
Break map_apply function into frame_map_apply and thumb_map_apply for
rotating just the wallpaper.
Fix resize code to work with a rotated monitor.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84188
Add inline function to get orientation based on rotation amount.
Add function to apply an evas_map for rotation.
If we are rotating, we don't need to set livethumb size.
When we start rotating, set initial rotation amount to 0.
When rotation stops, update the map and monitor position where needed.
Apply map during rotation.
NB: This commit also adds a debugging red rectangle behind the
monitor. This will be removed when debugging is complete
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84184
Fill in current rotation on crtc set.
Update current rotation when we get a rotation event.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84183
If we are using a newer version, then we can use the new
ecore_x_randr_crtc_info_get() function which will save us a lot of X
round-trips.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84180
Add function prototype for getting a mode refresh rate.
Add Big Fat FIXME for crtc_set function.
Get the crtc current mode & refresh rate when crtc is set.
Simplify monitor_mode_find function.
Add function for getting a mode refresh rate.
Start on rotation event code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84179
Simplify mouse movement check in resize_event and add some better
comments.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84178
Change grid_set function to accept grid geometry.
Add monitor_virtual_size_set function.
Only update livethumb preview size if we are not manually resizing.
Don't need to set the resolution text during smart_resize.
Add functions to convert coordinates to/from virtual to canvas.
Add function to find the closest randr mode to a given size.
Add function to handle user manual resizing.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>
SVN revision: 84170