Hi Carsten,

Happy New Year to you too.

Keep the faithE :)

On Mon, Jan 2, 2023 at 5:41 PM Φ SNAKΣ ΣYΣZ Φ <snake8e...@gmail.com> wrote:

> Thanks for the reply - it's appreciated.  Shame about the dragbar; it's
> a killer feature for my workflow, although the independent desktop
> switching per screen/monitor in more recent Enlightenment has advantages
> - I use window groups and raising/lowering to achieve similar things on
> e16 with multiple monitors.  Wayland has advantages for touchscreens,
> although you can use xinput to detach the cursor and still use
> multitouch applications without moving the cursor - I guess e16 will
> never support Wayland?
>
>
> Glad your kitchens getting sorted ;)
>
> On 02/01/2023 16:46, Carsten Haitzler wrote:
> > On Mon, 2 Jan 2023 16:26:41 +0000 Φ SNAKΣ ΣYΣZ Φ<snake8e...@gmail.com>
> said:
> >
> >> This is great - only signed up recently so thanks for the update :)
> >> Happy new year!
> >>
> >> Any chance of implementing the workspace dragbar from e16 in the latest
> >> Enlightenment?
> > No - as desktops are done quite differently this doesn't quite work. :)
> E16 did
> > this because desktops other than desktop 0 were their own windows which
> thus
> > would move all children with it etc - this also causes a whole lot of
> pain with
> > apsp assuming lots of things and breaking their ability to know their
> window
> > frame positions.
> >
> >> I used to be a kitchen designer for MFI years ago; their trade outlet
> >> Howdens is still around and worth a look.  It was always a good place to
> >> get the same quality kitchens at a better price with additional bits and
> >> bobs you can't get separately from mainstream stores - I used to use it
> >> to sort out issues with customer's kitchens.  You were /supposed/ to be
> >> a tradesman to buy there, but they usually have business cards on the
> >> counter for local tradesmen and they'll usually deal with you direct
> >> anyway ;)
> > Kitchen s already "in" (cabinets). Wren. The problem is... backsplashes
> still
> > have to go in (quartz guys have to come back and install those in the
> coming
> > weeks). The big real problem is appliances. No stove, oven, microwave,
> > dishwasher, fridge, washer, dryer, taps, sink waste .. because plumbers
> and
> > electricians don't show up. So a bunch of cabinets and otherwise
> > non-functional. This is the tale of much of this... get it to 80% but not
> > actually functioning.
> >
> >> Best of luck with your house renovations and all the best.
> >>
> >> On 02/01/2023 11:11, Carsten Haitzler wrote:
> >>> So ... Happy new year and what not.
> >>>
> >>> As a new years resolution... I've decided to be a bit more
> communicative.
> >>> I'm going to start with this email.
> >>>
> >>> So things have been a bit quiet lately. I've been busy with buying a
> house
> >>> (oddly it's my first house I've ever bought) in London. Like most
> places
> >>> that are not astronomically prices, it needs work. I've been having it
> get
> >>> renovated and oddly this actually has proven to be an extra full-time
> job
> >>> in addition to my full time work at Arm, so time for E is preciously
> small.
> >>> Bonuses are that the work is coming towards the latter end (well it was
> >>> originally meant to be a 10 week project. 24 weeks later and it's still
> >>> going...). I've been living without a proper bathroom and no kitchen
> now
> >>> for several months (relying on a small shower room) and battling dust
> and
> >>> dirt, freezing cold coming through open doorways (with no doors), a
> central
> >>> heating system that is broken (it seems some people have zero clue how
> to
> >>> install and commission these). Oddly I have gigabit internet with cat6a
> >>> wired up through the house... no kitchen but gigabit networking. I
> guess
> >>> I'm officially a nerd. Once things settle I'll have more time, but
> there is
> >>> so much to do still even when builder do finally leave one day...
> >>>
> >>> Now that aside let's get on with E stuff.
> >>>
> >>> I've been working away at a rewrite of efm. Why? The old efm code is...
> >>> old. It has some nasty dark corners that mean e gets i/o stalls and
> >>> especially in some cases when on possibly slow storage like some slow
> usb
> >>> drive or network mount. I've really needed to TOTALLY isolate the i/o
> from
> >>> the front end. Bonus - doing this means I can fake the back-end fs.
> Let's
> >>> not waste your curiosity and give you a link to the work so far (not
> in git
> >>> yet):
> >>>
> >>> http://www.rasterman.com/files/efm2.tar.gz
> >>>
> >>> To unpack + build:
> >>>
> >>>     tar zxvf efm2.tar.gz
> >>>     cd efm2
> >>>     meson . build
> >>>     ninja -C build
> >>>     sudo ninja -C build install
> >>>     efm ./testdir
> >>>
> >>> (note - pass any dir as the argument on the cmdline or no dir == list
> >>> current dir).
> >>>
> >>> It's a TEST tool. It is not a final, look and feel. Actually the
> window is
> >>> more about testing things like focus movement - the buttons
> surrounding the
> >>> scrollable view are all for testing. It's all about creating enough
> code to
> >>> test and build the actual efm internals for the view and make the
> back-end
> >>> file i/o function. You will need a git checkout of efl for new theme
> >>> elements BTW.
> >>>
> >>> So ... what is this? Roughly... A file manager view that currently does
> >>> regular row by row icon view (with fixed icon sizes), simple list view
> >>> (icon + name), detailed list view (lots of columns with resizable drag
> >>> bars, and an interesting size view with a colored and sized bar for
> >>> relative file size, full permission display, mime type etc.) ...
> currently
> >>> custom view is unimplemented (this is for icons you can manually place
> >>> anywhere - i.e. like on the desktop). I was hoping to also add the
> ability
> >>> to have custom icon sizes per file there too when I get to that. It
> does
> >>> drag and drop (it won't DO anything like move/copy files but it'll
> tell you
> >>> on stdout what it should be doing), copy & paste, single and multiple
> >>> selections, monitor the directory for changes and update accordingly.
> In
> >>> theory it has various sorting modes but only exp;oses access to one
> right
> >>> now. Focus should work (tab/arrow keys). It should handle massive dirs
> >>> (1000's of files). The front end and back end should be totally
> divorced
> >>> and thus you can point it at some insanely slow sshfs mount to the
> other
> >>> side of the planet over a 2400 baud modem and the gui should remain
> >>> fluid... it just may update slowly (exception right now - .desktop
> files
> >>> that refer to local content within that slow fs - to be addressed)...
> :).
> >>> It will generate thumbnails and update them. The backend fs is a
> separate
> >>> process the front end talks to via stdin/out - as is the thumbnailer
> too
> >>> that the back-end uses. Why do this? You could implement a new fs as a
> >>> python or shell script. The idea is that you can write new fs backends
> that
> >>> maybe wrap the default one that do extra setup stuff at the start like
> >>> mount a specific fs, ask for user and password things etc. at this
> point
> >>> (the front end will eventually provide commands via stdin/out to
> present
> >>> these ui things). It will see .desktop files and handle them specially
> >>> using the label from the .desktop and the icon the .desktop says to
> use (I
> >>> know - potential security problem here ... undecided how to handle this
> >>> yet). It will handle som extensions I made to .desktop files to have
> >>> different images/icons when clicked and selected (testdir has an
> example).
> >>> It handles dirs with custom icons (example in testdir). If desktop
> filers
> >>> use animated icons (gifs, webp etc.) they will also play.
> >>>
> >>> It will not actually run anything. It won't actually copy, move,
> delete etc.
> >>> anything. I've started filling in keyboard handling and enough hooks
> to glue
> >>> this together so it'll print what it sees event wise or action-wise on
> >>> stdout.
> >>>
> >>> The backends are installed in PREFIX/lib/efm/backends - there is only
> one
> >>> right now (default) and it has 2 binaries. open and thumb. open opens a
> >>> target dir and monitors it for changes - listing the contents and
> sending
> >>> updates. thumb does what you think - it will generate a thumbnail.
> >>> Thumbnails are always installed in ~/ assuming ~/ is fast and thus any
> i/o
> >>> to access thumbnails there is "instant" (It's still done async in
> threads
> >>> though...).
> >>>
> >>> Have a look at sample-open-stdio.txt in the base source to get an idea
> of
> >>> the text output from the open back-end that gets sent to the front-end
> as
> >>> well as the commands sent to the back-end (it sends a set-dir to set
> which
> >>> dir to list/monitor). As this is 2-way communication it can be made to
> do
> >>> just about anything.
> >>>
> >>> What I currently have not decided is how "actions" will work. Should
> they be
> >>> CMD's sent back to the open back-end to then implement - I think it
> should
> >>> be. This back-end I plan to then just run a local cp/mv/rm binary in
> the
> >>> backend and pass on updates via stdout (and allow cancelling). This
> will
> >>> allow the open binary to basically be the master of everything. open
> >>> already handles running the thumb tool to update/generate thumbnails
> when
> >>> needed, so might as well do the rest. So from efm's point of view it
> talks
> >>> to this open tool (can be a binary, perl, python, lua, bash or whatever
> >>> script) and this open tool does all the necessary i/o itself or via
> other
> >>> tools.
> >>>
> >>> So I'm filling in all the bits. Custom view will be needed soon. I also
> >>> haven't handled video files in icons (It won't play a video as an icon
> at
> >>> this point - but on my todo list - this will also double up to play
> audio
> >>> files with the same code at some point).
> >>>
> >>> What I will need to do is expand the commands that the back-end can
> send
> >>> over. Things on my todo list are like:
> >>>
> >>> * Display and update a progress bar (for various things but mostly
> cp/mv/rm
> >>> ops)
> >>> * Handle a list/stack of these progress bars
> >>> * Display an overlayed progress bar per icon
> >>> * Display other overlayed info on icons (labels, overlay icons)
> >>> * Set different states fo an icon (fade, pulse, zoom/grow, bounce, ...)
> >>> * Select/unselect files
> >>> * Display overlayed text on view (doesn't scroll) in a corner, edge or
> >>> center
> >>> * Display overlayed icons/images like above
> >>> * Display background images (don't scroll)
> >>> * Display overlayed foreground images (don't scroll)
> >>> * Display background images (scroll and size of file view not scroller)
> >>> * Display overlay foreground images (scroll and size of file view not
> >>> scroller)
> >>> * Scroll to a position or file
> >>> * Display in-view popup with label, icons, entry (text and passwd)
> list of
> >>> text+icons and buttons and get events
> >>> * Display bottom/top/left/right edge extra panels with
> buttons/icons/etc.
> >>> content and hear events from these
> >>> * Hear events from front end like select/unselect, scroll, dnd, copy &
> >>> paste, keys, mouse events etc.
> >>> * Graphs ... display 1 or more and allow overlay with updates and
> >>> interaction events (line graph, bar graph etc. etc. - a few canned
> types to
> >>> make themes sane)
> >>> * Allow extension or replacement of right click menu on view
> background or
> >>> files
> >>> * Allow typebuf like updates of what a user types so the back-end can
> >>> parse/interpret what a user types and "Do smart things" like run like a
> >>> pseudo-cmdline shell
> >>> * Vertical highlight display along edges (e.g. for search highlights)
> >>>
> >>> The above list should begin to give you some idea that the idea is
> there is
> >>> a bit of a pseudo high-level remote UI handled by the efm front end
> that the
> >>> back end can use and interact with. The idea at least is, over time as
> this
> >>> matures, to allow the fm back end to e.g. do a download manager like
> display
> >>> like maybe you find on steam with some graph that shows download speed
> and
> >>> disk speed as 2 overlayed graphs. For the back-end to display a copy
> or move
> >>> operation in the view as little progress bars per icon that is being
> copied
> >>> or moved. Given a flexible enough front end that even allows more
> advanced
> >>> layout of items. Imagine commands that can create boxes or tables with
> >>> various labels, bars, graphs, buttons, lists etc. and then the
> back-end can
> >>> even create relatively featureful UIs like if the back-end detects
> this is
> >>> your music collection... it can display a whole ,music player UI in a
> >>> side-panel and when you select a file it starts playing it allowing for
> >>> controls to do that. Imagine a directory of just photos and the view
> >>> switches icon view style to have the label overlay the icon and
> display the
> >>> selected icon (photo) as the background (temporarily). The point is to
> >>> allow for rich and powerful file view backends that can avoid having
> to do
> >>> a lot of graphics and design work and just simply present what they
> want to
> >>> show the user or ask of them and have the front end deal with it in a
> nice
> >>> way.
> >>>
> >>> Eventually I'd like to see a backend "repository" where people can
> post new
> >>> backends available for download that users can grab and use thus
> adding to
> >>> their workflow and power. Share your created bash shell backend with
> others
> >>> by uploading it. Yes. I know. Security implications. How do you know
> this
> >>> backend is not just going to delete all your files... I'll have to
> come up
> >>> with some kind of rating, signing and blacklisting (removal) system.
> This
> >>> kind of thing has already been tried with screenshots in e to some
> >>> reasonable success. This will need to expand it to track the uploader
> by
> >>> some unique key/hash so only the uploader can upload updates to a
> backend
> >>> and that uploader can be identified and banned if they do bad things.
> New
> >>> backends that have not had anyone look into them yet can be flagged as
> "in
> >>> staging" with big warning symbols until enough people (or the right
> people)
> >>> give them a clean bill of health. Will cross that bridge when we come
> to it.
> >>>
> >>> I plan to re-use the whole stdin/out system in future for gadgets too
> >>> allowing much more easily hacked together gadgets and such in e.
> Imagine
> >>> you right click on a gadget and you get an "edit source" menu and up
> comes
> >>> the bash script for that gadget - you can edit and press "save" and it
> will
> >>> change/update on the fly. like with fm backends press "share" to share
> your
> >>> creation... same problems with security, so will need the same
> solution for
> >>> both, but the point here is ease of use and separating out gui from
> back
> >>> end.
> >>>
> >>> Anyway - there is a new year update on what I have been doing and
> where it
> >>> is now, where it's going etc. and real code to back it up - not just
> hot
> >>> air.
> >>>
> >> --
> >>
> >>
> >>
> >> Φ SNAKΣ ΣYΣZ Φ
> >
> --
>
>
>
> Φ SNAKΣ ΣYΣZ Φ
>
> _______________________________________________
> enlightenment-users mailing list
> enlightenment-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-users
>

_______________________________________________
enlightenment-users mailing list
enlightenment-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-users

Reply via email to