Coder Social home page Coder Social logo

Clipboard support about tailblazer HOT 7 CLOSED

rolandpheasant avatar rolandpheasant commented on August 24, 2024
Clipboard support

from tailblazer.

Comments (7)

RolandPheasant avatar RolandPheasant commented on August 24, 2024

Someone in work just asked me for that

from tailblazer.

ForNeVeR avatar ForNeVeR commented on August 24, 2024

It wasn't me :)

from tailblazer.

RolandPheasant avatar RolandPheasant commented on August 24, 2024

Actually 2 people have asked me in work and now you. This will be first job when I have finished work on large file handling (almost there now)

from tailblazer.

RolandPheasant avatar RolandPheasant commented on August 24, 2024

@ForNeVeR This has been a surprisingly tricky task since the log entry lines are virtualised and as soon as an item is scrolled out of view it is out of memory.

To get around this difficulty I have had to create a controller to monitor selected items and store items which have recently been removed from the view. This is to ensure that you can select an item, scroll down, and press shift to multi-select a range starting at the first selection.

Although I have tested it I would appreciate you give it some extra scrutiny.

Thanks

from tailblazer.

ForNeVeR avatar ForNeVeR commented on August 24, 2024

I knew it would be a tricky because of how you handle the text stream, so no worries, we'll get it sorted. It's very cool that you've done it. Some issues I've noticed:

  1. Mouse selection would be cool. I think that simple text selection with mouse gesture should be available, so I could move my mouse with the button clicked to select multiple lines of text. Like in Explorer, you know.

  2. Ctrl-A works okay (well, we cannot select the whole file, so let's select the visible area, I'm okay with that idea), but Shift-selection after Ctrl-A is not:

    • Press Ctrl-A.
    • Scroll up a couple of lines.
    • Press shift and click any line above your selection. What I expect is that the selection will be expanded to this line. What I get is the selection gets expanded by 1 line up with every click.

    I am sorry if my explanation is messy, please try that and I think you'll notice the problem easily.

  3. While reproducing the problem 2, somehow I got this:

    image

    If I scroll up or down, all the lines between the selected regions gets highlighted as "selected", so I assume that I really have 14 lines selected there. But when I copy-pasted these lines, I got 15 lines in my clipboard (the 14 highlighted and one below them); that quickly became very messy so I give up researching this.

If it would be preferable, I could file a separate issues for every problem I've encountered.

from tailblazer.

RolandPheasant avatar RolandPheasant commented on August 24, 2024

Re: mouse selection, I agree it is a must. It is something which at this stage I have not worked out how to do it. Maybe there is just some property to set on the ListBoxItemContainer.

I will have a look at the CTL-A issue tomorrow,I think I will have to add specific logic for it. The gap in the lines after scrolling is probably a hang up from a state before the ctl-a command was invoked.

Also if you grab the 'FindInFile' branch I have added a debugging status bar which gives the selected items count - this is useful when debugging the copy paste stuff. With this you will also see my first attempt at enabling multiple searches - I want to expand it so a user can easily enter text, hit enter to search and click 1 button to get extra options like text highlighting colours, alerting etc...

Let's keep to this issue for all copy paste related matters.

from tailblazer.

RolandPheasant avatar RolandPheasant commented on August 24, 2024

@ForNeVeR It should be a lot better now. Also got the mouse selection thing working. Would you like to build and try again.

Btw: check out the image here as mult-searching can now be done

from tailblazer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.