Commit Graph

1098 Commits

Author SHA1 Message Date
Adam Harrison c644ca7df6 keep_inactive -> keep_active 2021-08-10 23:29:39 -04:00
Adam Harrison 40c68ffcc6 Pairs -> IPairs 2021-08-10 23:18:30 -04:00
Adam Harrison 851dc07408 Added in close others, and refactored close all. 2021-08-10 23:14:40 -04:00
Adam Harrison 26a77542e3 Fixed small bug on bootup, and added in a multiline qualifier to replacements. 2021-08-10 22:01:28 -04:00
Adam Harrison 255c45b30b Since we're modifying the clipboard, actually makes way more sense to use this hash. 2021-08-10 21:29:33 -04:00
Adam Harrison 71e62ce84f Added in a hash check to the system clipboard. 2021-08-10 21:25:40 -04:00
Adam f3a8e264fe
Merge pull request #370 from adamharrison/home-fixes
Changed behaviour of home.
2021-08-10 14:46:48 -04:00
Francesco Abbate c552d373ca Fix run-local script to copy generated start.lua
Now the file data/core/start.lua no longer exists but it is
automatically generated by meson. Ensure the file is copied
when running locally.
2021-08-10 11:12:47 +02:00
redtide 6955f87aaf
Merge pull request #362 from redtide/ci-innosetup
Updated InnoSetup configuration file and added related build script
2021-08-09 22:30:32 +02:00
redtide 0f9fa8044b
Merge pull request #361 from redtide/meson-config
Updated Meson configuration
2021-08-09 22:28:49 +02:00
redtide 3468164518 Updated Meson configuration
- Added version and license metadata
- Configuration data to be used in configured files to set metadata
- Portable binary and directories in the main install directory
- Binary file installed in correct places for all supported platforms
- Freedesktop AppStream support
- Added missing files install rules
2021-08-09 22:26:16 +02:00
Adam Harrison 3c8da0fc3f Added in selection as well. 2021-08-06 18:09:36 -04:00
Adam Harrison 2bf56e67c5 Changed behaviour of home. 2021-08-06 18:08:08 -04:00
Francesco Abbate 0b2bf227a8 Fix inactive divider intercepting mouse clicks
In the function Node:get_divider_overlapping_point() we check if we
hit a divider (separator between two nodes). If yes the event is
intercepted and used to set the cursor and drag the separator if
appropriate.

In reality, on mouse move events, when one of the node is a split
and one of its child is not resizable we don't set the cursor to
and we don't intercept the event. However on a mouse pressed event
the event was intercepted regardless of the fact that the child
nodes are resizable or not. This latter behavior was unwanted as it
prevents mouse clicks to be processed because of a divided that is
inactive.

In addition it prevented processing of mouse clicks when the child
node was invisible leading to issue #363. For this latter the issue
was the invisible NagView in the upper part of the window.

To fix the problem we provide a divider with
Node:get_divider_overlapping_point() only if its child node are
resizable. In this way the mouse clicks or movements are intercepted
only if the divider is actually active.
2021-08-06 09:07:17 -07:00
redtide cee1639d34 Updated .gitignore
- Makes a clear distinction between files and directories, don't ignore build files
- Added some file types and directories
- ignore also 'lite-xl' prefixed install directories other than the executable
2021-08-04 11:13:51 -07:00
redtide f1f3eb1185 Updated InnoSetup configuration file and added related build script 2021-08-02 18:43:59 +02:00
Francesco Abbate 62bcc6abc2 Fix missing commas in autocomplete module 2021-08-02 10:07:43 +02:00
Adam 5155f7a2a4
Merge pull request #338 from lite-xl/Merged
Merging dev to master.
2021-08-01 15:02:49 -04:00
Adam 47eaca18d8
Merge branch 'master' into Merged 2021-08-01 14:58:36 -04:00
Francesco Abbate 135ad072bd Move gutter width calculation out of loop 2021-07-28 13:02:38 -07:00
cukmekerb 4ad353eb4b fix line number align bug 2021-07-28 13:02:38 -07:00
cukmekerb 63f406773b align line numbers to right 2021-07-28 13:02:38 -07:00
Francesco Abbate 8103f21991 Only load plugins that are lua files
Before trying to load a plugin or checking its version verify if it
looks like a lua file.

Close issue #349.
2021-07-27 23:18:15 +02:00
ep af22a6a824 +readability, hopefully 2021-07-26 03:50:57 -07:00
ep 2df363747b fix workspace folders on different drives in Windows 2021-07-26 03:50:57 -07:00
Francesco Abbate 26873d59a3 DEBUG: more debug messages 2021-07-25 20:57:54 +02:00
Francesco Abbate 219b2a1d5c Fix files limited project with dir monintoring
Changed approach to files limited project. Now we keep into the
top-level dir a list of subdirectories to be shown. When in file
limited mode we will not scan subdirectories unless they are in
the list of shown subdirectories.

With the new mechanism the function get_subdirectory_files always
recurse into subdirectories by default but is able to figure out
to stop recursing into subdirectories for files limited project.

The new mechanism is more robust of the previous one. Now the
rescan of subdirectories is compatible with files limited project.
2021-07-25 20:49:35 +02:00
Francesco Abbate 0024f5419a DEBUG: add some rescan debug messages 2021-07-25 15:17:51 +02:00
Francesco Abbate 45a6c22b18 Fix a new things about project rescan
Add a flag core.redraw to force redraw when rescan is done.

Inhibit recursion when files_limit is reached.

Still doesn't work correctly for files limited directories.
2021-07-25 15:16:01 +02:00
Francesco Abbate eac1837a86 DEBUG: Add new debug messages for new functions 2021-07-25 00:15:40 +02:00
Francesco Abbate 95dc3d0b5f Smarter algorithm to patch files list
New algorithm use the fact that files list are always
sorted to optimize the table's insertions and removals.
2021-07-25 00:14:21 +02:00
Francesco Abbate 40cfd079d1 Ensure all project files are correctly filtered 2021-07-24 14:42:31 +02:00
Francesco Abbate 58cfee2a58 Add more debug messages 2021-07-23 23:30:24 +02:00
Francesco Abbate 4c5c126aa1 Fix error in rescan list replace 2021-07-23 23:30:06 +02:00
Francesco Abbate 52636b4acc DEBUG: Add debug support for dmon 2021-07-23 23:14:45 +02:00
Francesco Abbate 7098043e6e Fix a few things about dmon
Ensure that we call coroutine.yield when scanning recursively.

Do not use a weak-key based on project dir when adding the job for rescan.
Since "dir" was not unique many threads were missing.

Ensure we do not block waiting for events if there are pending rescan.
2021-07-23 23:04:57 +02:00
Francesco Abbate fe5e1dc57c Ensure directory is rescanned after the first read 2021-07-23 21:23:37 +02:00
Francesco Abbate 1277399bbb Implement project files rescan on dir changes
In theory the dmon based directory monitoring is enough to ensure that
the list of project files is always correct. In reality some events
may be missing and the project files list may get disaligned with the
real list of files.

To avoid the problem we add an additional rescan to be done later in a
thread on any project subdirectory affected by an event of directory of
file change.

In the rescan found the same files already present the thread terminates.
If a difference is found the files list is modified and a new rescan is
scheduled.
2021-07-23 19:36:31 +02:00
Adam 0a0bc87319
Merge pull request #301 from jgmdev/api-interfaces
Documented with EmmyLua the C API using .lua interface files.
2021-07-22 21:50:52 -04:00
Adam Harrison 152fd6c66c Fixed doc, and fixed plugin load. 2021-07-20 15:09:14 -04:00
Adam Harrison c461cfae93 Removed unecessary duplicates. 2021-07-20 14:50:40 -04:00
Adam Harrison 0777a6f0b8 Merged dev to master. 2021-07-20 14:39:50 -04:00
Francesco Abbate aa9221e785 More accurate path compare function 2021-07-20 15:28:36 +02:00
Francesco Abbate 5f06a0a871 Update dmon from septag/dmon commit 74bbd93b
The new version includes fixes from jgmdev, github PR:

https://github.com/septag/dmon/pull/11

to solve incorrect behavior on linux not reporting directory creation.

Includes also a further revision from septag.
2021-07-20 11:47:55 +02:00
Francesco Abbate 31479a4ad7 Show max files warning message for initial project
If the max number of files limit is achieved when the application
is starting the StatusView is not yet configured so we cannot
show the warning.

We show the warning in the function scanning the directory only if
the StatusView is up. On the other side, when the application starts
it will check if the initial project dir hit the max files limit and
show the warning if needed.
2021-07-19 10:47:31 +02:00
Francesco Abbate 7605b626e8 Add language_cpp plugins
Brought form the 1.16.12 release.

It provides support for C++ using multi-part syntax patterns. Take
the priority over C language plugins for header files.
2021-07-19 08:18:38 +02:00
Francesco Abbate d3f1a3a5b2 Bump 2.0-beta1 version 2021-07-17 21:30:25 +02:00
Adam 69da9655d1
Merge pull request #334 from adamharrison/find-fixes
Find Improvements
2021-07-16 17:53:41 -04:00
Adam 7d40458489
Merge pull request #335 from lite-xl/build-removal
Removed legacy build system.
2021-07-16 17:53:14 -04:00
Adam Harrison e144ad3271 Removed legacy build system. 2021-07-15 20:47:44 -04:00