Commit Graph

154 Commits

Author SHA1 Message Date
Carsten Haitzler 4a69f273fa shot - typo in tool shadow. fix to have right mirror flip 2020-03-07 18:34:04 +00:00
Carsten Haitzler 628736a4a3 shot - add {} around subobj to fix warning 2020-01-15 19:06:24 +01:00
Carsten Haitzler dda50e8d87 shot + efm - add efm action to show dir so if same dir is open it shows
and if there is not the same dir upa  new win is created and shown.
... shot uses this to avoid shot dir duplication.
2020-01-09 00:26:45 +00:00
Carsten Haitzler 54afb369f8 shot - wheel zoom - zoom around mouse cursor coords with ctrl+wheel zoom 2020-01-06 11:08:36 +00:00
Carsten Haitzler 14e7a5c362 shot - fix padded shots out of comp bounds...
clip to comp area so we dont end up with blank areas.
2020-01-05 17:25:15 +00:00
Carsten Haitzler 7d960b12f8 shot - auto-choose a zoom that nicely fits the shot in up to 1 to 1 2020-01-05 17:14:43 +00:00
Carsten Haitzler 812ca88938 shot - make crop handles biger and easier to see in corner cases 2020-01-05 14:35:59 +00:00
Carsten Haitzler d23615046b shot - fix crop out of bounds issue 2020-01-05 12:56:36 +00:00
Carsten Haitzler 0da185b911 shot - remove debug printf. 2020-01-04 16:16:19 +00:00
Carsten Haitzler 32754cff9f shot - zoom - go back to 1/4 zoom by default
for fullscreen shots this makes so much more sense.
2020-01-04 16:15:13 +00:00
Carsten Haitzler f32ac2d1a9 shot always save shots to your users new shots dir and show dir on save
when you select save from shot now it always saves to your user shots
dir (~/.e/e/shots) and then opens up this fir for you to browse/see/dnd
out of etc. etc. for easier quick and fast access to what you just
saved. also you keep a history of your shots (you do get to clean it up
yourself when you save... no auto-cleaning - i decided not to bother
as realistically it's just more config to swizzle and mystery deletion
of files that some user has to figure out how and why it happens and
where to go change the config - just delete the ones you don't want
anymore - simple and easy.)
2020-01-04 16:10:48 +00:00
Carsten Haitzler aaea7865ef shot - remove unused code 2020-01-04 13:48:01 +00:00
Carsten Haitzler 1a7565b970 shot - fix return type of timer 2020-01-04 13:39:05 +00:00
Carsten Haitzler 40fb1bce22 shot - add delay button in shot dialog to try again with a delay
also adds an action you can bind with an explicitly provided delay
time for customization in bindings if you always use the same timeout.

@feature
2020-01-03 22:03:57 +00:00
Carsten Haitzler b34728858c shot - add 4 more draw tools - outline box and circle foot and silly walk 2020-01-03 20:17:35 +00:00
Carsten Haitzler 90fb244615 shot - make zoom reset actually go to 1:1 again 2020-01-03 18:38:43 +00:00
Carsten Haitzler 16a065fe2b shot - edit - add more zoom slots and center zooming 2020-01-03 18:33:44 +00:00
Carsten Haitzler 7da3ba0bc5 shot tmp.
shot - add shot editor with arbitrary cropping and drawing tools

We don't need padded vs other shot of window now as u can remove the
padding with a single click in the editor now, so remove that (comment
it out).

The editor allows you to click on each screen, on a window (and click
again on a window to remove the padding area for the crop so its
snugly around the window).

You can zoom in and out and scroll around.

You can add lines with an arrow, double-arrowed lines, plain lines
with no arrows, some clipart (e-logo, mallocs, pointing finger... just
having some fun) and some fun "text boxes" like though bubbles,
speecvh bubbles, just plain text with a darking outline, a plain
entry-styled text box and you can select the colors for the text and
background area as well.

It's inksape-like in that the items you draw are objects that can then
be modified or deleted. modifying them raises them and places some
controls on/over/around the object.

And you can still save and share the results.

Fun times!

@feat
2020-01-03 16:43:13 +00:00
Carsten Haitzler 7ba0d0f996 shot - reduce code a bit 2020-01-02 13:09:59 +00:00
Carsten Haitzler 7227aaeb81 shot - move save of shot and upload to slave binary tool and tidy code
this gets rid of that annoying freeze in e due to the sync save and
possibly sync dns lookups in curl. slave binary handles it now and
talks back to e via stdout.

this also splits up the code into more files for specific purposes to
make it easier to add features to and maintain. given on the todo is
the ability to explicitly select a crop region and do some basic
"drawing" too, this sets the stage for that and it made it easier to
do the above upload/save tool.
2019-12-19 23:21:17 +00:00
Carsten Haitzler b4cfada8e8 module and config - remove pointless config vars that have no use
we dont need to delay module loading anymore so remove allof this -
priority too shouldn't be necessary as well and was just a workaround.
this remvoes all of that removing some e module api's and module
struct members as well as some global config fields. it also ensures
all config files are up to date as well.
2019-09-10 17:58:30 +01:00
Ross Vandegrift 629f7d41c8 clean up .desktop files and misc typos
Summary:
Drop deprecated Encoding key from desktop files

The Encoding key is no longer required, all desktop files are assumed to
be UTF-8 encoded.  See details at:
https://standards.freedesktop.org/desktop-entry-spec/1.1/apc.html

Fix various typos and misspellings

lintian, Debian's package checker, uses strings to check for common typos
in compiled binaries.  This change fixes the ones it identified in 0.22.1.

Reviewers: zmike!

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5585
2018-01-04 09:57:52 -05:00
Carsten Haitzler 2be56cd8da shot - add a padded screenshot so it can also grab shadows/surrounds
nice to get a shot that also has the shadows etc. add as menu and
param options

@feature
2017-11-03 16:16:45 +09:00
Mike Blumenkrantz c31cb51499 replace <br> with <ps/> for all text 2017-08-21 10:16:35 -04:00
Marcel Hollerbach 29901d67b2 meson: use file instead of doing the relative path by hand
a reason for doing that is that you can just pack together targets into
a array and pass them to our helper, and the helper will just handle
them, so even module with eldbus codegen etc is now supported.

This also means that we are just passing the src object directly into
the shared_module call, which means the user of our helper can just pack
everything he needs into the src var and the helper does not need to
know about it.
2017-08-08 18:38:37 +02:00
Carsten Haitzler 69290dd7f4 e module build - make build files far more generic and far smaller
now mdoule build files that fllow one pattern (the most common by far)
all JUSt list their souce files and nothing else. this really cuts
down on build size/complexity.

there are other patterns too (no icons at all) that i'll do next, then
we're down into "weird" land where i'll have to think of some more
interesting ways to deal with this.
2017-07-29 08:55:36 +09:00
Carsten Haitzler 84bf48b3ed module build - clean up and fix meson install of pretty much all modules
so we';re missing installing desktop files. edj icon files, wizard
data files in the wrong place, and much more. this also cleans up the
module meson build of pretty much all modules and make their build
files cimple and consistent so it's far easier to re-use things from
one module to the next. we should aim for simplicity, consistency
between as much as possible so we can refactor and turn into maybe
functions later. imho that starts with consistency though. until i can
see all the common patterns clearly, i don't want to write functions
yet. it's easier to see if all the files are consistently using the
same vars and formatting etc. etc. etc.

but either way the installation needs fixing so it installs all files
in the right places with the right permissions etc. etc. etc.

this doesn't fix all module build files bt all the ones i found that
were broken installs and they use what i think is a cleaner/simpler
template, BUT there is far too much copy & pastage here... far too
much.i need to find a cleaner way to automate this.
2017-07-27 14:29:30 +09:00
Mike Blumenkrantz e8dc71cd48 meson. 2017-07-20 17:18:33 -04:00
Mike Blumenkrantz f605dd6441 use snapshot object for shot module
now this is the same under all display servers
2017-07-20 17:18:33 -04:00
Al 'netstar' Poole d7538011ec Modules: Fix compilation and remove warnings for BSD 2017-07-15 21:32:11 -05:00
Mike Blumenkrantz b7e8e886e9 do not generate module.desktop files
the purpose of this is to allow variable substitutions, but no desktop
files do this so it's a waste of build time for no reason
2017-07-14 18:40:50 -04:00
Carsten Haitzler 9c984ea9cf e ptr cast via void fix to reduce warnings
so we cast a lot of ptrs to other types as that is then the actual
type of the object. all these objects are allocated by malloc nad
friends so this is ok. but gcc on arm is not happy and warns. maybe it
assume this ptr could be to an element in an array of structs of this
type and so on thus will have specific alignment enforced by compiler
but our casting may disturb it? anyway. cast via void first fixes it.
we can focus on other real warnings and errors instead.
2017-02-12 16:25:35 +09:00
Derek Foreman 73aecd73ab Replace all timer_add with timer_loop_add
So yeah, I've literally used sed to replace every occurrence of
ecore_time_add() with ecore_timer_loop_add() because I'm reasonably
confident that no part of E has a legitimate need for timer based on the
exact current time.

It would be really nice if I'm not wrong. :)

The reason for this is the incredible spew of clock_gettime() calls I'm
seeing on an ARM system (that should have a vdso for gettime, but...)
This can amount to thousands of system calls per second.

 #YOLO
2017-02-03 15:52:28 -06:00
Derek Foreman e4da5ba56a Auto generate wayland protocol
Replaces any checked-in wayland protocol files with auto-generation.

In some cases this means renaming include files that didn't use "standard"
names, or adding missing xml files.  Any source edits are simple search and
replace, there should be no functional changes.
2016-09-26 15:23:50 -05:00
Mike Blumenkrantz edba13322a disable bindings during wayland screenshot operations
recursive action activation is very bad.
2016-01-22 16:31:07 -05:00
Mike Blumenkrantz 446f9c4b68 defer screenshot action execution using a job
the drm screenshot action forcefully iterates the main loop, causing
the current loop (which triggered the action) to return after the screenshot
action has ended. during this time, it's possible for other actions to also
trigger, including triggering subsequent screenshot actions, so it's necessary
to defer the execution of the action until after the initial loop which triggered
the action has returned

 #Recursion
2016-01-22 16:25:32 -05:00
Mike Blumenkrantz f005ac9bff create wl client connection during compositor init, use in shot module
fixes shot module

ref T2919
2015-12-09 13:16:48 -05:00
Chris Michael 74cd89636b Don't leak eina_iterator in shot module
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Chris Michael 9e8d0cc426 Port shot module to use ecore_wl2 library
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-12-09 13:16:48 -05:00
Mike Blumenkrantz 81ea29a715 fix shot module compile without x11 support 2015-09-22 13:54:28 -04:00
Mike Blumenkrantz 3f13b6889d replace existing usage of x/wl_comp_data with corresponding globals 2015-08-13 16:05:57 -04:00
Mike Blumenkrantz 83f49bf44c redo wayland shot init to account for async+slow global loading
previously it was possible for the shot module to init in a wayland
compositor and fail to grab the necessary globals, resulting in black
rects for all shots
2015-08-12 20:19:18 -04:00
Derek Foreman aae280bfcd shot: Skip the wayland setup bits when running under X
fix T2592

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2851
2015-07-21 12:23:55 -04:00
Mike Blumenkrantz 62792ce662 ensure wayland parts of shot module use the correct wayland display objects
the ecore-wl global objects used here will be wrong for the case of nested
compositors
2015-07-17 15:30:30 -04:00
Derek Foreman 41cb2fa161 screenshooting: Avoid void pointer arithmetic
Summary:
If we use unsigned char pointers instead of void pointers we actually
conform to the C standard.

This patch removes a reliance on a gcc extension and, as an added bonus,
also quiets a warning in the default build.

Reviewers: zmike

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D2820
2015-07-15 18:09:15 -04:00
Chris Michael cc5aa9153d shot: Enable feature of taking just window shots in wayland
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-09 12:37:42 -04:00
Mike Blumenkrantz 54c6d7094e remove unnecessary E_COMP_WL #defines
this is only required for aliasing E_Client->comp_data as wayland compositor data.
if comp_data is never dereferenced, it is not necessary to declare the compositor
type
2015-07-08 17:12:42 -04:00
Chris Michael 921b882e9d shot: Disable window shots in wayland for now
NB: Feature still being developed

Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:41:23 -04:00
Chris Michael 3d90de80b7 shot: Update with proper compositor checking tests
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:22:08 -04:00
Chris Michael f2e49b686e shot: Update shot module to now be able to take Wayland screenshots
Signed-off-by: Chris Michael <cp.michael@samsung.com>
2015-07-08 15:14:56 -04:00