-
Notifications
You must be signed in to change notification settings - Fork 36
Description
Yanoushek,
I've gotten a little addicted to this project. I hope you don't mind but I am going to try and implement the features on the roadmap. My first step will be to refactor adb out of the AppDelegate class. I will do this by creating a LogcatDatasource class and trying to move filtering, search, adb etc into it. I think this will make things a lot easier in the long run. Maybe I will pull the to tableviews into their own class too.?.
Here is the list of items on the roadmap and a few comments about them:
1. Support for more than 1 device at a time.
I will start by allowing user to select from a list of devices (if multiple connected) and view the log for the selected device. How did you envision this to work? I foresee having one window per device log (maybe I can hack together a demo of this after the refactor). Or being able to select a threadID and open its view into another window. This way you could look at two threads side by side.
2. Automatically generated filters for all the tags, types etc.
I added ability to add a filter by right clicking on the row/column. In my opinion this is better than auto generating filters. I do think it would be useful to be able to import and export filters. If we start using predicates this will probably need to get a lot smarter.
3. Better and easier filter definitions with NSPredicateEditor.
I've worked with NSPredicate a few times. As I do the refactor I will consider changing to NSPredicate for the filtering
4. RegExp searching and filtering.
No plan to solve this during this refactor
5. Autodetection of adb location (or bundling the adb within LogCat?).
Is this still a plan since ADB is packaged with the app? I could see an argument for preferring the users ADB and if it can't be found than use the pre packaged one.
6. A better solution for reading and parsing adb output.
I think it will be a lot more efficient if we use "adb logcat -v threadtime" and parse with NSScanner. I am going to test this out and see what the most efficient way to do this is. I wan to optimize the initial launch because it take several seconds before we get through the cached log.