Commit Graph

181 Commits

Author SHA1 Message Date
Christopher Michael 395b19b28e Add basic infrastructure for resize start/stop signals.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81085
2012-12-17 09:19:41 +00:00
Christopher Michael 33bc78ad1f Fix some comments.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81084
2012-12-17 09:19:38 +00:00
Christopher Michael fa99b6d3f0 Remove debug printf.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81083
2012-12-17 09:19:36 +00:00
Christopher Michael e0ebab8576 Implement filling the refresh list.
Fix a todo for common modes.

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

SVN revision: 81082
2012-12-17 09:19:33 +00:00
Christopher Michael 5e48a93502 Add a field in the monitor structure to store the canvas.
Add refresh rate object to monitor structure
Add refresh rate field to store the current rate.
Add start of refresh_rate fill function.

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

SVN revision: 81081
2012-12-17 09:19:30 +00:00
Christopher Michael 5c76922851 Remove 'hack' to setting rotation cursor.
Implement e_pointer way of setting it.

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

SVN revision: 81080
2012-12-17 09:19:27 +00:00
Christopher Michael 13eb1a0321 Add flags in new monitor structure for enabled, moving, resizing, rotating.
Add field(s) in the smart data structure to store the layout widget reference along with layout geometry and size.
Add code to set the monitor name.
Add code to set the resolution name.
Add code to set enabled/disabled state.
Add code to handle when the layout widget gets moved so we can update the recorded geometry.
Add livethumb background preview.
Add edje signal callbacks for resize, rotate, and indicator.
On monitor deletion, remove the bg_update_handler, and free the list of modes.
Add code to handle manual user moving of monitor.

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

SVN revision: 81077
2012-12-17 09:19:19 +00:00
Christopher Michael 1fce126fe4 Start of new randr dialog & monitor widget.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81075
2012-12-17 09:19:13 +00:00
Christopher Michael 3b74f38de2 Remove old randr code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 81071
2012-12-17 09:18:59 +00:00
Carsten Haitzler d77fca2234 also all the pointer push/pops are going to be bad in that they mess
with the manager pointer... that is bad - at most mess with your own
win pointer.. push and pop that. fix... and use plus pointer for power
led button so it doesnt look like the hand ptr for dragging. :)



SVN revision: 81019
2012-12-15 13:30:13 +00:00
Carsten Haitzler 1f7c977b79 ummm randr.. why do pointer differently for rotate.. when e_poitner
already does it? fix - use e_pointer.



SVN revision: 81018
2012-12-15 13:18:10 +00:00
Mike Blumenkrantz d9792a7777 improve randr rotate snapping calculations
SVN revision: 79815
2012-11-29 06:59:29 +00:00
Christopher Michael e5a6beaa9e Also show refresh rate in the popup menu.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 79450
2012-11-19 13:19:06 +00:00
Mike Blumenkrantz e5903f4740 add support for and use eina_list_last_data_get
SVN revision: 79144
2012-11-12 10:05:09 +00:00
Christopher Michael 461c733145 E (RandR): Use a "normal" resolution (640x480) not (640x640).
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 78187
2012-10-18 12:59:44 +00:00
Carsten Haitzler c824b1a1e1 fix segv's in randr dialog. :)
SVN revision: 77943
2012-10-13 03:18:58 +00:00
Christopher Michael 44a95f2797 E (RandR): Add function to 'reset' a monitor's changes. This is used
after any user modifications have been applied so that we an reset the
'original' values to the 'currently applied' values. This helps to
keep the Apply button in sync.

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

SVN revision: 77890
2012-10-11 14:29:17 +00:00
Christopher Michael 79339fb431 E (RandR): Remove dead code lines.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77887
2012-10-11 14:29:07 +00:00
Christopher Michael 1756c3de92 E (RandR): Remove dead comment.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77886
2012-10-11 14:29:04 +00:00
Christopher Michael e0bb649b07 E (RandR): Reduce potential variable usage in geometry_get function.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77885
2012-10-11 14:29:01 +00:00
Christopher Michael 931a9f4d05 E (RandR): Remove dead code line.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77884
2012-10-11 14:28:58 +00:00
Christopher Michael 24d5040564 E (RandR): If we have a crtc when getting monitor geometry, then use
that for width & height.

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

SVN revision: 77883
2012-10-11 14:28:51 +00:00
Christopher Michael 62644089e9 E (RandR): Setup defaults before we assign output & crtc.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77882
2012-10-11 13:51:39 +00:00
Christopher Michael bc3d8d18e2 E (RandR): Fix case where a disabled monitor would show up with no
mode, or size.

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

SVN revision: 77879
2012-10-11 13:01:04 +00:00
Christopher Michael 33952ef188 E (RandR): Remove dead debug code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77876
2012-10-11 12:49:44 +00:00
Christopher Michael 71eeb7c458 E (RandR): Whitespace removal.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77871
2012-10-11 12:42:31 +00:00
Christopher Michael e005f0d4bf E (RandR): Add some internal functions to reduce duplicated code
(background set, modes_fill, etc.
Add structure to smart_data so we can store original values and
current values. This allows us to selectively apply changes.

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

SVN revision: 77870
2012-10-11 12:42:29 +00:00
Christopher Michael 23fb072172 E (RandR): Add function to retrieve monitor's output.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77867
2012-10-11 12:42:20 +00:00
Christopher Michael 01edd96d74 E (RandR): Fix issue where disabled monitors would not show up
correctly.

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

SVN revision: 77761
2012-10-10 12:59:56 +00:00
Christopher Michael 18432a087c E (RandR): Add checks for current_mode being valid.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77747
2012-10-10 10:31:17 +00:00
Christopher Michael 9fa4848a0e E (RandR): Don't segfault if no current_mode is set for a monitor.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77746
2012-10-10 10:29:09 +00:00
Christopher Michael 596d53e06a E (RandR): Limit size of livethumb to be the maximum canvas size of
the monitor object. (should reduce memory footprint for randr dialog).

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

SVN revision: 77744
2012-10-10 10:23:33 +00:00
Christopher Michael fed73888f6 E (RandR): Make sure we have hTotal and vTotal from the mode before
trying to calculate refresh rate.

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

SVN revision: 77743
2012-10-10 10:10:25 +00:00
Christopher Michael 5d376283c9 E (RandR): Ooops, remove unused variable.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77726
2012-10-10 08:46:07 +00:00
Christopher Michael 3db9434a48 E (RandR): When we search for a resolution, if we did not find one
which matched the existing refresh rate, then search again but do not
take refresh rate into account.

NB: Should fix Raster's "resolution not changing" problem.

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

SVN revision: 77724
2012-10-10 08:45:00 +00:00
Christopher Michael 136cc5035a E (RandR): Add function & prototype to return if a monitor has been
changed.

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

SVN revision: 77714
2012-10-10 07:55:11 +00:00
Christopher Michael 5347a339b3 E (RandR): Actually, let's readd the changed flag so we can skip a
monitor during Apply if it has not changed.

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

SVN revision: 77713
2012-10-10 07:55:08 +00:00
Christopher Michael 8b5d261d50 E (RandR): Remove dead code.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77712
2012-10-10 07:55:06 +00:00
Christopher Michael c646c7de26 E (RandR): Add function to return monitor's connected state.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77709
2012-10-10 07:54:57 +00:00
Christopher Michael 47977be1ca E (RandR): Use output->monitor first to get resolutions (if it exists), then
fallback to output->crtc common modes if needed.

No need to drop duplicate resolutions anymore, in fact we should list
them due to different refresh rates.

Add functions to smart monitor object for getting position,
orientation, and mode info.

When searching for a resolution within snapping fuzziness, also try to
find one which matches the current refresh rate.

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

SVN revision: 77690
2012-10-10 06:20:33 +00:00
Christopher Michael 23e171b7b7 Actually, use the real rate value from the mode. This allows similar
modes with the same rate to correctly select the proper radio.

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

SVN revision: 77642
2012-10-09 12:15:09 +00:00
Christopher Michael 51fa6fc413 Add method to list/select refresh rates.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77639
2012-10-09 11:55:40 +00:00
Christopher Michael 6cca89c83f Make on/off indicator toggling also send a changed event to the RandR
widget.

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

SVN revision: 77570
2012-10-08 09:13:30 +00:00
Christopher Michael 1405f6f949 Remove 'changed' flag for monitor smart object.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77568
2012-10-08 08:39:43 +00:00
Christopher Michael 2dcd1bc3ba Make RandR dialog function as a Config Dialog.
Signed-off-by: Christopher Michael <cp.michael@samsung.com>

SVN revision: 77565
2012-10-08 07:56:18 +00:00
Mike McCormack 5b4a058e44 e: Fix warning
e_smart_monitor.c:1036:29: warning: ‘mode’ may be used uninitialized in this function

Signed-off-by: Mike McCormack <mikem@atratus.org>

SVN revision: 77427
2012-10-04 11:47:43 +00:00
Christopher Michael 0f5cd63f5a E (RandR): Add function to return if a specific monitor is moving. Add
function to "reposition" a monitor when move is finished. Implement
basic monitor moving (still has some issues tho).



SVN revision: 77367
2012-10-03 12:03:00 +00:00
Mike McCormack ee8f7529bc e: Fix warnings
Signed-off-by: Mike McCormack <mikem@atratus.org>

SVN revision: 77304
2012-10-02 11:21:17 +00:00
Christopher Michael 6e3110b57b E (RandR): Fix corner cases for rotation not working. Fix rotation &
resize snapping. Oh, and implement a new feature: Resizing a monitor
While it is rotated in a different position ;)

NB: Next thing is actual Movement snapping, then on to saving config ;)



SVN revision: 77303
2012-10-02 11:20:12 +00:00
Christopher Michael d6e1350427 E (RandR): And get the proper mode based on rotation also so that
resize limiting functions propertly.



SVN revision: 77294
2012-10-02 08:58:16 +00:00
Christopher Michael d445520629 E (RandR): When we are finished resizing, we need to get geometry
based on the current rotation so we can find the proper mode.



SVN revision: 77292
2012-10-02 08:51:50 +00:00
Christopher Michael 3b7b05abf0 E (RandR): Populate the map using 'full' so that we account for any
existing rotation of the monitor object.



SVN revision: 77288
2012-10-02 08:47:34 +00:00
Christopher Michael 8d84c6e9cc E (RandR): Remove start_rotation from structure (not needed). Remove
some unused variables.



SVN revision: 77287
2012-10-02 08:40:14 +00:00
Christopher Michael 0ab246155d E (RandR): Use e_layout_child_geometry_get for rotate snap.
SVN revision: 77275
2012-10-01 14:22:51 +00:00
Christopher Michael 4f02f86438 E (Randr): Delete the menu on object deletion.
SVN revision: 77274
2012-10-01 14:19:52 +00:00
Christopher Michael d905aa1cc9 E (RandR): Use e_layout_child_geometry_get so that e_layout is kept in
sync.



SVN revision: 77270
2012-10-01 13:29:16 +00:00
Christopher Michael 16524abd60 E (RandR): Use e_layout_child_resize when doing rotation so that if
you try a Move after a Rotation is set, the move will actually move
the with a proper rotation now.



SVN revision: 77269
2012-10-01 13:19:43 +00:00
Christopher Michael 715048c75e E (RandR): Fix some weird rotation bug where the monitor would Jump to
a previous rotation when you started a rotate operation. Also, Fix up
a couple of functions to be more accurate (in terms of their name &
purpose).



SVN revision: 77267
2012-10-01 12:33:06 +00:00
Christopher Michael 0ae612a055 E (RandR): Don't need the "snapped" field in this structure anymore.
SVN revision: 77266
2012-10-01 11:43:41 +00:00
Christopher Michael 54984d38ef E (RandR): Reimplement "resizing other monitors" when a specific
monitor gets resized, so that we update the visual layout
appropriately. Also, do not raise "monitor_moved" callback for every
little move, rather wait until the move is finished and raise the
callback once.

NB: The "monitor_moved" callback frequency may change in the future.




SVN revision: 77265
2012-10-01 11:37:41 +00:00
Christopher Michael 12e76211d4 E (RandR): For now, do not raise "resized" signal with every movement,
just raise it once when it snaps to the closest resolution.

NB: This may change in the future but for now, let's keep the number
of callbacks down.



SVN revision: 77263
2012-10-01 10:33:32 +00:00
Christopher Michael 271a21df59 E (RandR): Add callbacks in randr widget for monitor_rotated and
monitor_moved. Add del hook for when monitor gets deleted so we can
cleanup callbacks. Fix monitor smart object to build.



SVN revision: 77261
2012-10-01 10:27:39 +00:00
Christopher Michael 7d6f95bc01 E (RandR): Raise callback signals for monitor_moved and
monitor_rotated so we can adjust positions in the randr widget.



SVN revision: 77260
2012-10-01 10:21:26 +00:00
Christopher Michael 37802a1b09 E (RandR): Fix monitor resize function to use e_layout_child_resize.
Implement basic monitor moving.

NB: This does not Snap yet, or move the other monitor(s).



SVN revision: 77256
2012-10-01 08:56:38 +00:00
Christopher Michael bc8f6e526a E (RandR): Make resolution popup menu actually set the object
resolution when selected.



SVN revision: 77247
2012-10-01 08:02:35 +00:00
Christopher Michael 640c9d67b3 E (RandR): Add 'moving' flag to smart_data. Fix some function calls to
not pass data (is not needed for those). Fix thumb_mouse_down to use
'obj' for changing pointer. Add 'move' function skeleton(s).




SVN revision: 77246
2012-10-01 07:42:47 +00:00
Christopher Michael 01db2abf19 E (RandR): Update mouse pointer when over the thumbnail to indicate
move is possible.

NB: Preparation for monitor moving.



SVN revision: 77243
2012-10-01 07:32:57 +00:00
Christopher Michael b4d2b87079 E (RandR): Cleanup some comments (nothing functional).
SVN revision: 77240
2012-10-01 07:17:43 +00:00
Christopher Michael f1ec38f0ae E (RandR): Add popup menu to display available resolutions (for TAsn).
SVN revision: 77239
2012-10-01 07:04:21 +00:00
Christopher Michael 65c331369b E (RandR): When we finish rotation, update monitor frame position.
SVN revision: 77205
2012-09-28 14:05:51 +00:00
Christopher Michael 4e9dd83e44 E (RandR): Fix corner case where rotation was done by user for a full
360 degrees and snapping was incorrect.



SVN revision: 77204
2012-09-28 12:43:43 +00:00
Christopher Michael 2b59153982 E (RandR): Don't "smart_member_add" the stand and frame...we want them
to be swallowed and be part of the base object.



SVN revision: 77202
2012-09-28 12:17:29 +00:00
Christopher Michael d5dcd71d83 E (RandR): Implement Rotation snapping. Remove Evas_Map as part of the
Smart_Data structure. Use an Evas_Map for rotation as the old man
suggested ;)

NB: This will snap to the closest Rotation (within a 45 degree
threshold), after the user has finished rotating.



SVN revision: 77201
2012-09-28 12:10:31 +00:00
Christopher Michael 3d62a1ccad E (RandR): Set resolution text on load, and also set the resolution to
the "potential" snapping resolution as the user resizes.



SVN revision: 77194
2012-09-28 09:49:24 +00:00
Christopher Michael adc5e6064c E (RandR): Allow toggle of output on/off (visually).
NB: This just implements on/off of monitor state "visually". No actual
changes applied via ecore_x_randr yet.



SVN revision: 77186
2012-09-28 09:06:08 +00:00
Christopher Michael de780ba00d E (RandR): Since we only need one map now (thanks old man), we can
remove the array, and fix the map cleanup also.



SVN revision: 77181
2012-09-28 07:53:25 +00:00
Carsten Haitzler 0a766a74ea fix up randr smart monitor code so livethumb is swallowed RIGHT so map
applies. :)



SVN revision: 77180
2012-09-28 07:44:44 +00:00
Christopher Michael e67f42cd0a E (RandR): Implement snapping.
NB: Allow free-form resizing. When the user is done resizing, the
monitor object will "snap" to the closest resolution based on the
object size.



SVN revision: 77179
2012-09-28 07:11:46 +00:00
Christopher Michael 50f569ff5e E (randr): We can actually optimize the searches a bit (given that the
list of modes is stored smallest to largest) based on if we are
shrinking or growing.



SVN revision: 77149
2012-09-27 10:19:34 +00:00
Christopher Michael 33ccce29fd E (randr): Implement some snap 'fuziness' for finding the next smaller
or larger resolution during a resize.



SVN revision: 77148
2012-09-27 10:14:58 +00:00
Christopher Michael 28eac48e9c E: Add start of new RandR dialog.
NB: IT IS NOT COMPLETE, DOES NOT APPLY SETTINGS, AND STILL NEEDS LOTS
OF WORK. Don't bother reporting bugs for it just yet, until it is
fully functional. Just adding it to svn in the hopes (hahahaha) that
others may want to jump in and help speed things along.



SVN revision: 77140
2012-09-27 09:22:05 +00:00