Commit Graph

473 Commits

Author SHA1 Message Date
Christopher Michael c889d84b87 Add hook for randr widget changed.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84215
2013-02-19 10:59:52 +00:00
Christopher Michael b0dff98153 Simplify changed enum.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84214
2013-02-19 10:59:49 +00:00
Christopher Michael 86b27baec7 Start on monitor Changes.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84213
2013-02-19 10:59:47 +00:00
Christopher Michael 994586d509 Add code to handle when cloning monitors so that the size, mode and
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
2013-02-19 10:59:44 +00:00
Christopher Michael eec7305dfc Update some comments.
Add code to create any clones on initial startup.
Add function to find a monitor object based on crtc.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84211
2013-02-19 10:59:41 +00:00
Christopher Michael 6739bcfe66 Add the clone object as a smart member for monitor.
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
2013-02-19 10:59:38 +00:00
Christopher Michael 54f611f3c5 Add function prototype for monitor clone set.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84208
2013-02-19 10:59:33 +00:00
Christopher Michael fee5a89bfa Add cloning support for monitor.
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
2013-02-19 10:59:30 +00:00
Christopher Michael 5f68828189 Simplify the monitor rotation code and make sure new positions are
within grid virtual space.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84203
2013-02-19 10:59:20 +00:00
Christopher Michael 132719c2b6 Correctly calculate disabled monitor position(s).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84202
2013-02-19 10:59:17 +00:00
Christopher Michael 7df8dddb23 Remove useless mod_dir variable (and associated code).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84201
2013-02-19 10:59:15 +00:00
Christopher Michael 3f283a62a2 Remove useless defines and variables.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84200
2013-02-19 10:59:11 +00:00
Christopher Michael a9cd2aaa02 Remove unused variable and some dead printfs.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84199
2013-02-19 10:59:08 +00:00
Christopher Michael a9f1783e5f When calculating virtual size, also account for 'possible' outputs.
When we are creating the monitors, account for 'possible' outputs also.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84198
2013-02-19 10:59:06 +00:00
Christopher Michael 1d10a382b6 Actually, allow move/resize/rotate for disabled monitors so things can
be adjusted (NB: Will not actually mattery on Apply anyway).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84197
2013-02-19 10:59:03 +00:00
Christopher Michael c5254ce545 Set current size and position text when we set current values.
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
2013-02-19 10:59:00 +00:00
Christopher Michael c0d5cbad61 Add function prototype for setting current geometry.
Rename function prototype for grid virtual size set.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84195
2013-02-19 10:58:57 +00:00
Christopher Michael f48772482c Fix move_stop to use current geometry.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84194
2013-02-19 10:58:54 +00:00
Christopher Michael 2819733656 Handle setting monitor to enabled/disabled based on crtc mode.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84193
2013-02-19 10:58:51 +00:00
Christopher Michael 87ef25f21b When calculating virtual size, we only need to fetch
"screen_current_size_get" if both vw & vh are 0.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84192
2013-02-19 10:58:48 +00:00
Christopher Michael 2acdd3f3e2 Add 'current' field values so we can use these durring apply for
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
2013-02-19 10:58:45 +00:00
Christopher Michael aee6393591 Add code to handle manual monitor movement.
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
2013-02-19 10:58:42 +00:00
Christopher Michael b33401f645 Add in refresh_rate code for filling refresh rate list and listening
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
2013-02-19 10:58:36 +00:00
Christopher Michael 39bc25be03 Use ecore_x_randr_crtc_info_free function to free returned crtc_info.
When comparing refresh rates for mode searches, cast to int.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84187
2013-02-19 10:58:33 +00:00
Christopher Michael 2e0f4e7a27 Reduce variable usage
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84186
2013-02-19 10:58:31 +00:00
Christopher Michael e02c9fc7aa Fix comment.
Remove orientation comparison.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84185
2013-02-19 10:58:28 +00:00
Christopher Michael af59660d3f Add ROTATE_FUZZ amount.
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
2013-02-19 10:58:25 +00:00
Christopher Michael c2b2be5be7 Add current rotation to smart_data structure.
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
2013-02-19 10:58:22 +00:00
Christopher Michael 35855135a1 Add inline function to return the degree of rotation based on
orientation.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84182
2013-02-19 10:58:19 +00:00
Christopher Michael 87daec404d Remove Big Fat Fixme warning as it's fixed now :)
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84181
2013-02-19 10:58:16 +00:00
Christopher Michael ed84b96078 Add code to check EFL version.
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
2013-02-19 10:58:13 +00:00
Christopher Michael 93ad1faf50 Add current mode and refresh rate to crtc field.
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
2013-02-19 10:58:10 +00:00
Christopher Michael 1ec01f9d65 Add function to get the amount of rotation from a mouse event.
Simplify mouse movement check in resize_event and add some better
comments.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84178
2013-02-19 10:58:06 +00:00
Christopher Michael 3526741c82 Turn 'crtc' field into a structure (mainly for making code easier to
read/maintain).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84177
2013-02-19 10:58:04 +00:00
Christopher Michael 5b47415f14 Add code to check if rotations for a given crtc are possible, and
disable the rotation in edje if not.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84176
2013-02-19 10:58:01 +00:00
Christopher Michael 9edea3c781 Only get edid (an expensive process) if getting the output name
previously has failed.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84175
2013-02-19 10:57:57 +00:00
Christopher Michael 7abc8a7aca Add flag for rotating to structure.
Add & delete callbacks for rotation start & stop.
Add functions for rotate start & stop.
Add start of rotate event code.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84174
2013-02-19 10:57:55 +00:00
Christopher Michael 2edc7cfeaf Add some comments.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84173
2013-02-19 10:57:52 +00:00
Christopher Michael 480170d4ce Remove all code which tried to maintain aspect ratio of the frame
(resize snapping to mode dimensions will handle this anyway).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84172
2013-02-19 10:57:50 +00:00
Christopher Michael 1f63b0f062 Remove dead comments about layout object.
Add grid object to structure.
Add callbacks to handle when grid gets moved or resized so we can
update the monitor's copy of the grid geometry.
Update calls to monitor_grid_set to pass in geometry now.
Add monitor_virtual_size_set call.
Add code to deal with grid getting moved & resized.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84171
2013-02-19 10:57:47 +00:00
Christopher Michael bda3e4bcdc Change structure to store grid geometry.
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
2013-02-19 10:57:44 +00:00
Christopher Michael 903787a594 Change monitor_grid_set function to also accept the grid geometry
(used for virtual-->canvas coordinate functions).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84169
2013-02-19 10:57:41 +00:00
Christopher Michael fd0889b31a Add missing LOGFN's where needed.
Add mouse_move callback on frame.
Delete mouse_move callback when we delete the frame.
Add code in frame moouse_move function to call appropriate event based
on current action.
Start of actual resize event code.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84168
2013-02-19 10:57:38 +00:00
Christopher Michael f4ae6fac22 Add flag to structure for resizing.
Add start of resize coordinates to structure.
If we are manually resizing the object, update the text.
When resize starts, record the current mouse position and size.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84167
2013-02-19 10:57:35 +00:00
Christopher Michael fd11b69ad5 Add edje callbacks to frame for resize_start & resize_stop.
Add code to delete edje callbacks from frame when object is deleted.
Add start of code for resize_start & resize_stop frame events.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84166
2013-02-19 10:57:32 +00:00
Christopher Michael 22f25b4c1d Fix variable type of "name" to be char (not const char).
Add code to set mouse pointer on frame events (resize, rotate, etc).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84165
2013-02-19 10:57:29 +00:00
Christopher Michael 825ccb9256 Cleanup some memory returned from ecore_x_randr when we are done with
it.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84164
2013-02-19 10:57:26 +00:00
Christopher Michael b5f6ae6d0d Fix comment.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84163
2013-02-19 10:57:24 +00:00
Christopher Michael f5fc65f945 Add function to push & pop e_pointers.
Add code to set pointer indication when mouse moves inside the
thumbnail.
Add code to set pointer indication when mouse is down on the thumbnail.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84162
2013-02-19 10:57:21 +00:00
Christopher Michael 9354ef67ae Set aspect width & height on the same line
(pedantic commit just to remove 2 extra lines).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84161
2013-02-19 10:57:18 +00:00
Christopher Michael 353df08f07 Also pass in crtc geometry to the monitor when we set crtc (because we
have previously fetched this geometry anyway).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84160
2013-02-19 10:57:14 +00:00
Christopher Michael 457c302e92 Modifiy crtc_set function to also take the current crtc coordinates
(this saves us a round-trip function call to ecore_x_randr as we
already have the coordinates from the randr widget).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84159
2013-02-19 10:57:12 +00:00
Christopher Michael 54a0fa16ae When we set the crtc of the monitor, we can update position and
resolution text.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84158
2013-02-19 10:57:09 +00:00
Christopher Michael 58b68ab98b Add private functions for setting monitor position and resolution text.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84157
2013-02-19 10:57:06 +00:00
Christopher Michael 597d95bdb6 Add code to set the monitor name.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84156
2013-02-19 10:57:04 +00:00
Christopher Michael ad6d6914bc Pack the monitor into the grid first, then do setup.
Add function call to setup initial background preview.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84155
2013-02-19 10:57:01 +00:00
Christopher Michael 8d47671e6e Add code to handle setting of background preview on initial show.
Add code to handle setting of background preview when user changes the
bg.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84153
2013-02-19 10:56:54 +00:00
Christopher Michael 6ca0528ef0 Remove function call to monitor_virtual_size_set.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84152
2013-02-19 10:56:51 +00:00
Christopher Michael 055ccc581e Remove virtual_size_set code (turns out, it's not needed).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84151
2013-02-19 10:56:48 +00:00
Christopher Michael 70380b6125 Add base & grid object to randr widget.
Use ecore_x_randr functions to get crtcs & outputs (Fixes problem of
running Screen Setup dialog in Xephyr)
Add code for min_size_get function.
Remove code which used e_layout widget.
Add code to create new randr widget based on evas_object_grid.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84150
2013-02-19 10:56:45 +00:00
Christopher Michael efbdf8c9d0 Add function prototype for min_size_get.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84149
2013-02-19 10:56:43 +00:00
Christopher Michael c476e30c5e Add function prototypes.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84148
2013-02-19 10:56:40 +00:00
Christopher Michael 85ff779ed4 Add min & max mode sizes to monitor structure.
Add Frame & Stand to monitor structure.
Add code to create/show/move/resize/hide the frame & stand.
Change the code to use ecore_x_randr functions so that when running in
Xephyr we get monitors that make sense.
Change output_set and crtc_set functions to take the Ecore_X_Randr
types.
Set an aspect ratio on the frame (so it maintains during resize)
Add function for telling monitor what the virtual size is.
Add function for telling monitor what grid object it belongs to.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84147
2013-02-19 10:56:38 +00:00
Christopher Michael d994ca499d Fix _basic_create prototype & function to use the dialog now.
Call function of randr widget to get the min required size, and set
the list widget to that size.
Tell the dialog to show centered on the screen.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84146
2013-02-19 10:56:35 +00:00
Christopher Michael a2ce1d77b9 Cfdata is unused in the apply function.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84143
2013-02-19 10:56:27 +00:00
Christopher Michael c508e28128 Add LOGFN to functions.
Append newly created monitor(s) to our list.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84142
2013-02-19 10:56:24 +00:00
Christopher Michael 9f6b69c053 Add test rectangle to monitor
Add LOGFN to functions.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84141
2013-02-19 10:56:20 +00:00
Christopher Michael 927cf450d4 Add LOGFN macro to header.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84140
2013-02-19 10:56:17 +00:00
Christopher Michael db406167dc Add prototype and code for virtual_size_calc function.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84139
2013-02-19 10:56:14 +00:00
Christopher Michael 28a1a7690f Tell randr widget to calculate virtual size.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84138
2013-02-19 10:56:11 +00:00
Christopher Michael 8fecfa5054 Use proper width/height variables from crtc_config.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84136
2013-02-19 10:56:05 +00:00
Christopher Michael 87a3d1da9b Move and resize the monitor after packing to it's proper position.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84135
2013-02-19 10:56:02 +00:00
Christopher Michael 6747badc99 Pack the created monitor into the layout widget.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84134
2013-02-19 10:55:59 +00:00
Christopher Michael 31b98fecbf Add a list of modes to smart_data structure.
When we set the output, fill in the modes list
Add code to sort modes list.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84133
2013-02-19 10:55:56 +00:00
Christopher Michael 148cdc90d8 Add geometry to smart_data struct.
Check geometry changes in smart_move and smart_resize.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84132
2013-02-19 10:55:54 +00:00
Christopher Michael 69b12661d5 Start code for monitors create
- Create monitor smart object
 - Set crtc and output config for monitor.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84131
2013-02-19 10:55:50 +00:00
Christopher Michael 7246631647 Add crtc and output configs to smart_data structure.
Add functions to set crtc and output configs.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84130
2013-02-19 10:55:45 +00:00
Christopher Michael 82a080813c Add function prototypes for setting monitor crtc and output config.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84129
2013-02-19 10:55:42 +00:00
Christopher Michael 6b1168b933 Add list of monitors to smart_data structure.
Add code to delete the monitors when randr gets deleted.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84128
2013-02-19 10:55:39 +00:00
Christopher Michael 468998fca6 Add initial start of code to create monitors.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84127
2013-02-19 10:55:36 +00:00
Christopher Michael 6cf9624275 Add header function for monitors_create.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84126
2013-02-19 10:55:33 +00:00
Christopher Michael 5216fb097a Add initial monitor code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84125
2013-02-19 10:55:30 +00:00
Christopher Michael 8a53055d3a Tell randr widget to create monitors.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84124
2013-02-19 10:55:28 +00:00
Christopher Michael 6521caab40 Add header function for creating new monitors.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84123
2013-02-19 10:55:25 +00:00
Christopher Michael 3fd758facc Cleanup compile warnings and include randr object header.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84121
2013-02-19 10:55:20 +00:00
Christopher Michael 6b96e9c961 Add code to handle the layout object.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84119
2013-02-19 10:55:14 +00:00
Christopher Michael daa2b49ab9 Create the randr widget in _basic_create.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84118
2013-02-19 10:55:09 +00:00
Christopher Michael 4dfda15a8d Initial rewrite of the monitor object.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84117
2013-02-19 10:55:07 +00:00
Christopher Michael fbb5baea84 Initial rewrite of randr widget.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84116
2013-02-19 10:55:04 +00:00
Christopher Michael d874b1ed9c Remove old randr code from dialog creation.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84115
2013-02-19 10:55:01 +00:00
Christopher Michael 0410b43549 Remove old randr widget code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 84113
2013-02-19 10:54:55 +00:00
Christopher Michael f117b3de1d Add function for setting monitor position text.
Fix some comments.
When the monitor object gets moved, update the position text.

NB: Hopefully this helps a little for people having monitor "black
out" issues after moving things around. At least now you can See what
the position will be.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82887
2013-01-16 13:33:27 +00:00
Christopher Michael 37908f9b73 When searching for the next resolution to snap to, do Not skip
refresh_rate checks (allows resize events which keep the current rate).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82884
2013-01-16 11:56:44 +00:00
Christopher Michael 01eb2c4cc0 Various fixes for some resizing issues as reported by Thanatermesis.
- Don't bother trapping mouse movements outside of the monitor.
 - Simplier test for resizing above/below max/min resolution.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82883
2013-01-16 11:56:36 +00:00
Christopher Michael 39e9f03048 No need to convert frame geometry to virtual...we can just compare
actual canvas geometry when doing collision detection.

Port the previous "JackDanielz" fix (using frame geometry vs using
object geometry) to the actual move function also.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82868
2013-01-16 09:01:30 +00:00
Christopher Michael 4a49bf8b05 When moving monitors around, use the geometry of the monitor frame to
determine collision/intersection for cloning reasons (needed due to
monitor object itself having some padding around the frame which was
causing erroneous intersection calculations).

NB: Calling this one the JackDanielZ fix ;)

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82867
2013-01-16 08:41:48 +00:00
Christopher Michael 44b62de0b6 Add monitor function to return geometry of the actual frame object.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82866
2013-01-16 08:41:34 +00:00
Christopher Michael f518182cf8 Use output name first instead of monitor name. Fall back to monitor
name if output has no name.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82863
2013-01-16 08:07:00 +00:00
Christopher Michael 272907949e Pass the new orientation to map remove so we can resize the frame
properly.
When we start a rotate event, record the starting rotation.
When we stop rotating, mung in the starting rotation value.
Just fetch geometry once when we stop rotating.
Update the current orientation After we are done removing the map (on
rotate stop).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82862
2013-01-16 08:06:57 +00:00
Christopher Michael 1cca680d13 When getting the amount of rotation, use the frame geometry (as that
is where the rotation event actually happens), instead of the geometry
of the whole monitor object.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82861
2013-01-16 08:06:54 +00:00
Christopher Michael 2c034a27b9 Add function to remove an applied map (for making bg and text look
proper after rotation).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82860
2013-01-16 08:06:40 +00:00
Mike Blumenkrantz 839a2f3f15 move all conf2 options for opening config dialogs into the owner module
SVN revision: 82727
2013-01-13 13:28:56 +00:00
Christopher Michael 11ab438c80 When we create monitors and are checking for clones, just use x/y
position, not size for comparison.

When we create monitors, assign the proper crtc to the monitor.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82330
2013-01-07 07:39:57 +00:00
Christopher Michael 721d4385a9 Some fixes for Intel cards:
Do not set enabled until after a current mode is set.
Update original size after we set current mode.
Add an original cloned value we can track.
Add code to apply just cloning changes.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82329
2013-01-07 07:39:54 +00:00
Christopher Michael 4c76f30a57 Fix compile: Use the proper smart data variable.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82328
2013-01-07 07:39:52 +00:00
Christopher Michael 4f572243c1 When we clone/un-clone, also set a Changed on the position so that
Apply will handle new geometry for the monitor.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82327
2013-01-07 07:39:49 +00:00
Christopher Michael 4fadc7bf7f When we initially create the monitors, also set the original cloned
value.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82326
2013-01-07 07:39:47 +00:00
Christopher Michael 12a420c9ab Add support for marking dialog changes if the user unclones a monitor
and does nothing else.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82325
2013-01-07 07:39:45 +00:00
Christopher Michael 98b9bdaf79 Add prototype for cloned_set function.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82324
2013-01-07 07:39:42 +00:00
Christopher Michael 3bbf2da0b8 Add a Changed_Clone to enum.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 82323
2013-01-07 07:39:39 +00:00
Mike Blumenkrantz 580b884d41 fix uninitialized var in randr config dialog which potentially broke initial monitor layout
SVN revision: 81593
2012-12-21 21:35:17 +00:00
Maxime Villard 4a52c46268 From: Maxime Villard <rustyBSD@gmx.fr>
Subject: [E-devel] [e][PATCH] Optimizations v2
Date: Fri, 21 Dec 2012 22:17:32 +0100

Hi,
same patch as before: removed useless nullchecks and
switched some free()'s to E_FREE().



SVN revision: 81592
2012-12-21 21:31:13 +00:00
Mike Blumenkrantz 27896bfae3 stringshare leak--
SVN revision: 81531
2012-12-21 10:15:41 +00:00
Christopher Michael 69cb1822e1 Fix monitor apply settings.
NB: According to a conversation with T_UNIX, we actually do use the
ecore_x randr functions to apply the config.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81377
2012-12-19 15:39:51 +00:00
Christopher Michael 829558db50 Fix randr widget applying settings as per discussion with T_UNIX.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81376
2012-12-19 15:39:47 +00:00
Christopher Michael be20b9d15d Add some debugging for disabled monitors.
If we are trying to add a disabled monitor, check for possible outputs.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81368
2012-12-19 14:21:50 +00:00
Christopher Michael 75981aa321 Set struct field for Enabled/Disabled Before we try to find possible
crtc.
If the monitor's crtc does not have a current_mode (because it was
previously disabled), then grab the last available mode (typically the
largest) and set the crtc current_mode to that.
Add some debugging for Enable/Disable.
Remove code which was trying to use ecore_x calls to re-enable a
monitor.
Use the randr function for trying to enable an output (if previously
disabled).

NB: Enable/Disable Does work, HOWEVER in my testing I have found that
when you re-enable a monitor, you will need to completely back out of
X and restart it in order for the Monitor to show output again. Unsure
if this is an X bug or something in e_randr or someother weirdness....

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81367
2012-12-19 14:21:47 +00:00
Christopher Michael 7829e00b45 Comment out some debugging printfs.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81351
2012-12-19 11:04:35 +00:00
Christopher Michael 1d174b11ba Add header for crtc_set function.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81350
2012-12-19 11:04:32 +00:00
Christopher Michael 80539b0c9a Fix smart monitor object to handle disabled monitors more gracefully.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81349
2012-12-19 11:04:28 +00:00
Stefan Schmidt b2663a26fa e/conf_randr: Move radio creation into the block that needs it.
Discussed with devilhorns.

SVN revision: 81339
2012-12-19 09:47:40 +00:00
Christopher Michael 16c88a39bd Update UNUSED for basic apply function as we do not need the config
dialog here anymore.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81266
2012-12-18 15:27:59 +00:00
Christopher Michael 394885c2e6 And don't pass the root window to the apply function anymore
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81265
2012-12-18 15:21:00 +00:00
Christopher Michael 58ef1a0190 Remove root window as function parameter for apply function (not used
anymore).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81263
2012-12-18 15:16:49 +00:00
Christopher Michael 1d6ea657a9 Remove root window as a function paramater (not used anymore).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81262
2012-12-18 15:16:44 +00:00
Christopher Michael 6c3a3d14d3 Check if a monitor supports rotation (via different orientations), and
if not then disable the rotate ability on the frame.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81261
2012-12-18 15:16:39 +00:00
Christopher Michael 4709380a02 If we change size on the monitor, be sure to set the current mode.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81256
2012-12-18 14:44:08 +00:00
Christopher Michael 817207bad1 Be more proactive when we create monitors:
If during the process of monitor creation, we reach one that is
  cloned into a parent monitor, but the parent monitor has not been
  created yet, then add it to a deferred list so we can create it (and
  swallow it) into the parent monitor.

Make use of the existing e randr serialization to save/restore settings.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81255
2012-12-18 14:16:12 +00:00
Christopher Michael f40b20b7a9 Be sure to set output policy if we are cloned or not.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81254
2012-12-18 14:15:48 +00:00
Christopher Michael 9e2fb834b9 When telling the monitor to apply changes we should check to see what
actually changed and update things accordingly.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81236
2012-12-18 11:13:49 +00:00
Christopher Michael 649446a72e Add safety check for valid zone. If we do not have one, return current
one.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81227
2012-12-18 09:35:19 +00:00
Cedric BAIL db610957a7 e: seriously, WTF with all this non resizable config setting window, it's insane !
SVN revision: 81199
2012-12-18 03:25:45 +00:00
Christopher Michael 373bd3ce00 Add function for a monitor to apply it's changes.
NB: This is needed because apparently the e_randr serialization code
works DIRECTLY on the E_Randr_Info structures (E_Randr_Output_Info,
etc, etc). Sooo, in order to save and restore a randr config, we need
for the monitor to update those structures First before we tell
e_randr to save things else it will save with incorrect values.

NB: This is the START of save/restore configuration work.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81161
2012-12-17 15:46:55 +00:00
Christopher Michael 66d8162518 Add function prototype for a monitor to apply it's changes.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81160
2012-12-17 15:46:52 +00:00
Carsten Haitzler 92380c140d nth from eina list returns data. .not list node...
SVN revision: 81153
2012-12-17 15:31:36 +00:00
Christopher Michael 30484c09cf Fix TODO note for recent Enable/Disable commit.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81149
2012-12-17 14:29:02 +00:00
Christopher Michael 507e6a25fb Fetch all current monitor values once (rather than a fetch for each
change).
Add code to apply Disabled/Enabled state.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81140
2012-12-17 13:42:15 +00:00
Christopher Michael 3ba73d30d8 Add function to return current enabled state.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81139
2012-12-17 13:42:12 +00:00
Christopher Michael cce210cd53 Make randr dialog not resizable.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81138
2012-12-17 13:42:08 +00:00
Christopher Michael 230a80bc2a Add function prototype for returning enabled state.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81137
2012-12-17 13:42:04 +00:00
Christopher Michael 059d1139fe Provide method to compute a proper layout size (needed for case of
blank config).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81135
2012-12-17 12:55:35 +00:00
Christopher Michael 3f84da5d34 If we unclone (from a blank config) than we need to update the current
x/y of the monitor.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81134
2012-12-17 12:55:32 +00:00
Christopher Michael 5016734bc9 Remove comment/todo that does not belong here.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81133
2012-12-17 12:55:29 +00:00
Christopher Michael e49d7dcad2 Remove blank line.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81132
2012-12-17 12:55:27 +00:00
Christopher Michael 54267c8ad8 Remove dead comment.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81131
2012-12-17 12:55:22 +00:00
Christopher Michael 3c270359ce Delete any cloned monitors when we delete the main one.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81124
2012-12-17 11:35:16 +00:00
Christopher Michael f224102a0b Fix "mini clone" movement when a monitor moves.
Fix "mini clone" movement when a monitor resizes.

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81122
2012-12-17 11:30:41 +00:00
Christopher Michael 91ddccec87 Fix monitor clone position for the case of "initial blank setup"
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81114
2012-12-17 10:22:01 +00:00
Christopher Michael b55027332b Remove some erroneous printfs.
When we are uncloning, don't use crtc geometry but rather use the
monitors visual position.
When we show, we need to re-apply any existing rotation (in case
monitor is uncloned).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81113
2012-12-17 10:21:57 +00:00
Christopher Michael 9ec140a681 Add code to start working with no previous config and nothing
specified in xorg (ie: blank setup). We will detect (manually) what is
cloned and setup accordingly. (NB: Still needs work).
Add function to find a monitor based on crtc id (used for blank setup
clones).

Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81111
2012-12-17 09:21:08 +00:00