- Mitchell Skaggs - Team Lead
- Keturah Gadson
- Ethan Holtgrieve
- Nathan Skelton
Copyright 2017 - 2018 Mitchell Skaggs, Keturah Gadson, Ethan Holtgrieve, Nathan Skelton, Pattonville School District
The Android app for the Pattonville School District. Created and maintained by students and alumni.
License: GNU General Public License v3.0
No new Spotlights ever appear anywhere after a rotation on a page with multiple Spotlights.
After fixing one bug by removing a hack, this issue arose
When selecting calendar events that have the same number of dots underneath, the selection drawable glitches and turns transparent.
MaterialCalendarView just draws the single supplied drawable for every day shown, probably exit fading getting confused.
There needs to be an extremely rapid way to submit feedback. People won't use it if it isn't convenient.
It breaks.
Incorrectly references NestedScrollView only present in portrait view
Create a working Navigation Drawer
Scroll up/down to see past/future events
Handle everything in the background, and make it so that the sub-fragments draw from the same calendar data
After news stories are clicked, there is a noticeable lag before the full news story opens. This could be a problem with parsing time.
Sample error:
AGPBI: {"kind":"error","text":"warning: Ignoring InnerClasses attribute for an anonymous inner class","sources":[{}]}
AGPBI: {"kind":"error","text":"(groovyjarjarantlr.TokenStreamRewriteEngine$1) that doesn\u0027t come with an","sources":[{}]}
AGPBI: {"kind":"error","text":"associated EnclosingMethod attribute. This class was probably produced by a","sources":[{}]}
AGPBI: {"kind":"error","text":"compiler that did not target the modern .class file format. The recommended","sources":[{}]}
AGPBI: {"kind":"error","text":"solution is to recompile the class from source, using an up-to-date compiler","sources":[{}]}
AGPBI: {"kind":"error","text":"and without specifying any \"-target\" type options. The consequence of ignoring","sources":[{}]}
AGPBI: {"kind":"error","text":"this warning is that reflective operations on this class will incorrectly","sources":[{}]}
AGPBI: {"kind":"error","text":"indicate that it is *not* an inner class.","sources":[{}]}
AGPBI: {"kind":"error","text":"warning: Ignoring InnerClasses attribute for an anonymous inner class","sources":[{}]}
AGPBI: {"kind":"error","text":"(groovyjarjarantlr.build.ANTLR$1) that doesn\u0027t come with an","sources":[{}]}
AGPBI: {"kind":"error","text":"associated EnclosingMethod attribute. This class was probably produced by a","sources":[{}]}
AGPBI: {"kind":"error","text":"compiler that did not target the modern .class file format. The recommended","sources":[{}]}
AGPBI: {"kind":"error","text":"solution is to recompile the class from source, using an up-to-date compiler","sources":[{}]}
AGPBI: {"kind":"error","text":"and without specifying any \"-target\" type options. The consequence of ignoring","sources":[{}]}
AGPBI: {"kind":"error","text":"this warning is that reflective operations on this class will incorrectly","sources":[{}]}
AGPBI: {"kind":"error","text":"indicate that it is *not* an inner class.","sources":[{}]}
AGPBI: {"kind":"error","text":"warning: Ignoring InnerClasses attribute for an anonymous inner class","sources":[{}]}
AGPBI: {"kind":"error","text":"(groovyjarjarantlr.debug.misc.ASTFrame$1) that doesn\u0027t come with an","sources":[{}]}
AGPBI: {"kind":"error","text":"associated EnclosingMethod attribute. This class was probably produced by a","sources":[{}]}
AGPBI: {"kind":"error","text":"compiler that did not target the modern .class file format. The recommended","sources":[{}]}
AGPBI: {"kind":"error","text":"solution is to recompile the class from source, using an up-to-date compiler","sources":[{}]}
AGPBI: {"kind":"error","text":"and without specifying any \"-target\" type options. The consequence of ignoring","sources":[{}]}
AGPBI: {"kind":"error","text":"this warning is that reflective operations on this class will incorrectly","sources":[{}]}
AGPBI: {"kind":"error","text":"indicate that it is *not* an inner class.","sources":[{}]}
Readd the add to calendar functionality (as a button or something else) to the calendar detail activity.
There should be some way to mark news items as read, moving them to an "archived" list or something else. People want to know immediately when there are new news articles, rather than having to inspect each article title.
Cards used to swipe right as in Google news reader app?
The status bar should be dark green rather than black to match Material Design standards.
http://stackoverflow.com/a/28983903
<android.support.v7.widget.CardView
xmlns:card_view="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary"
card_view:cardElevation="4dp"
card_view:cardCornerRadius="0dp">
<android.support.v7.widget.Toolbar
android:id="@+id/toolbar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="@color/primary"
android:minHeight="?attr/actionBarSize" />
</android.support.v7.widget.CardView>
Android Studio includes a built-in option to import that.
Volley has built-in caching of HTTP requests
Shrink the calendar size to the smallest it can be even though the view is now scrollable.
Need to register OnSharedPreferencesChangeListener and queue up changes in MainActivity to be dispatched to the loaded fragment and propagated
Views that are too large cause the Spotlight to get crushed against a window boundary and look very odd.
Need to write a serializable wrapper class that constructs a new CalendarDay from input
Currently, it is only asynchronous. Separate each DataSource to that they can execute simultaneously. This may help performance issues.
Possibly use a random number generator to create a unique ID instead of keeping it fixed.
Show some visual indicator of the source of each event
Small elevation issue
Remove most Error-level messages and replace them with Verbose or otherwise to prevent spam
Fake shadows need room, negative padding to fix.
The selected day's events should be more visible. Scroll the entire view down when a calendar day is selected.
The cache is in two separate places and caches both the decoded CalendarData and the iCal text. Only cache the CD and the hash of the iCal
Certain older devices with less RAM or processing power take upwards of 30 seconds to load all of the calendars into memory. Kryo serialization and intelligent caching could solve this problem.
If you are scrolled down viewing events for a specific day, you still have the ability to scroll the month horizontally while not being able to view which month you are in. Can the horizontal scroll of the month be locked while the calendar is not fully visible or scroll to the top when the month is changed so the month is visible?
Needs to be more relevant to the data.
The total size of all the calendars is to great for the Bundle during an onPause and onStart cycle, so the app crashes with . Need to use a static field workaround or something to store large amounts of data.
Developers need to join Gitlo to sync their Github contributions with Trello cards automatically. Use this link: https://goo.gl/v2S405
Need to refactor themes and make sure they are standard on all API versions
Seems random...
Possible causes:
Easy to do with FlexibleAdapter, but I don't know how the search bar works yet. Filtering methods include regex, find, or fuzzy match. Perhaps a preference so power users could use a regex?
The fragments are already recreated when orientation changes, so calling ...Fragment.newInstance()
is unnecessary and results in fragments not properly restoring their saved state bundles.
...Fragment.newInstance()
This should fix or at least help fix #7 and allow fragments to easily and properly restore their state on orientation changes.
RecyclerView instances may be able to use"wrap_content" inside NestedScrollView instances. Possibly useful in the calendar month view?
Perhaps a problem with the serialization reading date fields.
Possibly also the bodies? Need investigation into the size of the raw text. See #76
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.