Commit Graph

2211 Commits

Author SHA1 Message Date
jgmdev 620b669517 statusview: added ability to hide and commands
Also fixed the right panel not been draggable.
2022-03-11 17:23:16 -04:00
Jefferson González 46795972f0
Merge pull request #876 from jgmdev/nagview-scroll
nagview: support vscroll when message is too long
2022-03-11 17:11:38 -04:00
jgmdev b880aa42f9 language_c: fixes and improvements
* Do not compete with language_cpp.lua over the .h and .inl files,
  these files can contain both cpp and c so we choose the former which
  supports both syntaxes.
* Added support for magic and uppercase constants.
2022-03-11 17:05:08 -04:00
jgmdev 4b0531cdfc language_cpp: improvements and fixes
* Removed pcall(require, "plugins.language_c") since it doesn't works
  as it seems to have been intended.
* Removed duplicate keywords
* Added support for magic and uppercase constants.
* Basically merged most changes from the lite-xl-plugins repo.
2022-03-11 17:02:42 -04:00
jgmdev d9909cf4ea config: added skip_plugins_version
This new config flag ignores the plugins version check at startup
which helps a lot when working on new or old plugins that doesn't match
the mod or lite-xl version and you still desire to load them to fix them
by checking with lite-xl it self which errors need to be corrected.
2022-03-10 22:29:33 -04:00
jgmdev 0aa53a0e7f nagview: support vscroll when message is too long
Also some other minor changes:
* fix transition when nagview is closed
* do not draw or update when not visible
* do not process events when not visible
* cleaned a bit the logic on next and show
* fixes #848
2022-03-10 06:57:16 -04:00
Jefferson González e08353ea08
Merge pull request #873 from jgmdev/user-and-project-reload-fix
Fix config overwritten on user/project modules save
2022-03-09 19:40:35 -04:00
jgmdev eeb2b28a03 config overwritten on user/project modules save
When a user modifies and saves the init.lua or a project module file the
reload_customizations() function was performing unnecessary reloading
of core.config and core.style. This resulted on the replacement of config
tables with new tables, breaking all active references been used by
the consumers of this config options. Been redundant this means
that every consumer was using its own copy of a configuration table
different from the one referenced on core.config and user changes not
taking place.
2022-03-09 02:15:01 -04:00
Adam 960b482061
Fixed some issues with inotify and multiple events at the same time. (#872)
* Fixed some issues with inotify and multiple events at the same time. Seems to be working now.

* Cleaned up and simplified function, and commented, and fixed a number of bugs.

* Simplifying and fixing further.

* Improved performance for skipping large amounts of files.

* Added in extra checks, and changed paths. We should probably unify these path styles.

* Fixed stutter.

* Removed extraneous functions.

* Cleaned up more, added more testing; dealt with multiple sequential events correctly.
2022-03-08 19:30:25 -05:00
Jefferson González 52a47e0d73
Merge pull request #870 from lite-xl/treeview-fix
plugin treeview: skip rootview events if not visible.
2022-03-07 18:50:36 -04:00
Jefferson González 8a31a2b169
Merge pull request #871 from Guldoman/fix_bad_clip_draw_text
Always check if the beginning of the text needs to be clipped
2022-03-07 18:49:14 -04:00
Guldoman 5714da81f8
Always check if the beginning of the text needs to be clipped 2022-03-07 23:35:56 +01:00
jgmdev 48e86bb117 plugin treeview: skip rootview events if not visible. 2022-03-07 16:52:32 -04:00
Jefferson González 6386bac4e5
Merge pull request #869 from jgmdev/fix-loading-order
Initialization: load core views before user plugins
2022-03-06 21:22:53 -04:00
jgmdev 9d4e475a2c init: also load default nodes and commands before user plugins and project module. 2022-03-06 21:21:00 -04:00
jgmdev d7d88a2037 init: load core views before user plugins 2022-03-06 21:03:16 -04:00
Jefferson González 1be425d1de
Merge pull request #867 from Guldoman/fix_load_project_module
Load project module on startup
2022-03-06 21:02:22 -04:00
Guldoman 240afa7abd
Load project module on startup 2022-03-06 21:09:22 +01:00
Adam f85612e0f0
Fix Project Scanning (#746)
Removed dmon, and replaced with logic that works across Linux, Mac, FreeBSD and Windows. Have tested on all platforms, and seems to work.

Co-authored-by: Jan200101 <sentrycraft123@gmail.com>
2022-03-06 00:59:22 -05:00
jgmdev 6cb403b450 meson: increased min version to 0.47 and added check flag on run_command. 2022-03-05 20:15:48 -04:00
Jefferson González d82b668a09
Merge pull request #863 from jgmdev/scale-fix
plugin scale: replace non existing font.set_size with font.copy
2022-03-05 20:03:05 -04:00
jgmdev c4f7380a95 language_md: removed scale adjustment code that was needed because of a bug on scale plugin. 2022-03-05 19:13:24 -04:00
jgmdev e5ca08e13f plugin scale: replace non existing font.set_size with font.copy 2022-03-05 19:03:33 -04:00
Jefferson González 1fa1960b05
Merge pull request #862 from jgmdev/markdown-consolidation
language_md: improvements consolidating #814 and #840 thanks to @Not-a-web-Developer and @TorchedSammy
2022-03-04 14:58:25 -04:00
jgmdev 2d3d9a1671 language_md: improvements consolidating #814 and #840 2022-03-04 14:29:29 -04:00
Jefferson González 0e79607895
Merge pull request #859 from jgmdev/commit-on-version
Add git commit on version of devel builds
2022-03-04 14:18:36 -04:00
Jefferson González 2f7da44275
Merge pull request #860 from Guldoman/tokenizer_start_of_line
Allow syntax patterns to match with the beginning of the line
2022-03-04 14:13:14 -04:00
Guldoman caefc9112a
Force syntax patterns starting with `^` to match with the whole line
Before, syntax patterns/regexes that started with `^` didn't have the 
desired effect of matching with the start of the line.

Now those patterns are used only when matching the whole line.
2022-03-04 11:27:01 +01:00
Guldoman fbb893c6b1
Fix `^` regex matching when using an offset
Before, if `offset > 1` was used, the match would have failed because 
the beginning of the string was never met.

Now we force the beginning of the string to be the one specified by the 
offset.
2022-03-03 22:09:48 +01:00
Jefferson González 2736072dce
Merge pull request #858 from Guldoman/move_towards_epsilon
Use epsilon to compare values in `View:move_towards`
2022-03-03 15:21:25 -04:00
jgmdev a587182982 meson: when running git rev-parse use HEAD instead of checking current branch name 2022-03-02 18:55:46 -04:00
jgmdev 1e765b5c28 EmptyView: handle lite-xl version strings that overlap. 2022-03-02 03:55:03 -04:00
jgmdev 05e355d383 meson: append git commit if possible and to non release builds 2022-03-02 03:53:04 -04:00
Guldoman 3d879286a4
Use epsilon to compare values in `move_towards` 2022-03-01 22:41:54 +01:00
Jefferson González be5f94e913
Merge pull request #852 from jgmdev/statusview-enhacements
Improvements to the StatusView, closes #677
2022-02-28 18:19:46 -04:00
jgmdev e9775ced78 StatusView: added items hovered option for bg color and param to on_draw as suggested by @Guldoman 2022-02-28 17:56:17 -04:00
jgmdev 4c80aa7a40 StatusView: reposition left and right panel offsets on window resize. 2022-02-28 17:04:37 -04:00
jgmdev 15a31418ca StatusView: restored indent confirmed 2022-02-24 14:22:52 -04:00
jgmdev 128e10ba47 StatusView: add spaces as separate items instead of pre-pending them to items. 2022-02-24 13:58:40 -04:00
jgmdev 131bdf9fb2 StatusView: implemented and applied get_item_visible_area. 2022-02-24 02:23:29 -04:00
jgmdev b1ce685489 StatusView: better calculate panel sizes and handle out of bounds drags. 2022-02-24 00:21:21 -04:00
jgmdev c5648e1f02 StatusView: implemented dragging and scrolling. 2022-02-23 19:25:25 -04:00
jgmdev 3452d499e5 Show hand cursor on clickable elements as suggested by @Guldoman 2022-02-23 06:07:53 -04:00
jgmdev 90983b22a4 StatusView v2.0, some changes include:
* Items are now objects that can be retrieved and manipulated.
* clip rect is used for left and right panes
* initial support for items to do their own custom drawing by also
  doing a clip rect for them
* a custom background color can be specified for the item.
* a command or function can be executed on item click.
* Introduced functionality to easily hide or show all or specific items.
* Better handling of deprecated get_items()
* Spacing is automatically added to items and cleaned on deprecated
  items.
* Default items where separated and given the names:
  doc:file, doc:position, doc:indentation, doc:lines,
  doc:line-ending, core.commandview.
* Some default right or left click actions where given to the default
  items.
* Started adding required bits to support dragging to left and right
  panes when some items aren't visible.

Note: should work well enough already but maybe some repetitive stuff can be
cleaned out.
2022-02-23 05:15:14 -04:00
jgmdev 7cb4e93d14 Improvements to the StatusView
* Support for predicates by introducing add_item().
* Support for performing click actions on items.
* Support for optional tooltips on item hover.
* Deprecate the usage of get_item().
2022-02-21 03:40:25 -04:00
jgmdev feaa3b2547 Docs: changes process start from method to function. 2022-02-15 20:49:46 -04:00
Adam 61e712db12
Fixed rendering computations for y offset. (#843)
* Fixed rendering computations for y offset.

* Force monospacing if every ascii character has the same integer advance.

* Added in explanatory comment.

* Fixed issues.

* Made lines less long.
2022-02-15 15:57:07 -05:00
Adam 05e1968b0b
Merge pull request #845 from Guldoman/file_drop_override
Add `View:on_file_dropped`
2022-02-15 11:44:37 -05:00
Guldoman 539f929e30
Allow intercepting `filedropped` events
The event is first sent to the underlying `View`; if not handled, it's 
managed as before.
2022-02-15 00:45:59 +01:00
jgmdev 2079e1f707 Plugin projectsearch: set command view text to current document selection. 2022-02-13 01:31:58 -04:00