Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion example/lib/01.minimal/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,8 @@

import 'package:flutter/material.dart';
import 'package:flutter_code_editor/flutter_code_editor.dart';
import 'package:flutter_highlight/themes/monokai-sublime.dart';
import 'package:highlight/languages/java.dart';
import 'package:highlight/themes/monokai-sublime.dart';

import '../common/snippets.dart';

Expand Down
2 changes: 1 addition & 1 deletion example/lib/02.code_field/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@

import 'package:flutter/material.dart';
import 'package:flutter_code_editor/flutter_code_editor.dart';
import 'package:flutter_highlight/themes/monokai-sublime.dart';
import 'package:highlight/languages/java.dart';
import 'package:highlight/themes/monokai-sublime.dart';

import '../common/snippets.dart';

Expand Down
2 changes: 1 addition & 1 deletion example/lib/03.change_language_theme/home_screen.dart
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import '../common/themes.dart';
import 'constants.dart';
import 'widgets/dropdown_selector.dart';

const _defaultLanguage = 'dart';
const _defaultLanguage = 'python';
const _defaultTheme = 'monokai-sublime';

const _defaultAnalyzer = DefaultLocalAnalyzer();
Expand Down
125 changes: 1 addition & 124 deletions example/lib/common/themes.dart
Original file line number Diff line number Diff line change
@@ -1,93 +1,4 @@
import 'package:flutter_highlight/themes/a11y-dark.dart';
import 'package:flutter_highlight/themes/a11y-light.dart';
import 'package:flutter_highlight/themes/agate.dart';
import 'package:flutter_highlight/themes/an-old-hope.dart';
import 'package:flutter_highlight/themes/androidstudio.dart';
import 'package:flutter_highlight/themes/arduino-light.dart';
import 'package:flutter_highlight/themes/arta.dart';
import 'package:flutter_highlight/themes/ascetic.dart';
import 'package:flutter_highlight/themes/atelier-cave-dark.dart';
import 'package:flutter_highlight/themes/atelier-cave-light.dart';
import 'package:flutter_highlight/themes/atelier-dune-dark.dart';
import 'package:flutter_highlight/themes/atelier-dune-light.dart';
import 'package:flutter_highlight/themes/atelier-estuary-dark.dart';
import 'package:flutter_highlight/themes/atelier-estuary-light.dart';
import 'package:flutter_highlight/themes/atelier-forest-dark.dart';
import 'package:flutter_highlight/themes/atelier-forest-light.dart';
import 'package:flutter_highlight/themes/atelier-heath-dark.dart';
import 'package:flutter_highlight/themes/atelier-heath-light.dart';
import 'package:flutter_highlight/themes/atelier-lakeside-dark.dart';
import 'package:flutter_highlight/themes/atelier-lakeside-light.dart';
import 'package:flutter_highlight/themes/atelier-plateau-dark.dart';
import 'package:flutter_highlight/themes/atelier-plateau-light.dart';
import 'package:flutter_highlight/themes/atelier-savanna-dark.dart';
import 'package:flutter_highlight/themes/atelier-savanna-light.dart';
import 'package:flutter_highlight/themes/atelier-seaside-dark.dart';
import 'package:flutter_highlight/themes/atelier-seaside-light.dart';
import 'package:flutter_highlight/themes/atelier-sulphurpool-dark.dart';
import 'package:flutter_highlight/themes/atelier-sulphurpool-light.dart';
import 'package:flutter_highlight/themes/atom-one-dark-reasonable.dart';
import 'package:flutter_highlight/themes/atom-one-dark.dart';
import 'package:flutter_highlight/themes/atom-one-light.dart';
import 'package:flutter_highlight/themes/brown-paper.dart';
import 'package:flutter_highlight/themes/codepen-embed.dart';
import 'package:flutter_highlight/themes/color-brewer.dart';
import 'package:flutter_highlight/themes/darcula.dart';
import 'package:flutter_highlight/themes/dark.dart';
import 'package:flutter_highlight/themes/default.dart';
import 'package:flutter_highlight/themes/docco.dart';
import 'package:flutter_highlight/themes/dracula.dart';
import 'package:flutter_highlight/themes/far.dart';
import 'package:flutter_highlight/themes/foundation.dart';
import 'package:flutter_highlight/themes/github-gist.dart';
import 'package:flutter_highlight/themes/github.dart';
import 'package:flutter_highlight/themes/gml.dart';
import 'package:flutter_highlight/themes/googlecode.dart';
import 'package:flutter_highlight/themes/gradient-dark.dart';
import 'package:flutter_highlight/themes/grayscale.dart';
import 'package:flutter_highlight/themes/gruvbox-dark.dart';
import 'package:flutter_highlight/themes/gruvbox-light.dart';
import 'package:flutter_highlight/themes/hopscotch.dart';
import 'package:flutter_highlight/themes/hybrid.dart';
import 'package:flutter_highlight/themes/idea.dart';
import 'package:flutter_highlight/themes/ir-black.dart';
import 'package:flutter_highlight/themes/isbl-editor-dark.dart';
import 'package:flutter_highlight/themes/isbl-editor-light.dart';
import 'package:flutter_highlight/themes/kimbie.dark.dart';
import 'package:flutter_highlight/themes/kimbie.light.dart';
import 'package:flutter_highlight/themes/lightfair.dart';
import 'package:flutter_highlight/themes/magula.dart';
import 'package:flutter_highlight/themes/mono-blue.dart';
import 'package:flutter_highlight/themes/monokai-sublime.dart';
import 'package:flutter_highlight/themes/monokai.dart';
import 'package:flutter_highlight/themes/night-owl.dart';
import 'package:flutter_highlight/themes/nord.dart';
import 'package:flutter_highlight/themes/obsidian.dart';
import 'package:flutter_highlight/themes/ocean.dart';
import 'package:flutter_highlight/themes/paraiso-dark.dart';
import 'package:flutter_highlight/themes/paraiso-light.dart';
import 'package:flutter_highlight/themes/pojoaque.dart';
import 'package:flutter_highlight/themes/purebasic.dart';
import 'package:flutter_highlight/themes/qtcreator_dark.dart';
import 'package:flutter_highlight/themes/qtcreator_light.dart';
import 'package:flutter_highlight/themes/railscasts.dart';
import 'package:flutter_highlight/themes/rainbow.dart';
import 'package:flutter_highlight/themes/routeros.dart';
import 'package:flutter_highlight/themes/school-book.dart';
import 'package:flutter_highlight/themes/shades-of-purple.dart';
import 'package:flutter_highlight/themes/solarized-dark.dart';
import 'package:flutter_highlight/themes/solarized-light.dart';
import 'package:flutter_highlight/themes/sunburst.dart';
import 'package:flutter_highlight/themes/tomorrow-night-blue.dart';
import 'package:flutter_highlight/themes/tomorrow-night-bright.dart';
import 'package:flutter_highlight/themes/tomorrow-night-eighties.dart';
import 'package:flutter_highlight/themes/tomorrow-night.dart';
import 'package:flutter_highlight/themes/tomorrow.dart';
import 'package:flutter_highlight/themes/vs.dart';
import 'package:flutter_highlight/themes/vs2015.dart';
import 'package:flutter_highlight/themes/xcode.dart';
import 'package:flutter_highlight/themes/xt256.dart';
import 'package:flutter_highlight/themes/zenburn.dart';
import 'package:highlight/highlight_themes.dart';

const themes = {
'a11y-dark': a11yDarkTheme,
Expand All @@ -98,48 +9,22 @@ const themes = {
'arduino-light': arduinoLightTheme,
'arta': artaTheme,
'ascetic': asceticTheme,
'atelier-cave-dark': atelierCaveDarkTheme,
'atelier-cave-light': atelierCaveLightTheme,
'atelier-dune-dark': atelierDuneDarkTheme,
'atelier-dune-light': atelierDuneLightTheme,
'atelier-estuary-dark': atelierEstuaryDarkTheme,
'atelier-estuary-light': atelierEstuaryLightTheme,
'atelier-forest-dark': atelierForestDarkTheme,
'atelier-forest-light': atelierForestLightTheme,
'atelier-heath-dark': atelierHeathDarkTheme,
'atelier-heath-light': atelierHeathLightTheme,
'atelier-lakeside-dark': atelierLakesideDarkTheme,
'atelier-lakeside-light': atelierLakesideLightTheme,
'atelier-plateau-dark': atelierPlateauDarkTheme,
'atelier-plateau-light': atelierPlateauLightTheme,
'atelier-savanna-dark': atelierSavannaDarkTheme,
'atelier-savanna-light': atelierSavannaLightTheme,
'atelier-seaside-dark': atelierSeasideDarkTheme,
'atelier-seaside-light': atelierSeasideLightTheme,
'atelier-sulphurpool-dark': atelierSulphurpoolDarkTheme,
'atelier-sulphurpool-light': atelierSulphurpoolLightTheme,
'atom-one-dark-reasonable': atomOneDarkReasonableTheme,
'atom-one-dark': atomOneDarkTheme,
'atom-one-light': atomOneLightTheme,
'brown-paper': brownPaperTheme,
'codepen-embed': codepenEmbedTheme,
'color-brewer': colorBrewerTheme,
'darcula': darculaTheme,
'dark': darkTheme,
'default': defaultTheme,
'docco': doccoTheme,
'dracula': draculaTheme,
'far': farTheme,
'foundation': foundationTheme,
'github-gist': githubGistTheme,
'github': githubTheme,
'gml': gmlTheme,
'googlecode': googlecodeTheme,
'gradient-dark': gradientDarkTheme,
'grayscale': grayscaleTheme,
'gruvbox-dark': gruvboxDarkTheme,
'gruvbox-light': gruvboxLightTheme,
'hopscotch': hopscotchTheme,
'hybrid': hybridTheme,
'idea': ideaTheme,
'ir-black': irBlackTheme,
Expand All @@ -155,29 +40,21 @@ const themes = {
'night-owl': nightOwlTheme,
'nord': nordTheme,
'obsidian': obsidianTheme,
'ocean': oceanTheme,
'paraiso-dark': paraisoDarkTheme,
'paraiso-light': paraisoLightTheme,
'pojoaque': pojoaqueTheme,
'purebasic': purebasicTheme,
'qtcreator_dark': qtcreatorDarkTheme,
'qtcreator_light': qtcreatorLightTheme,
'railscasts': railscastsTheme,
'rainbow': rainbowTheme,
'routeros': routerosTheme,
'school-book': schoolBookTheme,
'shades-of-purple': shadesOfPurpleTheme,
'solarized-dark': solarizedDarkTheme,
'solarized-light': solarizedLightTheme,
'sunburst': sunburstTheme,
'tomorrow-night-blue': tomorrowNightBlueTheme,
'tomorrow-night-bright': tomorrowNightBrightTheme,
'tomorrow-night-eighties': tomorrowNightEightiesTheme,
'tomorrow-night': tomorrowNightTheme,
'tomorrow': tomorrowTheme,
'vs': vsTheme,
'vs2015': vs2015Theme,
'xcode': xcodeTheme,
'xt256': xt256Theme,
'zenburn': zenburnTheme,
};
7 changes: 5 additions & 2 deletions example/pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,12 @@ environment:
dependencies:
flutter: { sdk: flutter }
flutter_code_editor: { path: ../ }
flutter_highlight: ^0.7.0
highlight: ^0.7.0
http: ^0.13.5
highlight:
git:
url: https://github.com/yescorp/highlight.dart.git
ref: 4e75ac3cca4539add6dc53b93bdcb61b9af06fa1
path: highlight/

dev_dependencies:
flutter_test: { sdk: flutter }
Expand Down
2 changes: 1 addition & 1 deletion lib/src/code/code.dart
Original file line number Diff line number Diff line change
Expand Up @@ -144,7 +144,7 @@ class Code {
namedSections: sectionsMap,
visibleHighlighted:
hiddenRanges.cutHighlighted(highlighted)?.splitLines(),
visibleText: hiddenRanges.cutString(text),
visibleText: text,
visibleSectionNames: visibleSectionNames,
);
}
Expand Down
2 changes: 1 addition & 1 deletion lib/src/folding/parsers/java.dart
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';

import '../../../flutter_code_editor.dart';
import '../../code/code_lines.dart';
Expand Down
7 changes: 3 additions & 4 deletions lib/src/hidden_ranges/hidden_ranges.dart
Original file line number Diff line number Diff line change
Expand Up @@ -138,19 +138,18 @@ class HiddenRanges {
Node cutHighlightedNode(Node node) {
final value = cutHighlightedString(node.value);
final children =
node.children?.map(cutHighlightedNode).toList(growable: false);
node.children.map(cutHighlightedNode).toList(growable: false);

return Node(
className: node.className,
value: value,
children: children,
noPrefix: node.noPrefix,
);
)..children = children;
}

final nodes =
highlighted.nodes?.map(cutHighlightedNode).toList(growable: false) ??
const <Node>[];
<Node>[];

return Result(
relevance: highlighted.relevance,
Expand Down
3 changes: 1 addition & 2 deletions lib/src/highlight/node.dart
Original file line number Diff line number Diff line change
Expand Up @@ -97,8 +97,7 @@ extension MyNode on Node {
className: className ?? this.className,
value: value ?? this.value,
noPrefix: noPrefix ?? this.noPrefix,
children: children ?? this.children,
);
)..children = children ?? this.children;
}

extension NodeListExtension on List<Node> {
Expand Down
7 changes: 5 additions & 2 deletions pubspec.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,15 +14,18 @@ dependencies:
collection: ^1.16.0
equatable: ^2.0.5
flutter: { sdk: flutter }
flutter_highlight: ^0.7.0
highlight: ^0.7.0
http: ^0.13.5
linked_scroll_controller: ^0.2.0
meta: ^1.7.0
mocktail: ^0.3.0
scrollable_positioned_list: ^0.3.5
tuple: ^2.0.1
url_launcher: ^6.1.8
highlight:
git:
url: https://github.com/yescorp/highlight.dart.git
ref: 4e75ac3cca4539add6dc53b93bdcb61b9af06fa1
path: highlight/

dev_dependencies:
fake_async: ^1.3.1
Expand Down
2 changes: 1 addition & 1 deletion test/src/code/code_get_edit_result_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import 'package:flutter_code_editor/src/code/code.dart';
import 'package:flutter_code_editor/src/code/code_edit_result.dart';
import 'package:flutter_code_editor/src/named_sections/parsers/brackets_start_end.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

const _languageName = 'java';
Expand Down
2 changes: 1 addition & 1 deletion test/src/code/code_hidden_ranges_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import 'package:flutter_code_editor/src/hidden_ranges/hidden_range.dart';
import 'package:flutter_code_editor/src/hidden_ranges/hidden_ranges.dart';
import 'package:flutter_code_editor/src/named_sections/parsers/brackets_start_end.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

final _language = java;
Expand Down
2 changes: 1 addition & 1 deletion test/src/code_field/split_highlight_lines_test.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'package:flutter_code_editor/src/highlight/node.dart';
import 'package:flutter_code_editor/src/highlight/result.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/dart.dart';

const examples = {
Expand Down
2 changes: 1 addition & 1 deletion test/src/common/create_app.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_code_editor/flutter_code_editor.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

FocusNode focusNode = FocusNode();
Expand Down
2 changes: 1 addition & 1 deletion test/src/folding/parsers/java_parser_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import 'package:flutter_code_editor/src/service_comment_filter/service_comment_f
import 'package:flutter_code_editor/src/single_line_comments/parser/single_line_comment_parser.dart';
import 'package:flutter_code_editor/src/single_line_comments/parser/single_line_comments.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';
import 'package:highlight/languages/java.dart';

void main() {
Expand Down
2 changes: 1 addition & 1 deletion test/src/hidden_ranges/hidden_ranges_test.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'package:flutter_code_editor/src/hidden_ranges/hidden_range.dart';
import 'package:flutter_code_editor/src/hidden_ranges/hidden_ranges.dart';
import 'package:flutter_test/flutter_test.dart';
import 'package:highlight/highlight.dart';
import 'package:highlight/highlight_core.dart';

const _text = '''
public class MyClass {
Expand Down